我有一个有效的授权请求。如何在Python中复制它?我正在使用Azure AD验证访问。
qvtsj1bj1#
由于您使用的是python,因此您的案例是:与Microsoft一起使用SSR Web应用程序的Oauth2登录目标使用oauth2授权码授权从交互登录获取access_token
这里我将列出使用任何语言进行此操作所需的所有步骤
/
/callback
/callback?code=123456
https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=foo&response_type=code&redirect_uri=foo&response_mode=query&scope=offline_access%20user.read%20mail.read
http://acme.com/callback?code=123456798
1.在/callback的后端获取代码并将其发送到这个新端点1.添加一个client_id&client_secret参数1.使用microsoft发送的代码添加code参数1.添加一个redirect_uri参数,其中包含以前在azure上使用和注册的参数。示例http://acme.com/callback或http://localhost:8080/callback1.添加值为authorization_code的grant_type参数1.发出内容类型为的HTTP POST请求:application/x-www-form-urlencoded个1.您应该会收到带有宝贵的access_token的响应:
client_id
client_secret
code
redirect_uri
http://acme.com/callback
http://localhost:8080/callback
authorization_code
grant_type
application/x-www-form-urlencoded
{ token_type: 'Bearer', scope: 'Mail.Read User.Read profile openid email', expires_in: 5020, ext_expires_in: 5020, access_token: 'eyJ0oVlKhZHsvMhRydQ', refresh_token: 's_Rcrqf6xMaWcPHJxRFwCQFkL_qUYqBLM71UN6' }
微软提供了一些库(C#,nodejs),这将保存你一点工作。无论如何,前面的解释是非常详细的。
1条答案
按热度按时间qvtsj1bj1#
由于您使用的是python,因此您的案例是:与Microsoft一起使用SSR Web应用程序的Oauth2登录
目标
使用oauth2授权码授权从交互登录获取access_token
步骤
这里我将列出使用任何语言进行此操作所需的所有步骤
/
:主页/callback
:能够接收/callback?code=123456
之类的查询参数的服务器路由或路径。此路由或路径与您的基域沿着称为redirect_uri。示例:或http://acme.com/callback的回调1.在/callback的后端获取代码并将其发送到这个新端点
1.添加一个
client_id
&client_secret
参数1.使用microsoft发送的代码添加
code
参数1.添加一个
redirect_uri
参数,其中包含以前在azure上使用和注册的参数。示例http://acme.com/callback
或http://localhost:8080/callback
1.添加值为
authorization_code
的grant_type
参数1.发出内容类型为的HTTP POST请求:
application/x-www-form-urlencoded
个1.您应该会收到带有宝贵的access_token的响应:
媒介柜
微软提供了一些库(C#,nodejs),这将保存你一点工作。无论如何,前面的解释是非常详细的。
建议