在權利管理中檢視、新增和移除存取套件的指派

在權利管理中,您可以看到誰已獲指派存取套件、其原則、狀態和使用者生命週期(預覽)。 如果存取套件具有適當的原則,則您也可以直接將使用者指派給存取套件。 本文說明如何檢視、新增及移除存取套件的指派。

必要條件

若要使用權利管理並指派使用者存取套件,您必須擁有下列其中一個授權:

  • Microsoft Entra ID P2
  • Enterprise Mobility + Security (EMS) E5 授權
  • Microsoft Entra ID 控管 訂用帳戶

查看具有指派的人員

提示

本文中的步驟可能會根據您從開始的入口網站稍有不同。

必要條件角色:全域 管理員 istrator、Identity Governance 管理員 istrator、目錄擁有者、存取套件管理員或存取套件指派管理員

  1. 以至少作為 [身分識別治理系統管理員] 的身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分識別治理>權利管理>存取] 套件。

  3. 在 [ 存取套件] 頁面上,開啟存取套件。

  4. 選取 [ 指派 ] 以查看使用中指派的清單。

    List of assignments to an access package

  5. 選取特定指派以查看更多詳細數據。

  6. 若要查看未正確布建所有資源角色的指派清單,請選取篩選狀態,然後選取 [ 傳遞]。

    您可以在 [要求] 頁面上找出用戶的對應要求,以查看傳遞錯誤的其他詳細數據。

  7. 若要查看過期的指派,請選取篩選狀態,然後選取 [已過期]

  8. 若要下載篩選清單的 CSV 檔案,請選取 [ 下載]。

以程序設計方式檢視指派

使用 Microsoft Graph 檢視指派

您也可以使用 Microsoft Graph 擷取存取套件中的指派。 具有委派 EntitlementManagement.Read.AllEntitlementManagement.ReadWrite.All 許可權的應用程式具有適當角色的使用者可以呼叫 API 來 列出 accessPackageAssignments。 具有應用程式許可權或EntitlementManagement.ReadWrite.All許可權EntitlementManagement.Read.All的應用程式也可以使用此 API 來擷取所有目錄的指派。

Microsoft Graph 會在頁面中傳回結果,並且會繼續傳回屬性中 @odata.nextLink 每個回應中結果下一頁的參考,直到讀取結果的所有頁面為止。 若要讀取所有結果,您必須繼續使用每個響應中傳回的屬性呼叫 Microsoft Graph,直到@odata.nextLink屬性不再傳回為止,如在應用程式中分頁 Microsoft Graph 數據中所述@odata.nextLink

雖然身分識別控管系統管理員可以從多個目錄擷取存取套件,但如果使用者或應用程式服務主體只指派給目錄特定的委派系統管理角色,則要求必須提供篩選來指出特定存取套件,例如: $filter=accessPackage/id eq 'a914b616-e04e-476b-aa37-91038f0b165b'

使用 PowerShell 檢視指派

您也可以從身分識別治理模組 2.1.x 版或更新模組版本的 Microsoft Graph PowerShell Cmdlet,擷取 PowerShell Get-MgEntitlementManagementAssignment 中存取套件的指派。 此腳本說明如何使用 Microsoft Graph PowerShell Cmdlet 模組 2.4.0 版來擷取特定存取套件的所有指派。 此 Cmdlet 會以存取套件識別碼作為參數,此標識碼包含在 Cmdlet 的回應中 Get-MgEntitlementManagementAccessPackage 。 使用 Get-MgEntitlementManagementAccessPackage Cmdlet 包含 -All 旗標時,請務必傳回所有的工作分派頁面。

Connect-MgGraph -Scopes "EntitlementManagement.Read.All"
$accesspackage = Get-MgEntitlementManagementAccessPackage -Filter "displayName eq 'Marketing Campaign'"
if ($null -eq $accesspackage) { throw "no access package"}
$assignments = @(Get-MgEntitlementManagementAssignment -AccessPackageId $accesspackage.Id -ExpandProperty target -All -ErrorAction Stop)
$assignments | ft Id,state,{$_.Target.id},{$_.Target.displayName}

上述查詢會傳回過期和傳遞指派,以及傳遞的工作分派。 如果您想要排除過期或傳遞指派,您可以使用包含存取套件識別碼以及指派狀態的篩選條件。 此腳本說明如何使用篩選,只擷取特定存取套件的狀態 Delivered 指派。 然後,腳本會產生 CSV 檔案 assignments.csv,每個指派一個數據列。

