gpt4 book ai didi

asp.net-mvc - 请求教程以向 NerdDinner ASP.NET MVC 应用程序添加 Openid 支持

转载 作者:行者123 更新时间:2023-12-03 10:27:49 26 4
gpt4 key购买 nike

我正在寻找使用 ASP.NET MVC NerdDinner 教程了解 ASP.NET MVC 和 OpenId。

我想将 NerdDinner 中的身份验证系统替换为仅 OpenId。我已经下载了最新的 DotNetOpenAuth 库,但我不确定如何将它们组合在一起。任何人都可以帮助提供快速的分步教程吗?

这是像放入库一样简单还是应用程序也需要进行重大更改?

最佳答案

下载后 dotnetopenid ,在 samples\RelyingPartyMvc 目录中查找。有一个示例,他们用 OpenID 替换了默认的 MVC 身份验证系统。相关代码在 Controllers/UserController.cs 中。这是身份验证操作:

//Stage 1: Show form asking for Open ID identifier URL
var openid = new OpenIdRelyingParty();
if (openid.Response == null) {
// Stage 2: user submitting Identifier
Identifier id;
if (Identifier.TryParse(Request.Form["openid_identifier"], out id)) {
openid.CreateRequest(Request.Form["openid_identifier"]).RedirectToProvider();
} else {
ViewData["Message"] = "Invalid identifier";
return View("Login");
}
} else {
// Stage 3: OpenID Provider sending assertion response
switch (openid.Response.Status) {
case AuthenticationStatus.Authenticated:
FormsAuthentication.RedirectFromLoginPage(openid.Response.ClaimedIdentifier, false);
break;
case AuthenticationStatus.Canceled:
ViewData["Message"] = "Canceled at provider";
return View("Login");
case AuthenticationStatus.Failed:
ViewData["Message"] = openid.Response.Exception.Message;
return View("Login");
}
}
return new EmptyResult();

关于asp.net-mvc - 请求教程以向 NerdDinner ASP.NET MVC 应用程序添加 Openid 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/933884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com