0 c# asp.net openid dotnetopenauth
我使用以下代码.
OpenIdRelyingParty createRelyingParty()
{
OpenIdRelyingParty openid = new OpenIdRelyingParty();
int minsha, maxsha, minversion;
if (int.TryParse(Request.QueryString["minsha"], out minsha))
{
openid.Settings.MinimumHashBitLength = minsha;
}
if (int.TryParse(Request.QueryString["maxsha"], out maxsha))
{
openid.Settings.MaximumHashBitLength = maxsha;
}
if (int.TryParse(Request.QueryString["minversion"], out minversion))
{
switch (minversion)
{
case 1: openid.Settings.MinimumRequiredOpenIdVersion = ProtocolVersion.V10; break;
case 2: openid.Settings.MinimumRequiredOpenIdVersion = ProtocolVersion.V20; break;
default: throw new ArgumentOutOfRangeException("minversion");
}
}
return openid;
}
OpenIdRelyingParty openid = createRelyingParty();
IAuthenticationRequest request = openid.CreateRequest(openIdBox.Text);
request.RedirectToProvider();
Run Code Online (Sandbox Code Playgroud)
上面的行进入openid站点进行身份验证.但我想在不进入openid站点的情况下进行身份验证.能帮帮我吗.谢谢
Dav*_*d M 18
如果我理解正确,您要做的是在您的站点上捕获OpenID用户名和密码,然后在后台将它们传递给OpenID进行身份验证.你没有看到这是一个非常糟糕的主意吗?如果OpenID使这成为可能,我会停止使用它们.我不希望他们为客户端应用程序提供获取用户名和密码的功能,非常感谢... !!!!
OpenID是以这种方式构建的,以防止依赖方获取密码.
此外,用户名+密码不是用户登录OpenID的唯一可能方式
例如,我的OpenID没有密码,它有证书+验证,我的后备有用户名+密码+ Yubikey OTP登录.
所以,有效......不可能按照你想象的方式使用这个问题,因为密码可能不是OpenID的一部分,或者不足以启用登录.
| 归档时间: |
|
| 查看次数: |
556 次 |
| 最近记录: |