我在Visual Studio 2013中创建了一个标准的ASP.Net Web项目并启用了身份验证。
一个名为' StartupAuth.cs'是自动创建的,有以下几行。当应用程序在localhost dev服务器上运行时,它会在代码下面的屏幕截图中粘贴一个异常。我需要在通过Google,Twitter,Facebook和Window Live进行身份验证时在localhost dev服务器上运行。
问题:我可以为参数提供任何有效的字符串值 - clientId,clientSecret和appId吗?如果没有,那么我从哪里获得这些的有效值?
// Uncomment the following lines to enable logging in with third party login providers
app.UseMicrosoftAccountAuthentication(
clientId: "",
clientSecret: "");
app.UseTwitterAuthentication(
consumerKey: "",
consumerSecret: "");
app.UseFacebookAuthentication(
appId: "",
appSecret: "");
app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions()
{
ClientId = "",
ClientSecret = ""
});
身份验证异常抛出
更新1 :
由于OAuth2是第三方身份验证的最新版本,因此应使用以下网址中的说明:http://www.asp.net/mvc/overview/security/create-an-aspnet-mvc-5-app-with-facebook-and-google-oauth2-and-openid-sign-on。我按照上面的URL中的步骤操作,发现localhost上的Google身份验证工作正常。
注意:此网址(http://www.asp.net/web-api/overview/security/external-authentication-services)上的说明适用于OpenID身份验证,与最新的OAuth2身份验证不同,因此无法用于Google身份验证。
答案 0 :(得分:1)
不,你不能输入任何字符串。您需要向每个提供商注册以获取所需的参数。
有关如何执行此操作的说明,请参阅http://www.asp.net/web-api/overview/security/external-authentication-services。