首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么Azure Active Directory OAuth只为我工作,而不为其他人工作?

为什么Azure Active Directory OAuth只为我工作,而不为其他人工作?
EN

Stack Overflow用户
提问于 2019-05-22 22:12:25
回答 1查看 1.1K关注 0票数 3

我正在开发一个Python/Flask应用程序,我想使用OAuth进行登录。我的雇主使用Azure Active Directory,所以我正在尝试将其作为OAuth提供商进行集成。

我不是Azure租户管理员。

我创建了一个应用程序注册,并按照微软的文档设置了我的代码,但我是唯一可以成功登录到该应用程序的人。

我像这样构造我的授权URL (我在代码中有正确的租户名称、客户端id和重定向URI ):

代码语言:javascript
复制
import urllib.parse
import uuid

authorization_endpoint = 'https://login.microsoft.com/my-tenant.onmicrosoft.com/oauth2/authorize'
query = {
    'client_id': 'my-client-id',
    'nonce': uuid.uuid4(),
    'redirect_uri': 'https://my-app.example.com/authorize',
    'response_mode': 'form_post',
    'response_type': 'id_token',
    'scope': 'openid',
    'state': uuid.uuid4()
}
authorization_url = f'{authorization_endpoint}?{urllib.parse.urlencode(query)}'

当我亲自测试登录到应用程序时,一切都很正常。但当其他任何人尝试时,他们都会访问授权URL,使用自己的凭据登录,然后得到一个包含以下错误的页面:

AADSTS165000:无效请求:请求令牌与用户上下文不匹配。不要在不同的请求或用户会话之间复制用户上下文值(cookies;表单字段;标头);始终维护整个单用户流中提供的所有值。失败原因:Token值不匹配;

为什么它只适用于我,而不适用于其他任何人?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-24 03:15:20

授权终结点错误。应该是https://login.microsoftonline.com/...而不是https://login.microsoft.com/...

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56258855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档