在 Azure 门户中,我可以导航至 身份治理 |访问套餐 |访问 Package,然后为用户创建直接分配。 Azure 门户允许我指定是否对分配请求应用批准。
我还可以使用 Microsoft Graph 创建直接分配请求,但我不知道如何对此请求应用批准。来自 Graph 的请求似乎总是绕过批准策略。
使用 Fiddler 和 Azure 门户(参考上面的屏幕截图),我可以看到以下 JSON 有效负载已发布到图表中。因此,我采用了完全相同的 JSON 有效负载并使用 Graph Explorer 将其发布,但审批流程仍然被绕过。
POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests
{
"accessPackageAssignment": {
"target": {
"objectId": "5eaf3cdc-3859-40a1-bd48-583da94d16b3",
"type": "User"
},
"assignmentPolicyId": "3261eff8-1e91-426d-93dd-55f196a593a4",
"accessPackageId": "d14d6f8c-458f-4a1c-926a-38f4c5e63fe8"
},
"justification": "testing",
"requestType": "AdminAdd",
"parameters": [
{
"name": "IsApprovalRequired",
"value": "true"
}
]
}
如何实现与 Azure 门户相同的行为(即经批准直接访问包分配)?
在 请求正文中,它包含一个
accessPackageAssignmentRequest
对象,该对象具有属性 assignmentPolicyId
,以及标识 accessPackageAssignmentPolicy的
assignmentPolicyId
属性,并且此策略具有 requestApprovalSettings
的定义。 approvalSettings 包含 isApprovalRequired
。
顺便说一句,你提到的是
beta
版本api,不推荐使用。而且V1.0版本可能会更好。
据我所知,目前这是不可能的。我花了几天时间修改访问包的每种请求类型,并摆弄 JSON 以发送我能想到的每种可能的混合物,但它总是绕过策略中定义的审批流程。