Connect-MgGraph -Scopes "EntitlementManagement.Read.All"
$accesspackage = Get-MgEntitlementManagementAccessPackage -Filter "displayName eq 'Marketing Campaign'"
if ($null -eq $accesspackage) { throw "no access package"}
$accesspackageId = $accesspackage.Id
$filter = "accessPackage/id eq '" + $accesspackageId + "' and state eq 'Delivered'"
$assignments = @(Get-MgEntitlementManagementAssignment -Filter $filter -ExpandProperty target -All -ErrorAction Stop)
$sp = $assignments | select-object -Property Id,{$_.Target.id},{$_.Target.ObjectId},{$_.Target.DisplayName},{$_.Target.PrincipalName}
$sp | Export-Csv -Encoding UTF8 -NoTypeInformation -Path ".\assignments.csv"

直接指派使用者

在某些情況下,您可能想要將特定使用者直接指派給存取套件,讓使用者不必經過要求存取套件的程式。 若要直接指派使用者,存取套件必須具有允許系統管理員直接指派的原則。

必要角色:全域 管理員 istrator、Identity Governance 管理員 istrator、目錄擁有者、存取套件管理員或存取套件指派管理員

  1. 以至少作為 [身分識別治理系統管理員] 的身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分識別治理>權利管理>存取] 套件。

  3. 在 [ 存取套件] 頁面上,開啟存取套件。

  4. 在左側功能表中,選取 [指派]

  5. 選取 [ 新增指派 ] 以開啟 [新增使用者以存取套件]。

    Assignments - Add user to access package

  6. 在 [ 選取原則 ] 清單中,選取用戶未來要求和生命週期將受到控管和追蹤的原則。 如果您想要選取的使用者有不同的原則設定,您可以選取 [建立新原則 ] 以新增原則。

  7. 選取原則之後,您就可以在所選的原則下,將您想要指派此存取套件的使用者新增至 [新增使用者]。

    注意

    如果您選取有問題的原則,則一次只能指派一個使用者。

  8. 設定您希望選取的使用者指派開始和結束的日期和時間。 如果未提供結束日期,則會使用原則的生命週期設定。

  9. 選擇性地為您的直接指派提供記錄保留的理由。

  10. 如果選取的原則包含其他要求者資訊,請選取 [檢視問題] 以代表使用者回答問題 ,然後選取 [ 儲存]。

    Assignments - click view questions

    Assignments - questions pane

  11. 選取 [ 新增 ] 以直接將選取的使用者指派給存取套件。

    幾分鐘后,選取 [ 重新 整理] 以查看 [指派] 列表中的使用者。

注意

將使用者指派給存取套件時,系統管理員必須根據現有的原則需求,確認使用者符合該存取套件的資格。 否則,使用者將不會成功指派給存取套件。 如果存取套件包含需要核准使用者要求的原則,則使用者無法在未經指定核准者的必要核准的情況下直接指派給套件。

直接指定任何使用者 (預覽)

權利管理也可讓您將外部使用者直接指派給存取套件,以便更輕鬆地與合作夥伴共同作業。 若要這樣做,存取套件必須有一個原則,可讓使用者尚未在您的目錄中要求存取權。

必要角色:全域 管理員 istrator、Identity Governance 管理員 istrator、目錄擁有者、存取套件管理員或存取套件指派管理員

  1. 以至少作為 [身分識別治理系統管理員] 的身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分識別治理>權利管理>存取] 套件。

  3. 在 [ 存取套件] 頁面上,開啟存取套件。

  4. 在左側功能表中,選取 [指派]

  5. 選取 [ 新增指派 ] 以開啟 [ 新增使用者以存取套件]。

  6. 在 [ 選取原則 ] 清單中,選取允許針對 不在目錄中的使用者設定的原則

  7. 選取 [ 任何使用者]。 您可以指定要指派給此存取套件的使用者。 Assignments - Add any user to access package

  8. 輸入使用者 的名稱 (選擇性)和用戶 的電子郵件位址 (必要)。

    注意

    • 您想要新增的用戶必須位於原則的範圍內。 例如,如果您的原則設定為 [特定已連線的組織],則使用者的電子郵件地址必須來自所選組織的網域。。 如果您嘗試新增的使用者具有jen@的電子郵件地址 foo.com 但所選組織的網域 bar.com,您將無法將該使用者新增至存取套件。
    • 同樣地,如果您將原則設定為包含 [所有設定的已連線組織],則使用者的電子郵件地址必須來自其中一個已設定的連線組織。 否則,使用者將不會新增至存取套件。
    • 如果您想要將任何使用者新增至存取套件,則必須確定您在設定原則時選取 [所有使用者] [所有已連線的組織 + 任何外部使用者 ]。
  9. 設定您希望選取的使用者指派開始和結束的日期和時間。 如果未提供結束日期,則會使用原則的生命週期設定。

  10. 選取 [ 新增 ] 以直接將選取的使用者指派給存取套件。

  11. 幾分鐘后,選取 [ 重新 整理] 以查看 [指派] 列表中的使用者。

