Identity Server4未经授权的错误

问题描述:

我正在关注将客户端连接到Identity Server的Scot Brad的tutorialIdentity Server4未经授权的错误

但是,当我呼叫受保护的追索权时,出现401错误,而不是重定向到登录页面。当我查看浏览器中的网络选项卡时,我可以看到它使用参数调用身份服务器的“连接/授权”端点。

URL

https://localhost:44357/connect/authorize?client_id=TestClient&redirect_uri=https%3A%2F%2Flocalhost%3A44322%2Fsignin-oidc&response_type=id_token&scope=openid%20profile&response_mode=form_post&nonce=636153820178127063.N2QzZGVkYWEtYjVlYS00OGJlLWEwNmUtMjg3NmFiMTkxMzlmYjdjMWUyZTMtNmU4MC00YjFjLWI0NzQtNWY2OGViM2E5NTU0&state=CfDJ8MVlFDRNc9pPh04-DLkjH8nHybAKye3NJvq8XeUgNyfpXA3VWXn7UrnwgElO2M_yQ4u1xDKnnZVfkMlC4XCdlslGNf3KL1x2Wy_ZzabG0_Y_Hw9ZiBvh0D2WFojJx-rC_2iTL9RJErxBxZWwDJix_0jPpjocG4qkRBWCL5W2ZLLBM_d6fWMLx4scD2foLzWw461KedmCFw6AGPoJv8fuU5zHEbjA1kIxCoj0EF0GTHFZKshoQmczsdKxp4Kl7LDYwhBEJJ9KNnkYiamdj8ssk2Aa1bvhMGYDZx8ukunasjDzjUXAQBFrcLI94PU221Em4V8meaFkfC_mtMKGnm6tZSs 

当我复制并粘贴网址到浏览器中,我看到了一个错误:

SqlException: Invalid column name 'AllowPlainTextPkce'. Invalid column name 'ProtocolType'.

看起来你没有运行该项目的EF迁移。 DbContext假定这些列存在于数据库中。

+0

值得一提的是:这些列是IdentityServer4 1.0.0-rc3中的新增功能。 –

+0

我会将此答案标记为正确。因为它给了我正确的提示。对于可能有类似问题的人,让我解释发生了什么事。自从我开始项目以来,我已经更新了Identity Server包。从外观上看,软件包的版本与客户端模型有一些变化。有一些额外的领域。所以需要进行迁移并更新数据库 –

+0

@BenCollins:没错。花了一段时间弄清楚 –