使用 ComponentSpace.Saml2 ASP.NET Core 单独导出本地 idp/sp 元数据

问题描述 投票:0回答:1

我想导出 sp/idp 元数据,以便外部客户端可以从公共端点获取它。 asp.net(.net 框架)的

ComponentSpace.Saml2
有静态
MetadataExporter
类(docs),并且用法非常简单。但我在
ComponentSpace.Saml2
中为 asp.net core 遇到同样的问题。导出核心版本的仅 sp/仅 idp 元数据的正确方法是什么?

到目前为止我发现的选项:

  1. ConfigurationToMetadata.ExportAsync
    (docs) - 导出整个配置(本地 sp 和本地 idp,如果存在),因此您只能自己提取 sp/idp;
  2. MetadataExporter
    +
    ServiceProviderMetadataExporter
    /
    IdentityProviderMetadataExporter
    (docs) - 要求您从 idp 本地配置 + sp 合作伙伴配置/ sp 本地配置 + idp 合作伙伴配置中填充所有 saml 配置内容。

我不确定推荐哪一个。我还检查了文档,对元数据导出没有太大帮助。

谢谢您,如果问题或其格式看起来很奇怪,我们深表歉意(这是我的第一次尝试)

asp.net-core .net-core saml-2.0 x509certificate2 component-space
1个回答
0
投票

是的,根据您的需要有不同的方法。

  1. ConfigurationToMetadata.ExportAsync
    :当您拥有完整的 SAML 配置并且想要导出包括本地服务提供商 (SP) 和本地身份提供商 (IdP) 组件(如果存在)的整个元数据时,可以使用此方法。如果您的目标是仅导出 SP 或 IdP 元数据,则确实需要在导出后手动提取适当的部分。

  2. MetadataExporter
    ServiceProviderMetadataExporter
    IdentityProviderMetadataExporter
    结合使用:它们分别更具体地仅导出 SP 或 IdP 元数据。您通常会创建
    ServiceProviderMetadata
    IdentityProviderMetadata
    的实例,使用配置中的必要信息填充它们,然后使用导出器生成元数据 XML。

第二种方法允许对导出的内容进行更细粒度的控制。只是想在填充元数据时添加一件事,您需要考虑 SP 或 IdP 合作伙伴的预期 SAML 配置,这通常包括实体 ID、断言消费者服务 URL、单点注销服务 URL 等详细信息、证书等等。

© www.soinside.com 2019 - 2024. All rights reserved.