以程序設計方式直接指派使用者

使用 Microsoft Graph 將使用者指派給存取套件

您也可以使用 Microsoft Graph 將使用者直接指派給存取套件。 具有委派 EntitlementManagement.ReadWrite.All 許可權的應用程式,或具有 EntitlementManagement.ReadWrite.All 應用程式許可權之應用程式的適當角色中使用者,可以呼叫 API 來 建立 accessPackageAssignmentRequest。 在此要求中,屬性的值requestType應該是 ,而 assignment 屬性是包含所指派之用戶的 結構targetIdadminAdd

使用 PowerShell 將使用者指派給存取套件

您可以使用身分識別治理模組 2.1.x 版或更新模組版本的 Microsoft Graph PowerShell Cmdlet,將使用者指派給 PowerShell New-MgEntitlementManagementAssignmentRequest 中的存取套件。 此腳本說明如何使用 Microsoft Graph PowerShell Cmdlet 模組 2.4.0 版。

Connect-MgGraph -Scopes "EntitlementManagement.ReadWrite.All"
$accesspackage = Get-MgEntitlementManagementAccessPackage -Filter "displayname eq 'Marketing Campaign'" -ExpandProperty "assignmentpolicies"
if ($null -eq $accesspackage) { throw "no access package"}
$policy = $accesspackage.AssignmentPolicies[0]
$userid = "cdbdf152-82ce-479c-b5b8-df90f561d5c7"
$params = @{
   requestType = "adminAdd"
   assignment = @{
      targetId = $userid
      assignmentPolicyId = $policy.Id
      accessPackageId = $accesspackage.Id
   }
}
New-MgEntitlementManagementAssignmentRequest -BodyParameter $params

您也可以將目錄中的多個使用者指派給使用 PowerShell 與New-MgBetaEntitlementManagementAccessPackageAssignment適用於身分識別治理模組 2.4.0 版或更新版本的 Microsoft Graph PowerShell Cmdlet Cmdlet 的 Cmdlet 存取套件。 此 Cmdlet 接受作為參數

  • 存取套件標識碼,包含在 Cmdlet 的 Get-MgEntitlementManagementAccessPackage 回應中,
  • 存取套件指派原則標識碼,此標識碼包含在 assignmentpolicies Cmdlet 回應 Get-MgEntitlementManagementAccessPackage 中字段中的原則中,
  • 目標使用者的物件識別碼,可以是字串陣列,或是從 Get-MgGroupMember Cmdlet 傳回的使用者成員清單。

例如,如果您想要確保目前屬於群組成員的所有使用者也具有存取套件的指派,您可以使用此 Cmdlet 為目前沒有指派的使用者建立要求。 請注意,此 Cmdlet 只會建立指派;它不會移除已不再是群組成員的使用者指派。

Connect-MgGraph -Scopes "EntitlementManagement.ReadWrite.All,Directory.Read.All"
$members = @(Get-MgGroupMember -GroupId "a34abd69-6bf8-4abd-ab6b-78218b77dc15" -All)

$accesspackage = Get-MgEntitlementManagementAccessPackage -Filter "displayname eq 'Marketing Campaign'" -ExpandProperty "assignmentPolicies"
if ($null -eq $accesspackage) { throw "no access package"}
$policy = $accesspackage.AssignmentPolicies[0]
$req = New-MgBetaEntitlementManagementAccessPackageAssignment -AccessPackageId $accesspackage.Id -AssignmentPolicyId $policy.Id -RequiredGroupMember $members

如果您想要為尚未加入目錄中的使用者新增指派,您可以使用New-MgBetaEntitlementManagementAccessPackageAssignmentRequest適用於 Identity Governance Beta 模組 2.1.x 版或更新版本 Beta 模組版本的 Microsoft Graph PowerShell Cmdlet 中的 Cmdlet。 此腳本說明如何使用 Graph beta 配置檔和 Microsoft Graph PowerShell Cmdlet 模組 2.4.0 版。 此 Cmdlet 接受作為參數

  • 存取套件標識碼,包含在 Cmdlet 的 Get-MgEntitlementManagementAccessPackage 回應中,
  • 存取套件指派原則標識碼,此標識碼包含在 assignmentpolicies Cmdlet 回應 Get-MgEntitlementManagementAccessPackage 中字段中的原則中,
  • 目標使用者的電子郵件位址。
