我正在尝试使用 Graph API 调用在 azure 广告上注册应用程序。
我正在使用邮递员访问 API,并且我在 Azure 中拥有管理员访问权限。
到目前为止,我已经尝试了以下几点:
我使用此文档在 Azure AD 上手动注册了一个应用程序 - https://docs.microsoft.com/en-us/azure/databricks/dev-tools/api/latest/aad/service-prin-aad-token。 (我为我的应用程序提供了所有必需的权限)
我正在使用服务获取令牌以服务调用客户端凭据 - https://docs.microsoft.com/en-us/azure/active-directory/azuread-dev/v1-oauth2-client-creds-grant-flow。
获得令牌后,我在授权中传递它并点击 MS 图形创建应用程序端点。 https://docs.microsoft.com/en-us/graph/api/application-post-applications?view=graph-rest-1.0&tabs=http。
但是在邮递员中,我没有收到任何响应正文。我已检查 Azure 租户,但找不到任何新注册的应用程序。
Token 服务(Get) 端点- https://login.microsoftonline.com/{my-tenant-id}/oauth2/token 身体- grant_type:client_credentials client_id:{app-id} 范围:https://graph.microsoft.com/.default 客户秘密:{秘密} //资源:https://graph.microsoft.com 使用令牌响应成功(200)
用于创建应用程序(POST) https://graph.microsoft.com/v1.0/applications 正文:{ "displayName": "用 MS Graph API 创建" } 授权:承载{token} 响应:响应中没有显示任何内容
答案 0 :(得分:0)
您可以使用 Create Application API
注册应用程序POST https://graph.microsoft.com/beta/applications
首先需要有足够的权限才能向 Azure AD 注册应用程序。此示例展示了如何注册和创建面向 Graph API 的应用程序。 https://github.com/microsoftgraph/aspnet-snippets-sample
答案 1 :(得分:0)
我找到了解决方案,在 API 标头中,我指定了不需要的 Content-Length= 67。现在我可以获得成功响应。
如果我们查看 MS 文档,他们提供了以下示例
POST https://graph.microsoft.com/v1.0/applications
Content-type: application/json
Content-length: 67
{
"displayName": "Display name"
}
我们不需要在标题中传递 Content-Length。