【问题标题】:IdentityServer4 missing properties known in version 3IdentityServer4 缺少版本 3 中已知的属性
【发布时间】:2017-03-11 15:34:31
【问题描述】:

我正在尝试设置 IdentityServer 4 (1.0.0-rc2) 服务器。我已按照文档 (http://identityserver4.readthedocs.io/) 中的说明进行操作,但它似乎缺少一些我在 IdentityServer3 中熟悉的功能。

我发现了这篇关于 IdentityServer4 的文章 (http://elemarjr.com/en/2016/04/18/learning-identityserver4-part-1-securing-an-webapi/),但文章中演示的一些内容似乎在最新版本中不可用(我猜那篇文章是针对旧版本编写的)。

我发现为了设置证书,而不是在 IdentityServerOptions 对象中设置它,我需要直接在 builder 对象上设置它。所以不要这样做:

var builder = services.AddIdentityServer(options =>
{
    options.SigningCertificate = certificate;
});

我现在这样做:

builder.SetSigningCredential(certificate);
  1. 我似乎找不到的是如何定义RequireSsl 属性。
  2. 如何设置IdentityServerFactory设置?

是否有地方包含更多关于 IdentityServer4 的文档?

【问题讨论】:

  • @leastprivilege 请阅读我问题中的第一句话。文档没有这些信息,也远没有记录完整的功能 - 它更多的是一步一步的说明,没有后续。
  • 好吧。这就是我们现在所拥有的。在这种情况下 - 检查源代码 ;)
  • @leastprivilege - 已经做到了 - 从我所见,源代码包含的选项比从 NuGet 下载时存在的选项要多 - 我正在尝试从源代码和参考进行编译,看看它是如何进行的。为什么 NuGet 不包含源代码中的所有内容?
  • @leastprivilege 我现在看到RequireSsl 已在源代码中被注释掉——有什么理由不再包含它吗?谢谢

标签: identityserver3 identityserver4


【解决方案1】:

IdentityServer4 构建在 MVC Core 之上,因此您可以使用 MVC 要求 https:

 public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            services.Configure<MvcOptions>(options =>
                        options.Filters.Add(new RequireHttpsAttribute()));
        }

【讨论】:

    猜你喜欢
    • 2018-06-24
    • 2019-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多