swisscom / simplesamlserviceprovider
Neos Flow 包,包含基于 SimpleSAMLphp 的 SAML 服务提供者。
2.0.1
2023-04-26 13:15 UTC
Requires
- neos/flow: ^6.0 || ^7.0
- simplesamlphp/simplesamlphp: ~1.17
This package is auto-updated.
Last update: 2024-08-30 08:35:29 UTC
README
Neos Flow SAML 认证包,包含基于 SimpleSAMLphp 的 SAML 服务提供者。
安装
首先,通过 composer 安装此包。这将 simplesamlphp/simplesamlphp 作为依赖项添加。
需要进行几个配置步骤
- 创建符号链接
Web/simplesamlphp -> ../Packages/Libraries/simplesamlphp/simplesamlphp/www
- 修补 Apache .htaccess 配置,以避免重写 simplesamlphp 并设置
SIMPLESAMLPHP_CONFIG_DIR
环境变量。 - 将示例配置结构复制到
SIMPLESAMLPHP_CONFIG_DIR
下的Configuration/SimpleSamlPhp/
这些步骤可以通过 composer post update 和 install 脚本执行。由于这高度依赖于设置,是否需要执行它,因此不再默认包含在此包中。要启用它,请将以下块添加到您的 composer.json 中
"extra": {
"neos/flow": {
"post-install": "Swisscom\\SimpleSamlServiceProvider\\Composer\\InstallerScripts::postUpdateAndInstall",
"post-update": "Swisscom\\SimpleSamlServiceProvider\\Composer\\InstallerScripts::postUpdateAndInstall"
}
}
示例设置
作为一个示例和测试目的,无服务器 SAML 身份提供者 Samling 可以配置如下
mkdir Configuration/SimpleSamlPhp/metadata
cp Packages/Libraries/simplesamlphp/simplesamlphp/metadata-templates/saml20-idp-remote.php Configuration/SimpleSamlPhp/metadata/
将以下元数据配置添加到 Configuration/SimpleSamlPhp/metadata/saml20-idp-remote.php
$metadata['https://fujifish.github.io/samling/samling.html'] = array(
/* Configuration options for the first IdP. */
'SingleSignOnService' => 'https://fujifish.github.io/samling/samling.html',
'certificate' => 'samling.pub'
);
证书已从 https://fujifish.github.io/samling/samling.html
复制到证书文件夹(见 config.php 中的 certdir
)。
集成
查看包的 Configuration/Settings.yaml
并根据需要配置入口点。
以下设置必须与 SimpleSAMLphp authsources.php
配置文件中配置的认证源匹配
Swisscom:
SimpleSamlServiceProvider:
authSource: 'default-sp'