5

我最近一直在玩 ASP.NET MVC5 和新的 OWIN 身份验证中间件。我希望我的用户使用他们的 Steam 帐户和密码登录。用户成功登录后,我只需要 Steam 帐户 ID 进行进一步处理。Steam 可以充当文档中所述的 OpenId 提供者。

在 MVC4 中,人们将实现一个自定义 OpenIdClient。在我看来,在 MVC5 中,OpenIdClient 类已被删除,并且使用 IAppBuilder 类配置身份验证,该类提供了使用 Facebook、Google 和其他预定义提供程序登录的方法。

不幸的是,我找不到任何有关将自定义提供程序插入新身份验证系统的文档。你能给我任何指示或参考吗?

4

2 回答 2

16

这是对@Buzinas 提供的赏金的回答。

此解决方案将使用 NuGet 包 Owin Security Providers,可在此处获得。

转到包管理器控制台 ( Tools -> Library Package Manager -> Package Manager Console) 并安装上述包:

Install-Package Owin.Security.Providers

在您App_Start\Startup.Auth.cs添加正确的using语句。对于 Steam,您想要

using Owin.Security.Providers.Steam;

旁注,有几个选项可用,所以这个包不仅仅适用于 Steam。 Owin.Security.Providers

ConfigureAuth方法中,添加app.UseSteamAuthentication("<<API KEY>>");

<<API_KEY>>应替换为您从Valve收到的 API 密钥

于 2014-05-13T15:01:11.617 回答
2

文档仍然有点稀疏。一种选择是复制粘贴类似的现有提供程序并根据需要进行调整。

为 owin 身份验证实施自定义身份验证提供程序的推荐方法

https://katanaproject.codeplex.com/SourceControl/latest

于 2013-10-21T21:04:34.660 回答