aspnet mvc使用OAUTH2自定义提供程序

时间:2016-09-22 21:16:48

标签: asp.net-mvc jwt adfs asp.net-4.5 oauth2

我有一个MVC应用程序,它使用本地AD对用户进行身份验证,并获取其角色以获取应用程序的设置权限。现在我有了新的要求,我将使用外部AD来验证用户而不是本地用户。因此,我的应用程序会将用户重定向到客户端的登录页面,用户将输入将在其AD上验证的用户名和密码,然后使用令牌重定向回我的应用程序。我需要获取此令牌并再次发布到客户端点以获取JWT令牌。

问题是我找不到类似的东西的好例子。我正在尝试使用Open Id:

        app.UseOpenIdConnectAuthentication(new 

OpenIdConnectAuthenticationOptions {
                ClientId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
                Authority = "https://xx.xxxxxxxxx.xxx/adfs/oauth2/authorize",
                RedirectUri = "http://localhost:27100/token",
                ResponseType = "code",
                Scope = "openid email",
                Resource = "xxxxxxxx",
                UseTokenLifetime = false,
                SignInAsAuthenticationType = "Cookies",
            });

但我收到以下错误:

  

无法创建以从以下位置获取配置:   “https://xx.xxxxxxxxx.xxx/adfs/oauth2/authorize/.well-known/openid-configuration

如果我在本地浏览器上打开完整网址,我可以看到客户AD的登录页面。我不确定OpenIdAuthentication是否适用于这种情况,我正在尝试这个,因为它具有我需要设置的所有属性。有没有其他方法可以实现这一目标?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

while nameSave <=0 or nameSave >99: while True: try: nameSave = float(input("Enter % Savings (Between 1-99%): ")) break except: print("Needs to be a number ") 端点应该解析为:

enter image description here

您可能只需将pod outdated属性更新为其中一个值(取决于STS的运行位置):