我一直在查看Azure Active Directory Code Samples中的很多样本,而且我似乎无法找到符合我情景的样本。
我找到的示例有一个登录按钮,一旦点击,就会将用户重定向到此网址https://login.microsoftonline.com
,允许用户进行身份验证。
验证成功后,用户将被重定向回初始网站。
虽然我的情况有些类似,但唯一的区别是我不希望将用户重定向到此client_secret
页面。
如果可能,我希望用户在我的文本框中输入他的用户名/密码,并将它们发送到ADAL以获取令牌。
据我所知,由于我在ASP.NET MVC应用程序中,因此Azure AD期望https://login.microsoftonline.com
而不是用户的用户名/密码。
换句话说,实现我的任务似乎唯一的方法是:
assetsPublicPath: '/'
页。我不确定我的问题是否有意义,所以请随时要求澄清。
由于
答案 0 :(得分:1)
建议不要在此方案中使用资源所有者密码凭据流。如果用户不信任您的网络应用,则更像是网上诱骗网站。
资源所有者密码凭证(即,用户名和密码)可以直接用作授权授权以获得访问令牌。只有在资源所有者和客户端之间存在高度信任时(例如,客户端是设备操作系统或高权限应用程序的一部分),以及其他授权授权类型不可用时,才应使用凭证(例如授权码)。
当我们选择 OAuth 2授权框架的交互式流程时,预计会重定向到身份提供商,因为这是它的工作方式!
OAuth 2授权框架允许第三方应用程序通过编排资源所有者和HTTP服务之间的批准交互,或者通过允许第三方来代表资源所有者获得对HTTP服务的有限访问权限应用程序以代表自己获取访问权限。
有关OAuth2的详细信息,请参阅rfc6749具体说明。
此外,如果您对公司品牌感兴趣,下面的文章也很有帮助。