我注意到在asp.net 4.5模板中,谷歌以外的所有授权样本都是秘密通过并且clientid.我如何传递我的谷歌秘密和clientid? brock在这里有一个很好的讨论我正在关注:
模板附带的示例代码如下所示.
internal static class AuthConfig { public static void RegisterOpenAuth() { // See http://go.microsoft.com/fwlink/?LinkId=252803 for details on setting up this ASP.NET // application to support logging in via external services. //OpenAuth.AuthenticationClients.AddTwitter( // consumerKey: "your Twitter consumer key",// consumerSecret: "your Twitter consumer secret"); //OpenAuth.AuthenticationClients.AddFacebook( // appId: "your Facebook app id",// appSecret: "your Facebook app secret"); //OpenAuth.AuthenticationClients.AddMicrosoft( // clientId: "your Microsoft account client id",// clientSecret: "your Microsoft account client secret"); // OpenAuth.AuthenticationClients.AddGoogle(); } }
解决方法
我看了
OAuthWebSecurity
班的
source code.
Google的身份验证客户端不需要AppId / AppSecret的原因是因为它的实现使用的是OpenId而不是OAuth.
如果您想在Google上使用OAuth,则必须编写自己的客户端(至少目前为止).