小编Loc*_*304的帖子

使用Asp.Net MVC应用程序设置IdentityServer

我提前道歉,因为我一般都不知道安全性,特别是IdentityServer.

我正在尝试设置IdentityServer来管理Asp.Net MVC应用程序的安全性.

我在他们的网站上关注教程:使用IdentityServer的Asp.Net MVC

但是,我正在做一些稍微不同的事情,因为我有一个单独的Identity"Server"部分项目,它导致2个Startup.cs文件,一个用于应用程序,一个用于Identity Server

对于该应用程序,Startup.cs文件如下所示

public class Startup
{
     public void Configuration(IAppBuilder app)
     {
         AntiForgeryConfig.UniqueClaimTypeIdentifier = Constants.ClaimTypes.Subject;
         JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary<string, string>();
         app.UseCookieAuthentication(new CookieAuthenticationOptions
         {
            AuthenticationType = "Cookies"
         });

         app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
         {
            Authority = "https://localhost:44301/identity",
            ClientId = "baseballStats",
            Scope = "openid profile roles baseballStatsApi",
            RedirectUri = "https://localhost:44300/",
            ResponseType = "id_token token",
            SignInAsAuthenticationType = "Cookies",
            UseTokenLifetime = false,
            Notifications = new OpenIdConnectAuthenticationNotifications
            {
                SecurityTokenValidated = async n =>
                {
                    var userInfoClient = new UserInfoClient(
                                 new Uri(n.Options.Authority + …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc-4 identityserver3

7
推荐指数
1
解决办法
6048
查看次数

从AngularJs http web api请求重定向到Identity Server登录页面

我正在尝试从Angular的$ http服务调用API控制器方法时重定向到Identity Server的默认登录页面.

我的Web项目和Identity Server位于不同的项目中,并具有不同的Startup.cs文件.

Web项目Statup.cs如下

 public class Startup
{
     public void Configuration(IAppBuilder app)
     {
         AntiForgeryConfig.UniqueClaimTypeIdentifier = Thinktecture.IdentityServer.Core.Constants.ClaimTypes.Subject;
         JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary<string, string>();

         app.UseCookieAuthentication(new CookieAuthenticationOptions
         {
             AuthenticationType = "Cookies",                
         });

         var openIdConfig = new OpenIdConnectAuthenticationOptions
         {
             Authority = "https://localhost:44301/identity",
             ClientId = "baseballStats",
             Scope = "openid profile roles baseballStatsApi",
             RedirectUri = "https://localhost:44300/",
             ResponseType = "id_token token",
             SignInAsAuthenticationType = "Cookies",                 
             UseTokenLifetime = false,
             Notifications = new OpenIdConnectAuthenticationNotifications
             {
                 SecurityTokenValidated = async n =>
                 {
                     var userInfoClient = new UserInfoClient(
                                  new Uri(n.Options.Authority + …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc-4 asp.net-web-api angularjs owin identityserver3

6
推荐指数
1
解决办法
2943
查看次数

对同一应用程序项目中的MVC使用承载令牌认证进行API和OpenId认证

我试图通过Identity Server在我的应用程序上使用OpenId和Bearer令牌身份验证.

目前的问题是,一旦我对用户进行了身份验证,我仍然需要获得一个持有者令牌才能为我的Asp.Net MVC应用程序调用任何操作方法.

这是我的应用程序启动文件

 public class Startup
{
     public void Configuration(IAppBuilder app)
     {            
         AntiForgeryConfig.UniqueClaimTypeIdentifier = Constants.ClaimTypes.Subject;
         JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary<string, string>();
         app.UseCookieAuthentication(new CookieAuthenticationOptions
         {
            AuthenticationType = "Cookies"
         });

         app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
         {
            Authority = "https://localhost:44301/identity",
            ClientId = "baseballStats",
            Scope = "openid profile roles baseballStatsApi",
            RedirectUri = "https://localhost:44300/",
            ResponseType = "id_token token",
            SignInAsAuthenticationType = "Cookies",
            UseTokenLifetime = false,
            Notifications = new OpenIdConnectAuthenticationNotifications
            {
                SecurityTokenValidated = async n =>
                {
                    var userInfoClient = new UserInfoClient(
                                 new Uri(n.Options.Authority + "/connect/userinfo"),
                                 n.ProtocolMessage.AccessToken);

                    var userInfo …
Run Code Online (Sandbox Code Playgroud)

c# openid oauth-2.0 asp.net-mvc-4 owin

5
推荐指数
1
解决办法
7100
查看次数