以编程方式设置simplesamlphp的元数据


Programmatically set metadata for simplesamlphp

我使用SimpleSAMLphp进行单点登录。默认设置有一个authsources.php文件,该文件保存$config数据,然后是元数据目录中的一堆文件,这些文件为每个IdP设置$metadata。我不希望这些信息被保存在静态文件中。我更喜欢以编程方式设置$config和$metadata。

我已经想好了如何进行$config。这很简单。只需创建要使用的$config数组,然后将其传递给构造函数中的SimpleSAML_Configuration。Bada bing。Bada繁荣。完成。

但是,我找不到任何允许您手动设置$metadata的内容。SimpleSAMLphp有我缺少的这样一个实用程序吗?基本上,我想要这样的东西。。。

$metadata = array(/* some data here */);
$util = new SomeMetaDataObject();
$util->setMetaData($metadata);
// Then do the whole Auth thing after this.

当我查看它时,这是不可能的,因为所有配置都是从文件静态加载的,不可能通过编程覆盖。不确定这是否被一些新版本所改变。但这就是我开始编写轻量级saml-php库和saml-sp-symfony捆绑包的原因——这是一个在php中更可配置和可重用的saml库。请尝试一下,非常感谢您的反馈和改进方法。