这是我的场景 - 我有一个使用 Microsoft Entra 身份验证的简单 Web 应用程序。当我在浏览器中访问该网站并输入用户名和密码并进行身份验证时,我会得到许多想要提取的项目 - 特别是 AppServiceAuthSession Cookie 和 Bearer Token。
标准 MS 登录页面见下文:
我想做的是使用邮递员之类的东西来调用API,向其传递用户名和密码并获取上述项目。不幸的是,当涉及到 API、Auth 等时,我是一个过于热情的业余爱好者。
我怀疑我错过了几个关键步骤。
我想做的是使用邮递员之类的东西来调用API,向其传递用户名和密码并获取以上项目。
根据您的需求,您可以使用ROPC流程来调用API。
如果您想通过传递用户名和密码来调用API,请检查以下内容:
https://login.microsoftonline.com/TenantID/oauth2/v2.0/token
client_id:ClientID
scope:https://graph.microsoft.com/.default offline_access openid
username:[email protected]
password:UserPassword
grant_type:password
client_secret:Clientsecret
将生成代币:
对于示例,使用上面生成的访问令牌,您可以调用 Microsoft Graph API:
GET https://graph.microsoft.com/v1.0/me
您可以传递自定义 API 的范围并使用访问令牌调用 API。
如果您不想通过
client_secret
,请启用公共客户端流程,如下所示:
参考: