有人可以解释Saml2身份验证过程吗?我已经为 ckan 安装了 ckanext-saml2 扩展。我在登录表单中有一个额外的按钮,称为使用 sso 登录。但我没有任何 sp 元数据 (sp.xml(。我也有 idp.xml但我应该写什么到这个文件。你对这些文件有任何想法吗?我应该创建一个 sp.xml 文件吗?我还应该更改 idp.xml 文件吗?当我点击按钮时,我应该在哪里阅读用户信息?
您不应该更改idp.xml。
基本上,ckanext-saml2用于允许用户从其他地方进入CKAN门户,而不仅仅是CKAN。
为此,您需要一个idp.xml和sp.xml文件。
idp.xml- 包含指向所有用户已存在的远程门户的唯一路径的文件(通常标记为实体 ID(和 X509 证书。
sp.xml- 由 CKAN 门户生成的文件,其数据与idp.xml几乎相同。
这两个文件都用于允许用户从其他门户登录CKAN。换句话说,sp.xml文件提供给 IdP(身份提供程序(,idp.xml文件提供给将使用它的 CKAN 门户(服务提供商(。
根据 ckanext-saml2 文档,所有配置都应在ckanext/saml2/config/sp_config.py文件中完成。配置应包括来自idp.xml的实体 IDURL、idp的路径.xml文件、日志的路径、有关 CKAN 门户的数据、应从响应中获取的字段、它们的映射等......
根据文档,配置完成后,您将能够使用python make_metadata.py sp_config.py从sp_config.py文件生成sp.xml。
登录页面上的按钮应将您重定向到 IdP 登录页面,您应在其中登录并重定向回 CKAN。如果 CKAN 门户上不存在用户,CKAN 将使用 IdP 的响应自动为您创建一个用户。
有关更多详细信息,可以查看Datashades SAML2 CKAN存储库或原始存储库一次。
如果你不确定SSO,那么你需要好好阅读一下。
您能告诉我们您与哪种 IdP 集成吗?广告FS?
你的sp.xml应该由ckanext-saml2扩展生成,看看他们的git中心页面。然后,您需要上传 sp.xml(sp 元数据到您的 IdP(