编程语言
首页 > 编程语言> > javascript – 用户或管理员未同意使用该应用程序 – 发送此用户和资源的交互式授权请求

javascript – 用户或管理员未同意使用该应用程序 – 发送此用户和资源的交互式授权请求

作者:互联网

我们正在做this CRM Web API项目.该项目登录到Dynamics CRM在线实例并获取帐户列表.

登录似乎正在发生.
但是,帐户列表会出现以下错误:

AADSTS65001: The user or administrator has not consented to use the application with ID ‘xxxx-xxxxx-xxxx-xxx’. Send an interactive authorization request for this user and resource.
Trace ID: e3b360d6-39fb-4e61-87d9-26531f30fd7b
Correlation ID: 9b2cff0c-074e-44fe-a169-77c8061a7312
Timestamp: 2016-10-18 10:12:49Z

permissions are properly set

Azure permissions

问题是什么?

解决方法:

管理员必须同意这些权限.您应该向Azure AD发出包含参数prompt = admin_consent的授权请求.

与文档here中一样,prompt参数可以包含3个值:login,consent或admin_consent.

所以,你应该去一个像https://login.microsoftonline.com/tenant-id/oauth2/authorize?client_id=app-client-id&redirect_uri=encoded-reply-url&response_type=code&prompt=admin_consent这样的URL.

将tenant-id替换为您的Azure AD租户ID /域名,或者如果您的应用是多租户,则将其替换为common.将app-client-id替换为您应用的客户端ID.将encoded-reply-url替换为您应用的网址编码回复网址.

构建所需URL的一种更简单的方法是进行身份验证,只需在访问Azure AD时获取地址栏中的URL即可.然后只需将& prompt = admin_consent添加到URL即可.

编辑:随着Azure门户的最新更新,能够直接从门户网站授予权限.

如果您转到新门户中的Azure Active Directory,请在那里找到您的应用注册,然后单击所需权限刀片下的授予权限.

New Grant Permissions button

标签:javascript,azure,asp-net-web-api,dynamics-crm,c-2
来源: https://codeday.me/bug/20190930/1836057.html