檢視次數:
使用 SDK 來建立和配置控制您用戶和 API 金鑰權限的角色。例如,作為部署 Server & Workload Security保護 自動化過程的一部分,您的代碼可以創建適合用戶執行任務或您使用 API 執行任務的各種角色。
角色應提供用戶或您的代碼執行任務所需的最低權限。
注意
注意
如需有關角色的背景資訊,請參閱 使用者角色
以下類別使您能夠與角色互動:
  • AdministratorRolesApi:建立、修改、刪除、搜尋、描述和列出角色
  • 角色:表示一個角色並提供對角色屬性的訪問
  • 權限類別:幾個表示Server & Workload Security保護資源存取權的類別。例如,ComputerRights定義了與電腦互動的權限,而ScheduledTaskRights定義了與排程任務互動的權限。
另請參閱 取得角色 ID

一般步驟 上層主題

使用以下一般步驟來建立或修改角色:

步驟

  1. 建立一個Role物件並配置屬性:
    • 提供一個名稱來識別角色,並可選擇性地添加描述
    • (可選)識別角色可以訪問的電腦和策略
    • (可選)添加權限對象,以規定該角色可以在電腦上執行的任務和可以訪問的策略。
  2. 建立一個AdministratorsRoleApi物件,並使用它在Server & Workload Security保護上創建或修改角色。

接下來需執行的動作

當您建立角色時,預設情況下它具有對所有電腦和政策的讀取權限,允許用戶更改自己的密碼,並允許訪問Server & Workload Security保護控制台。
以下 JSON 代表 Role 物件的範例資料結構。此資料結構有助於了解如何配置角色的訪問權限:
  • allComputersallPolicies 項目控制對所有電腦和政策的訪問。如果其中任何一個為 false,則 computerIDspolicyIDs 項目將保存可以訪問的電腦和政策的 ID
  • rights 項目及其子項目對應於定義對 Server & Workload Security保護 資源的各種權限類別。為了使此範例簡潔,未顯示更深層次的權限項目。
{
    "name": "Auditor",
    "description": "",
    "urn": "urn:tmds:identity:us-east-ds-1:41342:role/Auditor",
    "immutable": false,
    "canOnlyManipulateUsersWithEqualOrLesserRights": false,
    "allComputers": true,
    "allPolicies": true,
    "allowUserInterface": true,
    "allowWebService": true,
    "rights": {
        "platformRights": {...},
        "antiMalwareRights": {...},
        "webReputationRights": {...},
        "firewallRights": {...},
        "intrusionPreventionRights": {...},
        "integrityMonitoringRights": {...},
        "logInspectionRights": {...},
        "applicationControlRights": {...},
        "hostedServiceRights": {...}
    },
    "ID": 2
}
要查看 Role 物件的完整資料結構,請參閱 API 參考中的 描述管理員角色 操作的回應。
以下範例會建立一個角色物件並設定名稱:
run_reports_role = api.Role()
run_reports_role.name = "Computer Status and Properties"
使用 ComputerRights 物件來指定對電腦的存取權限,然後使用該物件來配置 PlatformRights 物件。PlatformRights 物件對應於前面 JSON 代碼中的 platformRights 資料項目:
computer_rights = api.ComputerRights()
computer_rights.can_edit_computer_properties = True

platform_rights = api.PlatformRights() 
platform_rights.computer_rights = computer_rights
將平台權限新增至Rights物件,然後將Rights物件新增至角色。
rights = api.Rights()
rights.platform_rights = platform_rights

run_reports_role.rights = rights
最後,在Server & Workload Security保護上建立角色:
admin_roles_api = api.AdministratorRolesApi(api.ApiClient(configuration))
new_role = admin_roles_api.create_administrator_role(run_reports_role, api_version)

範例:建立角色 上層主題

以下範例會建立一個角色,該角色可以找到電腦防護,確定每台電腦防護是否已分配政策,並在需要時分配政策。審核員角色不符合這些要求,因為它不提供修改電腦防護的權限。
# Create the Role object
run_reports_role = api.Role()
run_reports_role.name = "Computer Status and Properties"

# No need for access to policies
run_reports_role.all_policies = False

# Add rights to edit computer properties
computer_rights = api.ComputerRights()
computer_rights.can_edit_computer_properties = True

platform_rights = api.PlatformRights()
platform_rights.computer_rights = computer_rights

rights = api.Rights()
rights.platform_rights = platform_rights

# Add the rights to the role
run_reports_role.rights = rights

# Create the role on Server & Workload Security保護
admin_roles_api = api.AdministratorRolesApi(api.ApiClient(configuration))
new_role = admin_roles_api.create_administrator_role(run_reports_role, api_version)

return new_role.id
另請參閱 API 參考中的 建立管理員角色 操作。