我目前正在尝试使用 ServiceNow 请求实现访问包。整个工作流程应该如下: 创建访问包 > AP 获得批准 > 逻辑应用在批准状态下触发并将数据发送到 SNOW > 在 SNOW 中打开请求 > 在 SNOW 中完成请求后,将向 Azure 发送 POST 请求以完成访问包。我一直在关注这篇文章https://learn.microsoft.com/en-us/entra/id-governance/entitlement-management-ticketed-provisioning#requesting-access-to-an-access-package-as-最终用户。
但是,当我尝试 ping 端点时,我收到了错误的请求。起初,我以为问题是 SNOW 无法映射正确的 ID,但是我在 Postman 中测试了 POST,仍然收到 BadRequest 错误:
端点中有一个变量,我从文章中获取的 https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/accessPackageAssignmentRequests/${AccessPackageAssignmentRequestId}/resume HTTP 正文是:
{
"data": {
"@odata.type": "#microsoft.graph.accessPackageAssignmentRequestCallbackData",
"customExtensionStageInstanceDetail": "Resuming-Assignment for user",
"customExtensionStageInstanceId": "${StageInstanceId}",
"stage": "${Stage}"
},
"source": "ServiceNow",
"type": "microsoft.graph.accessPackageCustomExtensionStage.${Stage}"
}
输出:
{
"error": {
"code": "BadRequest",
"message": "Resource not found for the segment 'accessPackageAssignmentRequests'.",
"innerError": {
"date": "2024-04-17T07:51:11",
"request-id": "2662a872-1251-4889-96c2-c8fd4220c24b",
"client-request-id": "2662a872-1251-4889-96c2-c8fd4220c24b"
}
}
}
似乎端点不正确,因为我尝试直接将 ID 输入到正文和端点中,但得到了相同的结果。有什么想法吗?
我尝试将 ID 直接用于正文和端点,但仍然遇到同样的问题。
更新,我们设法通过 MSSupport 解决了该问题。 看来端点是错误的,它应该是: https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/AssignmentRequests/${AccessPackageAssignmentRequestId}/resume 另外,文章中没有提到您的 API 需要 EntitlementManagement.ReadWrite.All 权限。 最后,您需要将 ServiceNow 中的 REST 消息中的 Content-Type 更改为 application/json。