asp.net-mvc – IdentityServer 4,OpenIdConnect重定向到外部登
我正在尝试构建多个小型ASP.Net核心Mvc服务,这些服务连接到使用IdentityServer4构建的Identity服务器.
我已经在MVC服务上设置了OpenIdOption,看起来像这样 app.UseCookieAuthentication(new CookieAuthenticationOptions { AuthenticationScheme = "Cookies" }); app.USEOpenIdConnectAuthentication(new OpenIdConnectOptions { AuthenticationScheme = "oidc",SignInScheme = "Cookies",Authority = "http://localhost:5000",RequireHttpsMetadata = false,ClientId = "mvc",ClientSecret = "secret",ResponseType = "code id_token",Scope = { "api1","offline_access" },GetClaimsFromUserInfoEndpoint = true,SaveTokens = true }); 其中http:// localhost:5000是我的Identity Server运行的端点.如果我的MVC服务器位于http:// localhost:5002我看到当我向控制器设置[Authorize]属性时,它会重定向到我的身份服务器,如果检查失败,它会在http处查找登录页面://本地主机:5002 /登入-OIDC 现在我遇到的问题是我要登录页面由我的身份服务器托管在http:// localhost:5000 / signin-oidc,以便所有MVC服务只是利用它来获取用户身份,但不幸的是我无法看到如何设置此RedirectUrl. 我知道图表在参考流程时的工作原理是不准确的,只是想简化我想要完成的事情:) 有可能做到这一点吗? 问候 解决方法
您似乎误解了/ signin-oidc路由的用途.一般流程的工作方式如下:
>用户访问ASP.NET Core站点. > cookie身份验证处理程序尝试从(签名)cookie信息中恢复身份. >应用程序要求默认质询方案“oidc”执行身份验证质询. > OpenIdConnect身份验证处理程序重定向到OpenId Connect身份验证提供程序,这是您的Identity Server. > Cookie身份验证方案处理登录过程并创建用户身份.它将身份存储在cookie中,因此可以在将来的请求中检索它,而无需再次通过整个身份验证质询管道. 因此,/ signin-oidc端点是返回应用程序以完成OpenId Connect身份验证流程的登录过程的方法.当用户到达此地址时,他们已经在Identity Server上登录,并且他们将被重定向回应用程序以继续他们最初停止的位置. 通常,用户在该路由上花费的时间是最小的,因为它将在处理登录请求之后立即重定向回“适当的”应用程序路由. 所以不,这里没有登录表格.登录过程本身由您的OpenId Connect身份验证提供程序Identity Server负责.这就是关于这一点的全部观点,所以你可以使用您的Google凭据安全登录google.com,而不是my-random-and-probably-untrusted-app.example.com,这绝对不应该获取您的实际Google凭据. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 如何在MVC 4.0 Razor中进行授权
- asp.net-mvc-3 – 安全地通过ASP.NET同步上下文执行任务,而
- asp.net-mvc – 与Ninject集成测试
- asp.net – 在新的MVC4应用程序中获取UserId(int)
- entity-framework – Ninject WebAPI由于DbContext已被处理
- asp.net-mvc – 如何阻止URL.Action包含参数?
- asp.net – SyndicationFeed:内容为CDATA?
- ASP.NET / IIS:404适用于所有文件类型
- asp.net-mvc – Asp.net mvc 3 – 自定义模型绑定
- asp.net-web-api – 使用Fiddler进行包含OData命令的HTTP G
- asp.net – TFS 2010 – TF14040可能无法检出文件
- asp.net-mvc-4 – MVC 4中的HttpContext.Current
- asp.net – bin目录中是否存在.pdb文件会对性能产
- asp.net-mvc-5 – 依赖注入结构图ASP.NET Identi
- ASP.Net控件如何从其数据源读取?
- asp.net – IItemTransform和现有的缩小文件
- ASP.NET MVC3角色和权限管理 – >具有运行时权限
- asp.net – 请求验证 – 在SiteCore中如何以及为
- asp.net-mvc – NHibernate缓存问题 – 何时调用
- asp.net-mvc – 没有控制器或操作名称的Asp.net