讓客戶在 Azure Lighthouse 上線時,您可以建立授權,授與自己管理租用戶中的使用者特定 Azure 內建角色。 您也可以建立使用 Microsoft Entra Privileged Identity Management (PIM) 的合格授權,讓使用者在管理租用戶中暫時提高其角色。 這樣一來您便能適時授與其他權限,讓使用者僅在指定期間內擁有這些權限。
建立合格授權可將永久指派給使用者的特殊權限角色數目降到最低,有助於降低與租用戶中使用者特殊權限存取相關的安全性風險。
本主題說明合格授權的運作方式,以及如何在 將客戶上線至 Azure Lighthouse 時建立授權。
授權需求
建立合格的授權需要 Enterprise Mobility + Security E5 (EMS E5) 或 Microsoft Entra ID P2 授權。
EMS E5 或 Microsoft Entra ID P2 授權必須由管理租用戶持有,而非客戶租用戶。
唯有在使用者提高合格角色存取權的期間內,才會產生與該角色建立關聯的額外費用。
如需使用者授權的相關信息,請參閱 Microsoft Entra ID Governance 授權基本概念。
注意
國家雲端不支援建立合格的授權。
合格授權的運作方式
合格授權會定義角色指派,要求使用者在需要執行特殊權限工作時啟用角色。 使用者啟用合格角色後,就能在指定的時間內獲得該角色授與的完整存取權。
客戶租用戶中的使用者可以在上線程序之前檢閱所有角色指派,包括合格授權中的角色指派。
使用者成功啟用合格角色之後,除了委派範圍內的永久角色指派外,也能在預先設定的期間內於該範圍擁有較高角色權限。
管理租用戶中的管理員可檢視管理租用戶的稽核記錄,藉此檢閱所有 PIM 活動, 客戶則可在委派訂閱的 Azure 活動記錄中檢視這些動作。
合格授權的元素
您可以在使用 Azure Resource Manager 範本讓客戶上線時建立合格授權,或透過將受控服務供應項目發佈至 Azure Marketplace 來建立這類授權。 每個合格授權都必須包含三種元素:使用者、角色、存取原則。
使用者
針對每項合格授權,您要為管理租用戶中的個別使用者或 Microsoft Entra 群組提供主體識別碼, 還必須為每個授權提供您選擇的顯示名稱。
若在合格授權中提供群組,則所有群組成員都能根據存取原則提升自己對該角色的個別存取權。
合格授權不能與服務主體搭配使用,因為服務主體帳戶目前沒有辦法提高存取權及使用合格角色。 您也無法使用那些使用者存取系統管理員能指派給受控識別的合格授權delegatedRoleDefinitionIds
。
注意
針對每個合格的授權,請務必為具備不同角色的同一主體識別碼建立永久 (作用中) 授權,例如「讀取者」(或其他包含「讀取者」存取權的 Azure 內建角色)。 如果您未納入具有「讀取者」存取權的永久授權,使用者便無法在 Azure 入口網站中提升角色權限。
角色
每個合格的授權都必須包含 Azure 內建角色,使用者將有資格在「即時」的基礎上使用。
角色可以是 Azure 委派資源管理所支援的任何 Azure 內建角色,但使用者存取系統管理員除外。
重要
若您納入多個使用同一角色的合格授權,那麼這些合格授權全都必須使用同樣的存取原則設定。
存取原則
存取原則會定義多重要素驗證需求、使用者角色啟用有效時間長度,以及是否需要核准者。
多重要素驗證
指定是否要求使用 Microsoft Entra 多重要素驗證 來啟用合格角色。
最長持續時間
定義使用者可啟用合格角色的時間總長, 最短 30 分鐘,最長 8 小時。
核准者
核准者元素為選用, 若納入此元素,您便可以在管理租用戶中指定最多 10 位使用者或使用者群組,讓他們負責核准或拒絕使用者的合格角色啟用要求。
服務主體帳戶無法用作核准者。 此外,核准者無法核准自己的存取權。如果核准者本身也是合格授權中的使用者,則必須由其他核准者授與存取權,他們才能提高角色權限。
若未加入任何核准者,那麼使用者隨時可以選擇啟用合格角色。
使用受控服務供應項目建立合格授權
若要讓客戶在 Azure Lighthouse 上線,您可以將受控服務供應項目發佈至 Azure Marketplace。 在合作夥伴中心建立您的優惠時,您現在可以指定每個授權的存取類型應為啟用或合格。
若選取 [合格],您授權中的使用者便能根據您設定的存取原則啟用角色。 您必須將持續時間上限設為 30 分鐘到 8 小時之間,並指定是否需要使用多重要素驗證。 假如選擇使用核准者元素,您也可以新增最多 10 名核准者,並為每名核准者提供顯示名稱和主體識別碼。
在合作夥伴中心設定合格授權時,請務必檢閱 [合格授權元素 ] 區段中的詳細數據。
使用 Azure Resource Manager 範本建立合格授權
若要將客戶上線至 Azure Lighthouse,您可以使用 Azure Resource Manager 範本以及您修改的對應參數檔案 。 您應選擇的範本會根據上線對象是整個訂閱、單一資源群組,還是單一訂閱中的多個資源群組而有所不同。
若要在客戶上線時包含合格的授權,請使用我們範例存放庫中delegated-resource-management-eligible-authorizations區段的其中一個範本。 我們提供包含和不含核准者的範本,您可以使用最適合您案例的範本。
上線對象 (含合格授權) | 使用此 Azure Resource Manager 範本 | 並修改此參數檔案 |
---|---|---|
訂用帳戶 | subscription.json | subscription.parameters.json |
訂閱 (有核准者) | subscription-managing-tenant-approvers.json | subscription-managing-tenant-approvers.parameters.json |
資源群組 | rg.json | rg.parameters.json |
資源群組 (有核准者) | rg-managing-tenant-approvers.json | rg-managing-tenant-approvers.parameters.json |
訂用帳戶內的多個資源群組 | multiple-rg.json | multiple-rg.parameters.json |
訂閱內的多個資源群組 (有核准者) | multiple-rg-managing-tenant-approvers.json | multiple-rg-managing-tenant-approvers.parameters.json |
subscription-managing-tenant-approvers.json 範本,可用來將符合資格授權的訂用帳戶上線(包括核准者),如下所示。
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/subscriptionDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"mspOfferName": {
"type": "string",
"metadata": {
"description": "Specify a unique name for your offer"
}
},
"mspOfferDescription": {
"type": "string",
"metadata": {
"description": "Name of the Managed Service Provider offering"
}
},
"managedByTenantId": {
"type": "string",
"metadata": {
"description": "Specify the tenant id of the Managed Service Provider"
}
},
"authorizations": {
"type": "array",
"metadata": {
"description": "Specify an array of objects, containing tuples of Azure Active Directory principalId, a Azure roleDefinitionId, and an optional principalIdDisplayName. The roleDefinition specified is granted to the principalId in the provider's Active Directory and the principalIdDisplayName is visible to customers."
}
},
"eligibleAuthorizations": {
"type": "array",
"metadata": {
"description": "Provide the authorizations that will have just-in-time role assignments on customer environments with support for approvals from the managing tenant"
}
}
},
"variables": {
"mspRegistrationName": "[guid(parameters('mspOfferName'))]",
"mspAssignmentName": "[guid(parameters('mspOfferName'))]"
},
"resources": [
{
"type": "Microsoft.ManagedServices/registrationDefinitions",
"apiVersion": "2020-02-01-preview",
"name": "[variables('mspRegistrationName')]",
"properties": {
"registrationDefinitionName": "[parameters('mspOfferName')]",
"description": "[parameters('mspOfferDescription')]",
"managedByTenantId": "[parameters('managedByTenantId')]",
"authorizations": "[parameters('authorizations')]",
"eligibleAuthorizations": "[parameters('eligibleAuthorizations')]"
}
},
{
"type": "Microsoft.ManagedServices/registrationAssignments",
"apiVersion": "2020-02-01-preview",
"name": "[variables('mspAssignmentName')]",
"dependsOn": [
"[resourceId('Microsoft.ManagedServices/registrationDefinitions/', variables('mspRegistrationName'))]"
],
"properties": {
"registrationDefinitionId": "[resourceId('Microsoft.ManagedServices/registrationDefinitions/', variables('mspRegistrationName'))]"
}
}
],
"outputs": {
"mspOfferName": {
"type": "string",
"value": "[concat('Managed by', ' ', parameters('mspOfferName'))]"
},
"authorizations": {
"type": "array",
"value": "[parameters('authorizations')]"
},
"eligibleAuthorizations": {
"type": "array",
"value": "[parameters('eligibleAuthorizations')]"
}
}
}
在參數檔案中定義合格授權
在上線訂用帳戶時, subscription-managing-tenant-approvers.parameters.json 範例範本 可用來定義授權,包括合格的授權。
每個合格授權都必須在 eligibleAuthorizations
參數中予以定義。 此範例包含一個合格授權。
此範本也包含 managedbyTenantApprovers
元素,用於新增核准 principalId
元素中所定義合格角色的啟用要求時所需的 eligibleAuthorizations
。
{
"$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"mspOfferName": {
"value": "Relecloud Managed Services"
},
"mspOfferDescription": {
"value": "Relecloud Managed Services"
},
"managedByTenantId": {
"value": "<insert the managing tenant id>"
},
"authorizations": {
"value": [
{
"principalId": "00000000-0000-0000-0000-000000000000",
"roleDefinitionId": "acdd72a7-3385-48ef-bd42-f606fba81ae7",
"principalIdDisplayName": "PIM group"
}
]
},
"eligibleAuthorizations":{
"value": [
{
"justInTimeAccessPolicy": {
"multiFactorAuthProvider": "Azure",
"maximumActivationDuration": "PT8H",
"managedByTenantApprovers": [
{
"principalId": "00000000-0000-0000-0000-000000000000",
"principalIdDisplayName": "PIM-Approvers"
}
]
},
"principalId": "00000000-0000-0000-0000-000000000000",
"principalIdDisplayName": "Tier 2 Support",
"roleDefinitionId": "b24988ac-6180-42a0-ab88-20f7382dd24c"
}
]
}
}
}
參數中的每個 eligibleAuthorizations
項目都包含 三個元素,這些元素定義合格的授權:principalId
、roleDefinitionId
和 justInTimeAccessPolicy
。
principalId
用於為要套用此合格授權的 Microsoft Entra 使用者或群組指定識別碼。
roleDefinitionId
包含 Azure 內建角色 的角色定義 ID,使用者將有資格在即時基礎上使用。 如果您納入了多個使用相同 roleDefinitionId
的合格授權,則所有授權的 justInTimeAccessPolicy
設定都必須一樣。
justInTimeAccessPolicy
用於指定三個元素:
-
multiFactorAuthProvider
可以設定為 [Azure] 或 [無]。設為前者時必須使用 Microsoft Entra 多重要素驗證進行驗證,設為後者時則不需要。 -
maximumActivationDuration
用於設定使用者擁有合格角色的時間總長。 這個值必須使用 ISO 8601 持續時間格式, 且最小為 PT30M (30 分鐘),最大為 PT8H (8 小時)。 為了簡單起見,建議只使用以半小時為單位遞增的值,例如 PT6H (6 小時) 或 PT6H30M (6.5 小時)。 -
managedByTenantApprovers
是選擇性的。 若您納入此元素,則其中必須包含 principalId 與 principalIdDisplayName 的一或多個組合;核准任何合格角色的啟用時都必須用到這些組合。
如需這些專案的詳細資訊,請參閱 合格授權元素 一節。
使用者的權限提高程序
您讓客戶在 Azure Lighthouse 上線後,該客戶 (或任何指定群組中的客戶) 便可使用您納入的所有合格角色。
每位使用者隨時都能前往 Azure 入口網站中的 [我的客戶] 頁面,依序選取委派和 [管理合格角色] 以提高存取權。 之後,他們可以遵循 步驟來啟用 Microsoft Entra Privileged Identity Management 中的角色。
在指定的核准者同意之前,使用者無法存取該角色。此核准者來自管理承租方的指定審核者。 有人提出核准要求時,所有核准者都會收到通知;使用者在獲得核准之前都無法使用合格角色。 要求受到核准時,核准者也會收到通知。 如需核准程序的詳細資訊,請參閱 Privileged Identity Management 中的核准或拒絕 Azure 資源角色要求。
合格角色啟用後,在合格授權中指定的完整期間內,使用者都具有該角色。 指定期間過後,除非使用者再次執行權限提高程序以提高存取權,否則將無法再使用該角色。