如何将第三方认证URL添加到ASP.Net MVC

时间:2015-10-23 09:08:46

标签: oauth oauth-2.0 asp.net-identity identity

ASP.Net项目内置了对loginprovider添加的支持。

例如:对于facebook启用我们去App_start-> Startup.Auth.cs并取消注释这一行,简单!

app.UseFacebookAuthentication(
                appId: "",
                appSecret: "");

但Facebook有这样的api https://graph.facebook.com/oauth/authorize 和谷歌有"https://www.googleapis.com/" 另一个第三方有"https://www.wunderlist.com/oauth/authorize"

但我没有在asp.net项目中看到这个网址。 .Net如何访问这些URl?如果网址不断变化怎么办?如何在项目中添加新的第三方提供商?

1 个答案:

答案 0 :(得分:0)

Facebook / Twitter /等提供商使用Owin项目中的自定义库,您可以在那里看到它的源代码。端点不太可能改变,因为它会破坏无数的网站。

URL在库中是硬编码的,例如Facebook library具有:

namespace Microsoft.Owin.Security.Facebook
{
    internal static class Constants
    {
        public const string DefaultAuthenticationType = "Facebook";

        internal const string AuthorizationEndpoint = "https://www.facebook.com/dialog/oauth";
        internal const string TokenEndpoint = "https://graph.facebook.com/oauth/access_token";
        internal const string UserInformationEndpoint = "https://graph.facebook.com/me";
    }
}