授與輸入布建 API 的存取權
簡介
設定 API 驅動輸入布建應用程式之後,您必須授與訪問許可權,讓 API 用戶端可以將要求傳送至布 建 /bulkUpload API,並查詢 布建記錄 API。 本教學課程會逐步引導您完成設定這些許可權的步驟。
根據您的 API 用戶端如何使用 Microsoft Entra ID 進行驗證,您可以在兩個組態選項之間選取:
- 設定服務主體:如果您的 API 用戶端計劃使用 Microsoft Entra 註冊應用程式的服務主體,並使用 OAuth 用戶端認證授與流程進行驗證,請遵循這些指示。
- 設定受控識別:如果您的 API 用戶端計劃使用 Microsoft Entra 受控識別,請遵循下列指示。
設定服務主體
此組態會在 Microsoft Entra 識別符中註冊應用程式,代表外部 API 用戶端,並授與其叫用輸入布建 API 的許可權。 服務主體用戶端標識碼和客戶端密碼可用於 OAuth 用戶端認證授與流程。
- 以至少應用程式 管理員 istrator 登入認證登入 Microsoft Entra 系統管理中心 (https://entra.microsoft.com)。
- 流覽至 Microsoft Entra ID -Applications ->>應用程式註冊。
- 按兩下 [新增註冊] 選項。
- 提供應用程式名稱、選取預設選項,然後按下 [ 註冊]。
- 從 [ 概觀] 刀鋒視窗中複製應用程式 (用戶端) 識別碼 和 目錄 (租使用者) 識別碼 值,並將其儲存在 API 用戶端中以供稍後使用。
- 在應用程式的操作功能表中,選取 [ 憑證與秘密] 選項。
- 建立新的客戶端密碼。 提供秘密和到期日的描述。
- 複製客戶端密碼產生的值,並將其儲存在 API 用戶端中以供稍後使用。
- 從操作功能表 API 許可權中,選取 [新增許可權] 選項。
- 在 [要求 API 許可權] 底下,選取 [Microsoft Graph]。
- 選取應用程式權限。
- 搜尋並選取 Permission AuditLog.Read.All 和 SynchronizationData-User.Upload。
- 在下一個畫面上按兩下 [ 授與管理員同意 ] 以完成許可權指派。 按兩下確認對話框上的 [是]。 您的應用程式應該具有下列許可權集合。
- 您現在已準備好搭配 API 用戶端使用服務主體。
- 針對生產工作負載,我們建議搭配服務主體或受控識別使用 用戶端憑證型驗證 。
設定受控識別
本節說明如何將必要的許可權指派給受控識別。
設定 受控識別 以搭配您的 Azure 資源使用。
從 Microsoft Entra 系統管理中心複製受控識別的名稱。 例如:下列螢幕快照顯示與名為 「CSV2SCIMBulkUpload」 的 Azure Logic Apps 工作流程相關聯的系統指派受控識別名稱。
執行下列 PowerShell 腳本,將許可權指派給您的受控識別。
Install-Module Microsoft.Graph -Scope CurrentUser Connect-MgGraph -Scopes "Application.Read.All","AppRoleAssignment.ReadWrite.All,RoleManagement.ReadWrite.Directory" $graphApp = Get-MgServicePrincipal -Filter "AppId eq '00000003-0000-0000-c000-000000000000'" $PermissionName = "SynchronizationData-User.Upload" $AppRole = $graphApp.AppRoles | ` Where-Object {$_.Value -eq $PermissionName -and $_.AllowedMemberTypes -contains "Application"} $managedID = Get-MgServicePrincipal -Filter "DisplayName eq 'CSV2SCIMBulkUpload'" New-MgServicePrincipalAppRoleAssignment -PrincipalId $managedID.Id -ServicePrincipalId $managedID.Id -ResourceId $graphApp.Id -AppRoleId $AppRole.Id $PermissionName = "AuditLog.Read.All" $AppRole = $graphApp.AppRoles | ` Where-Object {$_.Value -eq $PermissionName -and $_.AllowedMemberTypes -contains "Application"} $managedID = Get-MgServicePrincipal -Filter "DisplayName eq 'CSV2SCIMBulkUpload'" New-MgServicePrincipalAppRoleAssignment -PrincipalId $managedID.Id -ServicePrincipalId $managedID.Id -ResourceId $graphApp.Id -AppRoleId $AppRole.Id
若要確認已套用許可權,請在 Microsoft Entra 標識碼中的企業應用程式底下尋找受控識別服務主體。 拿掉 [應用程式類型篩選] 以查看所有服務主體。
您現在已準備好搭配 API 用戶端使用受控識別。