Membuat paket akses dalam pengelolaan pemberian hak untuk aplikasi dengan satu peran menggunakan PowerShell
Dalam pengelolaan pemberian hak Microsoft Entra, paket akses mencakup kebijakan tentang bagaimana pengguna dapat memperoleh penugasan untuk satu atau beberapa peran sumber daya. Sumber daya dapat mencakup grup, aplikasi, dan situs SharePoint Online.
Artikel ini menjelaskan cara membuat paket akses untuk satu aplikasi dengan satu peran, menggunakan Microsoft Graph PowerShell. Skenario ini terutama berlaku untuk lingkungan yang menggunakan pengelolaan pemberian hak untuk mengotomatiskan akses yang sedang berlangsung untuk aplikasi bisnis atau middleware tertentu. Organisasi yang memiliki beberapa sumber daya atau sumber daya dengan beberapa peran juga dapat memodelkan kebijakan akses mereka dengan paket akses:
- Jika organisasi sudah memiliki model peran organisasi yang ada untuk peran bisnis mereka, mereka dapat memigrasikan model tersebut ke Tata Kelola ID Microsoft Entra, dan mengatur akses dengan model peran organisasi.
- Jika organisasi memiliki aplikasi dengan beberapa peran, maka mereka dapat menyebarkan kebijakan organisasi untuk mengatur akses ke aplikasi yang terintegrasi dengan ID Microsoft Entra
- Untuk informasi selengkapnya tentang membuat paket akses untuk skenario lain, lihat tutorial: Mengelola akses ke sumber daya dalam pengelolaan pemberian hak dan cara membuat paket akses dalam pengelolaan pemberian hak.
Prasyarat
Menggunakan fitur ini memerlukan lisensi Tata Kelola ID Microsoft Entra atau Microsoft Entra Suite. Untuk menemukan lisensi yang tepat untuk kebutuhan Anda, lihat Tata Kelola ID Microsoft Entra dasar-dasar lisensi.
Sebelum mulai membuat paket akses, Anda harus mengintegrasikan aplikasi dengan ID Microsoft Entra. Jika aplikasi Anda belum ada di penyewa MICROSOFT Entra ID Anda, ikuti instruksi dalam artikel tersebut untuk membuat aplikasi dan perwakilan layanan untuk objek tersebut. Pastikan juga bahwa penyewa ID Microsoft Entra Anda telah memenuhi prasyarat sebelum mengonfigurasi ID Microsoft Entra untuk tata kelola identitas.
Untuk membuat paket akses dan kebijakan dan penugasan terkait, Anda harus menyiapkan informasi berikut:
Gunakan huruf besar | Pengaturan Konfigurasi | Variabel PowerShell |
---|---|---|
Semua | Nama aplikasi di penyewa MICROSOFT Entra ID Anda | $servicePrincipalName |
Semua | Nama peran aplikasi | $servicePrincipalRoleName |
Semua | Nama katalog yang berisi paket akses | $catalogName |
Semua | Nama untuk memberikan paket akses | $accessPackageName |
Semua | Deskripsi untuk memberikan paket akses | $accessPackageDescription |
Pemisahan persyaratan tugas dengan paket akses yang tidak kompatibel | ID paket akses yang tidak kompatibel | $incompatibleAccessPackageId (jika diperlukan) |
Pengguna yang belum memiliki tugas dan tidak akan ditetapkan secara otomatis | daftar pengguna | $inputpath (jika diperlukan) |
Pengguna dengan atribut tertentu secara otomatis memiliki penugasan | ekspresi kueri untuk pengguna dalam cakupan | $autoAssignmentPolicyFilter (jika diperlukan) |
Mengizinkan pengguna yang tidak memiliki tugas untuk meminta penugasan | cakupan pengguna yang dapat meminta, pemberi persetujuan, dan periode tinjauan akses | tergantung pada persyaratan |
Mengotomatiskan pembuatan atau penghapusan tugas berdasarkan alur kerja gabungan atau biarkan dalam alur kerja siklus hidup | nama alur kerja yang memberikan dan menghapus akses | tergantung pada persyaratan |
Mengautentikasi ke ID Microsoft Entra
Bagian ini memperlihatkan cara berinteraksi dengan Tata Kelola ID Microsoft Entra dengan menggunakan cmdlet Microsoft Graph PowerShell.
Pertama kali organisasi Anda menggunakan cmdlet ini untuk skenario ini, Anda harus berada dalam peran Administrator Global agar Microsoft Graph PowerShell dapat digunakan di penyewa Anda. Interaksi selanjutnya dapat menggunakan peran dengan hak istimewa yang lebih rendah, seperti:
- Administrator Tata Kelola Identitas.
Buka PowerShell.
Jika Anda belum menginstal modul Microsoft Graph PowerShell , instal modul
Microsoft.Graph.Identity.Governance
dan lainnya dengan menggunakan perintah ini:Install-Module Microsoft.Graph
Jika Anda sudah menginstal modul, pastikan Anda menggunakan versi terbarunya:
Update-Module microsoft.graph.users,microsoft.graph.identity.governance,microsoft.graph.applications
Sambungkan ke ID Microsoft Entra:
$msg = Connect-MgGraph -ContextScope Process -Scopes "User.ReadWrite.All,Application.ReadWrite.All,AppRoleAssignment.ReadWrite.All,EntitlementManagement.ReadWrite.All"
Jika ini pertama kalinya Anda menggunakan perintah ini, Anda mungkin perlu menyetujui untuk mengizinkan alat Baris Perintah Microsoft Graph memiliki izin ini.
Membuat katalog di pengelolaan pemberian izin Microsoft Entra
Secara default, ketika administrator pertama kali berinteraksi dengan pengelolaan pemberian hak, maka katalog default dibuat secara otomatis. Namun, paket akses untuk aplikasi yang diatur harus berada dalam katalog yang ditunjuk.
Tentukan nama katalog.
$catalogName = "Business applications"
Jika Anda sudah memiliki katalog untuk skenario tata kelola aplikasi Anda, lanjutkan di langkah 4 bagian ini.
Jika Anda belum memiliki katalog untuk skenario tata kelola aplikasi Anda, buat katalog.
$catalog = New-MgEntitlementManagementCatalog -DisplayName $catalogName
Cari ID katalog.
$catalogFilter = "displayName eq '" + $catalogName + "'" $catalog = Get-MgEntitlementManagementCatalog -Filter $catalogFilter -All -expandProperty resources,accessPackages if ($catalog -eq $null) { throw "catalog $catalogName not found" } $catalogId = $catalog.Id
Menambahkan aplikasi sebagai sumber daya ke katalog
Setelah katalog dibuat, tambahkan aplikasi sebagai sumber daya dalam katalog tersebut.
Tentukan nama aplikasi dan nama peran aplikasi. Gunakan nama aplikasi Anda sebagai nilai
servicePrincipalName
.$servicePrincipalName = "SAP Cloud Identity Services" $servicePrincipalRoleName = "User"
Cari ID perwakilan layanan aplikasi.
$servicePrincipalFilter = "displayName eq '" + $applicationName + "'" $servicePrincipal = Get-MgServicePrincipal -Filter $servicePrincipalFilter -all if ($servicePrincipal -eq $null) { throw "service principal $servicePrincipalName not found" } $servicePrincipalId = $servicePrincipal.Id
Periksa apakah aplikasi sudah ada di katalog sebagai sumber daya. Jika sudah ada, lanjutkan pada langkah 6 bagian ini.
$resourceId = $null foreach ($r in $catalog.Resources) { if ($r.OriginId -eq $servicePrincipalId) { $resourceId = $r.id; break } } if ($resourceId -ne $null) { write-output "resource already in catalog" } else {write-output "resource not yet in catalog"}
Tambahkan perwakilan layanan aplikasi sebagai sumber daya ke katalog.
$resourceAddParams = @{ requestType = "adminAdd" resource = @{ originId = $servicePrincipalId originSystem = "AadApplication" } catalog = @{ id = $catalogId } } $resourceAdd = New-MgEntitlementManagementResourceRequest -BodyParameter $resourceAddParams if ($resourceAdd -eq $null) { throw "resource could not be added" } sleep 5
Ambil ID dan cakupan sumber daya dalam katalog tersebut.
$resource = $null $resourceId = $null $resourceScope = $null $catalogResources = Get-MgEntitlementManagementCatalogResource -AccessPackageCatalogId $CatalogId -ExpandProperty "scopes" -all foreach ($r in $catalogResources) { if ($r.OriginId -eq $servicePrincipalId) { $resource = $r; $resourceId = $r.id; $resourceScope = $r.Scopes[0]; break } } if ($resourceId -eq $null) { throw "resource was not added" }
Ambil peran aplikasi.
$resourceRoleFilter = "(originSystem eq 'AadApplication' and resource/id eq '" + $resourceId + "')" $resourceRoles = @(get-mgentitlementmanagementcatalogresourcerole -AccessPackageCatalogId $catalogId -Filter $resourceRoleFilter -All -ExpandProperty "resource") if ($resourceRoles -eq $null -or $resourceRoles.count -eq 0) { throw "no roles available" }
Pilih peran yang akan disertakan dalam paket akses.
$resourceRole = $null foreach ($r in $resourceRoles) { if ($r.DisplayName -eq $servicePrincipalRoleName) { $resourceRole = $r; break; } } if ($resourceRole -eq $null) { throw "role $servicePrincipalRoleName not located" }
Membuat paket akses untuk aplikasi
Selanjutnya Anda akan menggunakan PowerShell untuk membuat paket akses dalam katalog yang menyertakan peran aplikasi.
Tentukan nama dan deskripsi paket akses.
$accessPackageName = "SAP Cloud Identity Services" $accessPackageDescription = "A user of SAP Cloud Identity Services" $accessPackageHidden = $true
Periksa apakah paket akses belum ada.
foreach ($a in $catalog.AccessPackages) { if ($a.DisplayName -eq $accessPackageName) { throw "access package $accessPackageName already exists" } }
Buat paket akses.
$accessPackageParams = @{ displayName = $accessPackageName description = $accessPackageDescription isHidden = $accessPackageHidden catalog = @{ id = $catalog.id } } $accessPackage = New-MgEntitlementManagementAccessPackage -BodyParameter $accessPackageParams $accessPackageId = $accessPackage.Id
Menambahkan peran aplikasi ke paket akses
Setelah Anda membuat paket akses, maka Anda menautkan peran sumber daya dalam katalog ke paket akses.
$rrsParams = @{
role = @{
id = $resourceRole.Id
displayName = $resourceRole.DisplayName
description = $resourceRole.Description
originSystem = $resourceRole.OriginSystem
originId = $resourceRole.OriginId
resource = @{
id = $resource.Id
originId = $resource.OriginId
originSystem = $resource.OriginSystem
}
}
scope = @{
id = $resourceScope.Id
originId = $resourceScope.OriginId
originSystem = $resourceScope.OriginSystem
}
}
$roleAddRes = New-MgEntitlementManagementAccessPackageResourceRoleScope -AccessPackageId $accessPackageId -BodyParameter $rrsParams
Membuat kebijakan penetapan paket akses untuk penugasan langsung
Di bagian ini Anda akan membuat kebijakan penetapan paket akses pertama dalam paket akses, kebijakan penetapan paket akses untuk penugasan langsung, yang dapat digunakan untuk melacak pengguna yang sudah memiliki akses ke aplikasi. Dalam contoh kebijakan yang dibuat di bagian ini, hanya administrator atau manajer penetapan paket akses yang dapat menetapkan akses, pengguna mempertahankan akses tanpa batas waktu, dan tidak ada persetujuan atau tinjauan akses.
Buat kebijakan.
$policy1Name = "Direct assignment policy" $policy1Description = "policy for administrative assignment" $policy1params = @{ displayName = $policy1Name description = $policy1Description allowedTargetScope = "notSpecified" specificAllowedTargets = @( ) expiration = @{ endDateTime = $null duration = $null type = "noExpiration" } requestorSettings = @{ enableTargetsToSelfAddAccess = $true enableTargetsToSelfUpdateAccess = $false enableTargetsToSelfRemoveAccess = $true allowCustomAssignmentSchedule = $true enableOnBehalfRequestorsToAddAccess = $false enableOnBehalfRequestorsToUpdateAccess = $false enableOnBehalfRequestorsToRemoveAccess = $false onBehalfRequestors = @( ) } requestApprovalSettings = @{ isApprovalRequiredForAdd = $false isApprovalRequiredForUpdate = $false stages = @( ) } accessPackage = @{ id = $accessPackageId } } $policy1Res = New-MgEntitlementManagementAssignmentPolicy -BodyParameter $policy1params $directAssignmentPolicyId = $policy1Res.Id
Mengonfigurasi pemisahan batasan tugas
Pengelolaan pemberian hak Microsoft Entra dapat memberlakukan pemisahan pemeriksaan tugas untuk mencegah pengguna yang sudah memiliki penugasan yang ada ke paket akses lain yang ditunjuk, atau keanggotaan grup yang ditunjuk, dari meminta paket akses.
Jika Anda tidak memiliki pemisahan persyaratan tugas untuk aplikasi ini, lanjutkan di bagian berikutnya.
Jika Anda memiliki persyaratan pemisahan tugas, konfigurasikan paket akses yang tidak kompatibel atau grup yang ada untuk paket akses Anda.
Untuk setiap paket akses yang akan ditandai sebagai tidak kompatibel dengan paket lain, Anda dapat menggunakan Paket akses konfigurasi PowerShell sebagai tidak kompatibel.
Tentukan paket akses lain yang tidak kompatibel dengan paket ini. Ubah nilai
incompatibleAccessPackageId
ke ID paket akses lain dalam pengelolaan pemberian hak Microsoft Entra.$incompatibleAccessPackageId = "67cc7175-7a3d-4cb2-860f-4d9217ba96ca"
Buat referensi yang tidak kompatibel pada paket akses ini.
$incompatible1params = @{ "@odata.id" = "https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/accessPackages/" + $incompatibleAccessPackageId } New-MgEntitlementManagementAccessPackageIncompatibleAccessPackageByRef -AccessPackageId $accessPackageId -BodyParameter $incompatible1params
Buat referensi yang tidak kompatibel pada paket akses lainnya.
$incompatible2params = @{ "@odata.id" = "https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/accessPackages/" + $accessPackageId } New-MgEntitlementManagementAccessPackageIncompatibleAccessPackageByRef -AccessPackageId $incompatibleAccessPackageId -BodyParameter $incompatible2params
Ulangi untuk paket akses lainnya.
Jika skenario Anda memerlukan kemampuan untuk mengambil alih pemeriksaan pemisahan tugas, maka Anda juga dapat menyiapkan paket akses tambahan untuk skenario penimpaan tersebut.
Menambahkan penugasan pengguna yang sudah ada yang sudah memiliki akses ke aplikasi
Tambahkan penugasan pengguna yang ada, yang sudah memiliki akses ke aplikasi, ke paket akses dan kebijakan penugasan langsungnya. Anda dapat langsung menetapkan setiap pengguna ke paket akses.
Ambil penetapan peran aplikasi yang ada.
$existingAppRoleAssignments = @(Get-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $servicePrincipalId -All)
Untuk menghindari pembuatan tugas duplikat, ambil tugas yang ada ke paket akses.
$existingAssignments1filter = "accessPackage/id eq '" + $accessPackageId + "' and state eq 'Delivered'" $existingassignments1 = @(Get-MgEntitlementManagementAssignment -Filter $existingAssignments1filter -ExpandProperty target -All -ErrorAction Stop) $existingusers1 = @() foreach ($a in $existingassignments1) { $existingusers1 += $a.Target.ObjectId}
Buat tugas baru.
foreach ($ar in $existingAppRoleAssignments) { if ($ar.principalType -ne "User") { write-warning "non-user assigned to application role" } $arpid = $ar.principalId if ($existingusers1.contains($arpId)) { continue } $params = @{ requestType = "adminAdd" assignment = @{ targetId = $arpId assignmentPolicyId = $directAssignmentPolicyId accessPackageId = $accessPackageId } } try { New-MgEntitlementManagementAssignmentRequest -BodyParameter $params } catch { write-error "cannot create request for user $upn" } }
Menambahkan pengguna tambahan yang harus memiliki akses ke aplikasi
Skrip ini mengilustrasikan menggunakan cmdlet Microsoft Graph PowerShell untuk menambahkan pengguna tambahan ke aplikasi. Jika Anda tidak memiliki pengguna yang memerlukan akses, dan tidak akan menerimanya secara otomatis, lanjutkan di bagian berikutnya.
Skrip ini mengasumsikan Anda memiliki file CSV input yang berisi satu kolom, UserPrincipalName
, untuk menetapkan pengguna tersebut ke paket akses melalui kebijakan penetapan langsungnya.
Tentukan nama file input.
$inputpath = "users.csv"
Untuk menghindari pembuatan tugas duplikat, ambil tugas yang ada ke paket akses.
$existingAssignments2filter = "accessPackage/id eq '" + $accessPackageId + "' and state eq 'Delivered'" $existingassignments2 = @(Get-MgEntitlementManagementAssignment -Filter $existingAssignments2filter -ExpandProperty target -All -ErrorAction Stop) $existingusers2 = @() foreach ($a in $existingassignments2) { $existingusers2 += $a.Target.ObjectId}
Buat tugas baru.
$users = import-csv -Path $inputpath foreach ($userrecord in $users) { $upn = $userrecord.UserPrincipalName if ($null -eq $upn) {throw "no UserPrincipalName" } $u = $null try { $u = Get-MgUser -UserId $upn } catch { write-error "no user $upn" } if ($u -eq $null) { continue } if ($existingusers2.contains($u.Id)) { continue } $params = @{ requestType = "adminAdd" assignment = @{ targetId = $u.Id assignmentPolicyId = $directAssignmentPolicyId accessPackageId = $accessPackageId } } try { New-MgEntitlementManagementAssignmentRequest -BodyParameter $params } catch { write-error "cannot create request for user $upn" } }
Menambahkan kebijakan ke paket akses untuk penetapan otomatis
Jika kebijakan organisasi Anda untuk siapa yang dapat ditetapkan akses ke aplikasi menyertakan aturan berdasarkan atribut pengguna untuk menetapkan dan menghapus akses secara otomatis berdasarkan atribut tersebut, Anda dapat mewakilinya menggunakan kebijakan penugasan otomatis. Paket akses dapat memiliki paling banyak satu kebijakan penugasan otomatis. Jika Anda tidak memiliki persyaratan untuk penugasan otomatis, lanjutkan di bagian berikutnya.
Tentukan ekspresi filter penugasan otomatis bagi pengguna untuk menerima penugasan. Ubah nilai
autoAssignmentPolicyFilter
menjadi filter untuk pengguna di ID Microsoft Entra Anda yang berada dalam cakupan. Sintaksis dan atribut yang diizinkan disediakan dalam aturan keanggotaan dinamis untuk grup di ID Microsoft Entra.$autoAssignmentPolicyFilter = '(user.city -eq "Redmond")'
Gunakan PowerShell untuk membuat kebijakan penugasan otomatis dalam paket akses.
$policy2Name = "Automatic assignment policy" $policy2Description = "policy for automatic assignment" $policy2Params = @{ DisplayName = $policy2Name Description = $policy2Description AllowedTargetScope = "specificDirectoryUsers" SpecificAllowedTargets = @( @{ "@odata.type" = "#microsoft.graph.attributeRuleMembers" description = $policy2Description membershipRule = $autoAssignmentPolicyFilter } ) AutomaticRequestSettings = @{ RequestAccessForAllowedTargets = $true } AccessPackage = @{ Id = $accessPackageId } } New-MgEntitlementManagementAssignmentPolicy -BodyParameter $policy2Params
Membuat kebijakan tambahan untuk memungkinkan pengguna meminta akses
Jika pengguna yang belum memiliki akses diizinkan untuk meminta ditetapkan ke aplikasi, maka Anda juga dapat mengonfigurasi kebijakan penetapan paket akses untuk memungkinkan pengguna meminta paket akses. Anda dapat menambahkan kebijakan tambahan ke paket akses, dan di setiap kebijakan menentukan pengguna mana yang dapat meminta dan siapa yang harus menyetujui. Jika Anda hanya ingin pengguna diberi akses secara otomatis atau oleh administrator, lanjutkan di bagian berikutnya.
Untuk contoh selengkapnya, lihat Membuat kebijakan penugasan melalui PowerShell, accessPackageAssignmentPolicy dan Membuat assignmentPolicy.
Tentukan nama, deskripsi kebijakan, dan ID pengguna Microsoft Entra yang akan menjadi pemberi persetujuan.
$policy3Name = "example policy" $policy3Description = "example of a policy for users to request assignment" $policy3ApproverSingleUserId = "1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5"
Buat kebijakan.
$policy3Params = @{ displayName = $policy3Name description = $policy3Description allowedTargetScope = "allMemberUsers" expiration = @{ type = "noExpiration" } requestorSettings = @{ enableTargetsToSelfAddAccess = "true" enableTargetsToSelfUpdateAccess = "true" enableTargetsToSelfRemoveAccess = "true" } requestApprovalSettings = @{ isApprovalRequiredForAdd = "true" isApprovalRequiredForUpdate = "true" stages = @( @{ durationBeforeAutomaticDenial = "P7D" isApproverJustificationRequired = "false" isEscalationEnabled = "false" fallbackPrimaryApprovers = @( ) escalationApprovers = @( ) fallbackEscalationApprovers = @( ) primaryApprovers = @( @{ "@odata.type" = "#microsoft.graph.singleUser" userId = $policy3ApproverSingleUserId } ) } ) } accessPackage = @{ id = $accessPackageId } } New-MgEntitlementManagementAssignmentPolicy -BodyParameter $policy3Params
Mengonfigurasi tugas alur kerja siklus hidup
Jika Anda menggunakan alur kerja siklus hidup Microsoft Entra untuk gabungan karyawan, pindahkan acara, maka Anda juga dapat menambahkan tugas ke alur kerja tersebut untuk menambahkan atau menghapus tugas ke paket akses ini. Jika Anda tidak menggunakan alur kerja siklus hidup, lanjutkan di bagian berikutnya.
Contoh ini menggambarkan cara membuat perubahan pada alur kerja gabungan dan meninggalkan peristiwa.
joiner
Ambil alur kerja kategori dan tugasnya, menggunakan perintah Get-MgIdentityGovernanceLifecycleWorkflow.Tambahkan tugas ke daftar tugas dalam alur kerja tersebut.
Nama tampilan tugas taskDefinitionId arguments Meminta penetapan paket akses pengguna c1ec1e76-f374-4375-aaa6-0bb6bd4c60be
nama: assignmentPolicyId
nilai: ID kebijakan penugasan, seperti nilai dari$directAssignmentPolicyId
jika tidak ada persetujuan yang diperlukan, untuk paket akses yang ingin Anda tetapkan pengguna.
nama:accessPackageId
nilai: ID paket akses,$accessPackageId
, untuk paket akses yang ingin Anda tetapkan kepada pengguna.Buat versi baru alur kerja, termasuk tugas baru, menggunakan perintah New-MgIdentityGovernanceLifecycleWorkflowNewVersion .
leaver
Ambil alur kerja kategori dan tugasnya, menggunakan perintah Get-MgIdentityGovernanceLifecycleWorkflow.Tambahkan tugas ke daftar tugas dalam alur kerja tersebut.
Nama tampilan tugas taskDefinitionId arguments Menghapus penetapan paket akses untuk pengguna 4a0b64f2-c7ec-46ba-b117-18f262946c50
nama: accessPackageId
nilai: ID paket akses yang valid,accessPackageId
untuk paket akses yang ingin Anda batalkan penetapannya dari pengguna.Buat versi baru alur kerja, termasuk tugas baru, menggunakan perintah New-MgIdentityGovernanceLifecycleWorkflowNewVersion .
Mengelola penugasan
Setelah paket akses, kebijakan, dan penugasan awal dibuat, maka pengguna diberi akses ke peran aplikasi.
Nantinya, Anda dapat memantau perubahan pada tugas, atau menambahkan atau menghapus tugas secara terprogram.
Mengambil penugasan yang sudah ada
Skrip ini mengilustrasikan menggunakan filter untuk mengambil tugas ke paket akses yang dalam status Delivered
. Skrip menghasilkan file assignments.csv
CSV dengan daftar pengguna yang memiliki penugasan, dengan satu baris per penugasan.
$assignmentFilter = "accessPackage/id eq '" + $accessPackageId + "' and state eq 'Delivered'"
$assignments = @(Get-MgEntitlementManagementAssignment -Filter $assignmentFilter -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"
Menghapus penugasan
Anda dapat menghapus penugasan pengguna dengan New-MgEntitlementManagementAssignmentRequest
cmdlet.
$userId = "00aa00aa-bb11-cc22-dd33-44ee44ee44ee"
$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
}
Langkah berikutnya
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk