使用Postman测试OAuth身份验证代码流

使用Postman测试OAuth身份验证代码流,postman,identityserver4,Postman,Identityserver4,我试图使用Postman来测试身份验证代码流,但它似乎无法正常工作。我不确定这是IS4还是邮递员的问题 我使用以下文档创建了一个新实例: 创建了一个新客户端: new Client { ClientId = "code", RedirectUris = { "https://www.getpostman.com

我试图使用Postman来测试身份验证代码流,但它似乎无法正常工作。我不确定这是IS4还是邮递员的问题

我使用以下文档创建了一个新实例:

创建了一个新客户端:

            new Client
            {
                ClientId = "code",

                RedirectUris =
                {
                    "https://www.getpostman.com/oauth2/callback"
                },

                AllowedGrantTypes = GrantTypes.CodeAndClientCredentials,

                 ClientSecrets =
                {
                    new Secret("apisecret".Sha256())
                },

                AllowedScopes = 
                { 
                    IdentityServerConstants.StandardScopes.OpenId,
                    IdentityServerConstants.StandardScopes.Profile,
                    "api1" 
                },

                AllowOfflineAccess = true
            }
然后用邮递员去拿身份证

然后,我使用bob/bob或alice/alice登录,当我单击登录按钮时,它只是重定向回登录屏幕

我希望能够检索访问令牌

在使用SPA客户机对demo实例()进行测试时,我也遇到了同样的问题


如果我使用SoapUi,它会工作。

你在《邮递员》中采取了哪些步骤?我不熟悉屏幕截图中显示的任何功能,您只需单击“请求令牌”,这似乎是由于将授权cookie上的SameSite属性设置为None而导致的。由于Postman正在使用Chrome 66,这将拒绝任何将此设置为None的Cookie。如果您没有为邮递员请求设置SameSite属性(即通过用户代理检测),那么它应该可以工作。此链接提供了有关不兼容客户端的更多详细信息: