mediawiki/ldap-provider

为MediaWiki提供了一种使用LDAP协议检索信息的机制

安装次数: 1,745

依赖者: 0

建议者: 0

安全性: 0

星级: 0

关注者: 19

分支: 2

类型: mediawiki-extension

2.0.9 2024-09-06 12:53 UTC

README

扩展: LDAPProvider

此扩展提供了一种连接到LDAP资源并对其运行查询的通用基础设施。

安装

您可以通过在MediaWiki安装目录中创建一个composer.local.json文件来安装此扩展,该文件包含以下内容(或者将其合并到您当前的composer.local.json中)

{
	"require": {
		"mediawiki/ldap-provider": "dev-master"
	},
	"config": {
		"prefer": "source"
	}
}

请注意,"prefer": "source"会导致composer在可能的情况下使用git仓库的克隆。

配置

在您只需要查询单个LDAP服务器的情况下,您只需指定您的LDAP服务器和json文件。默认情况下,LDAPProvider会在/etc/mediawiki/ldapprovider.json中查找此文件。如果LDAProvider已安装但找不到配置文件,则它将显示错误消息。

LDAPProvider包含一个指向包含的ldapprovider.json的示例配置文件的示例配置,该文件指向Forum Systems在线LDAP测试服务器。此文件和服务器(如果它在您的网络上可访问)将允许您在不影响生产系统或配置自己的LDAP服务器的情况下测试扩展。

ldapprovider.json的内容演示了最小配置

{
	"LDAP Demo": {
		"connection": {
				"server": "10.5.5.1",
				"user": "cn=read-only-admin,dc=example,dc=com",
				"pass": "password",
				"basedn": "dc=example,dc=com",
				"searchstring": "uid=USER-NAME,dc=example,dc=com"
		}
	}

其他配置也是可能的。

如果您只想尝试示例配置,只需将以下内容添加到您的LocalSettings.php中即可

$LDAPProviderDomainConfigs = "$IP/extensions/LDAPProvider/ldapprovider.json";

通过PHP进行替代配置

LocalSettings.php中添加 <syntaxhighlight lang="php"> $LDAPProviderDomainConfigProvider = function( $ldapConfig ) { return new \MediaWiki\Extension\LDAPProvider\DomainConfigProvider\InlinePHPArray( <a href="//Domain" target="_blank">name 'LDAP' => [ 'connection']</a> ); }; </syntaxhighlight>

测试

提供了测试。这些测试可以在您的MediaWiki安装目录中使用以下命令运行

$ ./tests/phpunit/phpunit.php extensions/LDAPProvider