繁体   English   中英

OpenId Connect身份验证.NET Core

[英]OpenId Connect Authentication .NET Core

当内部用户访问某些页面时,我们正在尝试通过它们对其进行身份验证。 我们的服务器不在现场,因此我们正在寻找一个API,我们可以在其中传递用户名和密码,并接收它们是否在我们的组织中以及它们属于哪个组。 在框架中是可能的。 .NET Core是否存在这种情况?

更新:感谢您的答复! 似乎现在正在向我提供授权码,现在我正试图使用​​它来获取令牌,然后使用该访问令牌来获取用户的组(如果我以错误的方式进行操作,请更正我)。 我的问题是我不断收到错误的请求错误。 我已经遍历了很多参数,找不到我想要的东西。 这是我当前设置的API URL,是否缺少某些内容?

 string postData = $"{{\"grant_type\":\"{grant_type}\",\"client_id\":\"{client_id}\",\"code\":\"{code}\",\"redirect_uri\":\"{redirect_uri}\",\"client_secret\":\"{client_secret}\"}}";
 string redirectUrl = $"https://login.microsoftonline.com/{tenant_id}/oauth2/authorize?client_id={client_id}&response_type={response_type}&redirect_uri={redirect_uri}&response_mode={response_mode}&resource={client_id}";
 string requestUriString = $"https://login.microsoftonline.com/{tenant_id}/oauth2/token";

更新2:我发现了什么地方出了问题,当需要使用x-www-form-urlencoded时,我将发布数据作为Json String传递。

我不太确定这是否可以解决您的问题,但您可能想看看以下.NET Core示例(带有MSAL.NET): https : //github.com/Azure-Samples/active-directory-dotnetcore -console-UP-V2

通常,我们确实不建议任何人使用用户名/密码。 还有其他更好的可能性。 有关完整图片,请参见https://aka.ms/msal-net-scenarios

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM