Azure active directory 无法使用用户名&;获取Microsoft Graph API OAuth 2.0的访问令牌;密码

Azure active directory 无法使用用户名&;获取Microsoft Graph API OAuth 2.0的访问令牌;密码,azure-active-directory,microsoft-graph-api,Azure Active Directory,Microsoft Graph Api,我正在尝试使用获取访问\u令牌 POST{tenant}/oauth2/v2.0/token 使用用户名和密码的端点,其中tenant={some tenant id} 我用于发出请求的参数有: client_id:{client_id} scope:https://graph.microsoft.com/Calendars.ReadWrite client_secret:{client_secret} username:{username} password:{password} grant_

我正在尝试使用获取
访问\u令牌

POST
{tenant}/oauth2/v2.0/token

使用用户名和密码的端点,其中
tenant={some tenant id}

我用于发出请求的参数有:

client_id:{client_id}
scope:https://graph.microsoft.com/Calendars.ReadWrite
client_secret:{client_secret}
username:{username}
password:{password}
grant_type:password
我得到以下错误的响应:

error: invalid_request
error_description : AADSTS90002: Tenant '' not found. This may happen if there are no active subscriptions for the tenant. Check with your subscription administrator.
我对Azure上的应用程序具有以下权限:


此处提供了相关文档:

在我这方面,它很有效。您应该检查您的租户您的应用程序是否已在此租户中注册


我通过购买订阅并将我的用户添加为管理员解决了这个问题

之后,我在应用程序中添加了两个权限,以获得使用ROPC(资源所有者密码凭据)身份验证方法的代理访问权限,并在管理员同意的情况下授予了它们


我的应用程序已在同一租户中注册。请告诉我检查的步骤,以便我可以交叉验证?用户帐户是否具有office 365许可证。由于outlook中使用了日历,如果您的帐户不是outlook用户,它也会出现此错误。我可以访问日历api。我是否需要订阅特定服务来注册我的应用程序并获取租户?您使用什么作为租户id?URI或GUID?@Marclafler是租户id还是订阅id?我是否需要为我的应用程序购买订阅,或者我的应用程序下列出的租户id将起作用?我不确定您指的是哪个订阅。您的租户id是您要对其进行身份验证的AAD租户的唯一id。我通常建议为租户使用URI,因为这样更容易查找。格式为
tenant name.microsoftonline.com