Connect-MgGraph -Scopes "EntitlementManagement.ReadWrite.All"
$accesspackage = Get-MgEntitlementManagementAccessPackage -Filter "displayname eq 'Marketing Campaign'" -ExpandProperty "assignmentPolicies"
if ($null -eq $accesspackage) { throw "no access package"}
$policy = $accesspackage.AssignmentPolicies[0]
$req = New-MgBetaEntitlementManagementAccessPackageAssignmentRequest -AccessPackageId $accesspackage.Id -AssignmentPolicyId $policy.Id -TargetEmail "sample@example.com"

將存取指派設定為生命週期工作流程的一部分

在 Microsoft Entra 生命週期工作流程功能中,您可以將要求使用者存取套件指派工作新增至上線工作流程。 工作可以指定使用者應該擁有的存取套件。 當使用者執行工作流程時,系統會自動建立存取套件指派要求。

  1. 以全域管理員身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分識別治理>生命週期工作流程]>工作流程。

  3. 選取員工上線或移動工作流程。

  4. 選取 [ 工作 ],然後選取 [ 新增工作]。

  5. 選取 [ 要求使用者存取套件指派 ],然後選取 [ 新增]。

  6. 選取新新增的工作。

  7. 選取 [ 選取存取套件],然後選擇應指派新使用者或移動使用者的存取套件。

  8. 選取 [ 選取原則],然後選擇該存取套件中的存取套件指派原則。

  9. 選取 [儲存]。

移除指派

您可以移除使用者或系統管理員先前要求的指派。

必要角色:全域 管理員 istrator、Identity Governance 管理員 istrator、目錄擁有者、存取套件管理員或存取套件指派管理員

  1. 以至少作為 [身分識別治理系統管理員] 的身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分識別治理>權利管理>存取] 套件。

  3. 在 [ 存取套件] 頁面上,開啟存取套件。

  4. 在左側功能表中,選取 [指派]

  5. 選取您要從存取套件中移除其指派的使用者旁的複選框。

  6. 選取左窗格頂端附近的 [ 移除 ] 按鈕。

    Assignments - Remove user from access package

    隨即出現通知,通知您已移除指派。

以程式設計方式移除指派

使用 Microsoft Graph 移除指派

您也可以使用 Microsoft Graph 移除使用者存取套件的指派。 具有委派 EntitlementManagement.ReadWrite.All 許可權的應用程式,或具有 EntitlementManagement.ReadWrite.All 應用程式許可權之應用程式的適當角色中使用者,可以呼叫 API 來 建立 accessPackageAssignmentRequest。 在此要求中,屬性的值requestType應該是 ,而 assignment 屬性是包含要accessPackageAssignment移除之 屬性的結構idadminRemove

使用 PowerShell 移除指派

您可以使用適用於身分識別治理模組 2.1.x 版或更新模組版本的 Microsoft Graph PowerShell Cmdlet,移除 PowerShell New-MgEntitlementManagementAssignmentRequest 中的使用者指派。 此腳本說明如何使用 Microsoft Graph PowerShell Cmdlet 模組 2.4.0 版。

Connect-MgGraph -Scopes "EntitlementManagement.ReadWrite.All"
$accessPackageId = "9f573551-f8e2-48f4-bf48-06efbb37c7b8"
$userId = "040a792f-4c5f-4395-902f-f0d9d192ab2c"
$filter = "accessPackage/Id eq '" + $accessPackageId + "' and state eq 'Delivered' and target/objectId eq '" + $userId + "'"
$assignment = Get-MgEntitlementManagementAssignment -Filter $filter -ExpandProperty target -all -ErrorAction stop
if ($assignment -ne $null) {
   $params = @{
      requestType = "adminRemove"
      assignment = @{ id = $assignment.id }
   }
   New-MgEntitlementManagementAssignmentRequest -BodyParameter $params
}

將指派移除設定為生命週期工作流程的一部分

在 Microsoft Entra 生命週期工作流程功能中,您可以將使用者工作的 [移除存取套件指派] 新增至下線工作流程。 該工作可以指定使用者可能指派的存取套件。 當使用者執行工作流程時,系統會自動移除其存取套件指派。

  1. 以全域管理員身分登入 Microsoft Entra 系統管理中心

  2. 流覽至 [身分識別治理>生命週期工作流程]>工作流程。

  3. 選取員工下架工作流程。

  4. 選取 [ 工作 ],然後選取 [ 新增工作]。

  5. 選取 [ 移除使用者的 存取套件指派],然後選取 [ 新增]。

  6. 選取新新增的工作。

  7. 選取 [ 選取存取套件],然後選擇一或多個應從中移除使用者的存取套件。

  8. 選取 [儲存]。

下一步