首页 > 解决方案 > 如何在 Microsoft Graph 中发布 Oauth2PermissionGrants?

问题描述

我们正在寻求通过 Microsoft graph 自动获得 Azure 企业应用程序的管理员同意,更具体地说是 `/beta/oauth2permissiongrants/

我们已经成功部署了一个可以做到这一点的应用程序,但现在它失败了

该错误消息与expiryTime最近不推荐使用的属性有关。我们试图更改我们POST的属性以排除该属性,但它仍然失败。如果我们把它留在里面,它也会失败。它以前工作得很好。

{
 "clientId":"6b765713-9aac-4bf3-a5e9-4c11228e2e49",
 "consentType":"AllPrincipals",
 "resourceId":"ac07f639-74ff-459e-b335-2fcc434dbd76",
 "scope":"User.Read openid",
}

回报是

{
    "error": {
        "code": "Request_BadRequest",
        "message": "Missing property: expiryTime",
        "innerError": {
            "request-id": "d61927fe-4ab9-40a9-9b7e-ff33c138bb93",
            "date": "2019-09-16T12:18:06"
        }
    }
}

expiryTime属性应该不再相关,但是无论我们做什么,我们都会收到一条错误消息,指出它丢失了。

有谁知道解决这个问题的方法?

标签: azure-active-directorymicrosoft-graph-api

解决方案


如果我不在请求正文中添加 expiryTime 属性,我将得到与您相同的错误。

在此处输入图像描述

但是将其添加到请求正文后,我可以成功发布。

在此处输入图像描述

顺便说一下,不建议使用 beta 版本的 api。

Microsoft Graph 中 /beta 版本下的 API 可能会发生变化。不支持在生产应用程序中使用这些 API。


推荐阅读