Identity Server 4 - 身份模型授权类型

时间:2017-03-31 13:30:57

标签: asp.net-core identityserver4

我正在尝试从here实现身份模型,我试图让NetCoreConsoleClient在我的localhost:5000上使用我的IdentityServer4,并在我的本地主机上使用我的Api:5001

我的出发点是Quick start 5 Hybrid和Api流程。

所以我已将以下客户端添加到我的IdentityServer4代码中:

// Hybrid grant client
            new Client
            {
                ClientId = "hclient",
                AllowedGrantTypes = GrantTypes.Hybrid,

                ClientSecrets =
                {
                    new Secret("secret".Sha256())
                },
                AllowedScopes =
                {
                    IdentityServerConstants.StandardScopes.OpenId,
                    IdentityServerConstants.StandardScopes.Profile,
                    "api1"
                },
            }

在NetCoreConsoleClient中,我更改了以下代码行:

    static string _authority = "http://localhost:5000";
    static string _api = "http://localhost:5001";

private static async Task SignIn()
    {
        // create a redirect URI using an available port on the loopback address.
        string redirectUri = string.Format("http://127.0.0.1:7890/");

        var options = new OidcClientOptions
        {
            Authority = _authority,
            ClientId = "hclient",
            RedirectUri = redirectUri,
            Scope = "OpenId Profile api1",
            FilterClaims = false,
            Browser = new SystemBrowser(port: 7890)
        };

我在帖子评论here中读到我应该使用混合流授权类型。

网络浏览器打开但我一直在:

抱歉,发生错误:unauthorized_client

我做错了什么?

0 个答案:

没有答案