结合IdentityServer4和MVC客户端

时间:2016-08-26 06:33:59

标签: c# identityserver4

我从Github下载了示例IdentityServer和MVC客户端项目。 我的目标是创建一个门户环境,用户可以在其中进行身份验证,然后继续请求受保护的资源。

所以我做的是将视图从MVC客户端移动到IdentityServer项目,更改Client.cs以支持同一端口上的客户端,并在IdentityServer的启动中添加以下内容:

        var oidcOptions = new OpenIdConnectOptions
        {
            AuthenticationScheme = "oidc",
            SignInScheme = "Cookies",

            Authority = "http://localhost:5000",
            RequireHttpsMetadata = false,
            PostLogoutRedirectUri = "http://localhost:5000/",
            ClientId = "mvc",
            ClientSecret = "secret",
            ResponseType = "code id_token",
            GetClaimsFromUserInfoEndpoint = true,
            SaveTokens = true
        };

我的问题是有任何理由,关于安全问题,我不应该实施这个并将其分开吗?

1 个答案:

答案 0 :(得分:3)

从安全角度来看,这根本没有任何问题。

但是,我必须警告您,在处理Cookie和令牌时可能会遇到问题。在单独的项目中运行它们隐含地分离了MVC和IDS项目的关注点。

您可能想要做的是使用app.Map()分叉您的请求管道。 (例如,将IDS映射到“/ identity”,将MVC项目映射到“/ ui”)