summaryrefslogtreecommitdiff
path: root/lib/plugins/authad
diff options
context:
space:
mode:
Diffstat (limited to 'lib/plugins/authad')
-rw-r--r--lib/plugins/authad/auth.php58
-rw-r--r--lib/plugins/authad/conf/default.php6
-rw-r--r--lib/plugins/authad/conf/metadata.php6
-rw-r--r--lib/plugins/authad/lang/bg/settings.php18
-rw-r--r--lib/plugins/authad/lang/cs/settings.php18
-rw-r--r--lib/plugins/authad/lang/de-informal/settings.php19
-rw-r--r--lib/plugins/authad/lang/de/settings.php19
-rw-r--r--lib/plugins/authad/lang/en/settings.php6
-rw-r--r--lib/plugins/authad/lang/eo/settings.php17
-rw-r--r--lib/plugins/authad/lang/fi/settings.php6
-rw-r--r--lib/plugins/authad/lang/fr/settings.php18
-rw-r--r--lib/plugins/authad/lang/ja/settings.php6
-rw-r--r--lib/plugins/authad/lang/ko/settings.php18
-rw-r--r--lib/plugins/authad/lang/lv/settings.php6
-rw-r--r--lib/plugins/authad/lang/nl/settings.php17
-rw-r--r--lib/plugins/authad/lang/pt-br/settings.php16
-rw-r--r--lib/plugins/authad/lang/ru/settings.php6
-rw-r--r--lib/plugins/authad/lang/zh-tw/settings.php18
-rw-r--r--lib/plugins/authad/lang/zh/settings.php4
-rw-r--r--lib/plugins/authad/plugin.info.txt2
20 files changed, 253 insertions, 31 deletions
diff --git a/lib/plugins/authad/auth.php b/lib/plugins/authad/auth.php
index 6c49eafbb..b6b5dd268 100644
--- a/lib/plugins/authad/auth.php
+++ b/lib/plugins/authad/auth.php
@@ -21,8 +21,8 @@ require_once(DOKU_PLUGIN.'authad/adLDAP/adLDAP.php');
*
* //optional:
* $conf['plugin']['authad']['sso'] = 1;
- * $conf['plugin']['authad']['ad_username'] = 'root';
- * $conf['plugin']['authad']['ad_password'] = 'pass';
+ * $conf['plugin']['authad']['admin_username'] = 'root';
+ * $conf['plugin']['authad']['admin_password'] = 'pass';
* $conf['plugin']['authad']['real_primarygroup'] = 1;
* $conf['plugin']['authad']['use_ssl'] = 1;
* $conf['plugin']['authad']['use_tls'] = 1;
@@ -111,6 +111,19 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin {
}
/**
+ * Load domain config on capability check
+ *
+ * @param string $cap
+ * @return bool
+ */
+ public function canDo($cap) {
+ //capabilities depend on config, which may change depending on domain
+ $domain = $this->_userDomain($_SERVER['REMOTE_USER']);
+ $this->_loadServerConfig($domain);
+ return parent::canDo($cap);
+ }
+
+ /**
* Check user+password [required auth function]
*
* Checks if the given user exists and the given
@@ -172,6 +185,7 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin {
// add additional fields to read
$fields = array_merge($fields, $this->conf['additional']);
$fields = array_unique($fields);
+ $fields = array_filter($fields);
//get info for given user
$result = $adldap->user()->info($this->_userName($user), $fields);
@@ -218,22 +232,24 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin {
// check expiry time
if($info['expires'] && $this->conf['expirywarn']){
- $timeleft = $adldap->user()->passwordExpiry($user); // returns unixtime
- $timeleft = round($timeleft/(24*60*60));
- $info['expiresin'] = $timeleft;
-
- // if this is the current user, warn him (once per request only)
- if(($_SERVER['REMOTE_USER'] == $user) &&
- ($timeleft <= $this->conf['expirywarn']) &&
- !$this->msgshown
- ) {
- $msg = sprintf($lang['authpwdexpire'], $timeleft);
- if($this->canDo('modPass')) {
- $url = wl($ID, array('do'=> 'profile'));
- $msg .= ' <a href="'.$url.'">'.$lang['btn_profile'].'</a>';
+ $expiry = $adldap->user()->passwordExpiry($user);
+ if(is_array($expiry)){
+ $info['expiresat'] = $expiry['expiryts'];
+ $info['expiresin'] = round(($info['expiresat'] - time())/(24*60*60));
+
+ // if this is the current user, warn him (once per request only)
+ if(($_SERVER['REMOTE_USER'] == $user) &&
+ ($info['expiresin'] <= $this->conf['expirywarn']) &&
+ !$this->msgshown
+ ) {
+ $msg = sprintf($lang['authpwdexpire'], $info['expiresin']);
+ if($this->canDo('modPass')) {
+ $url = wl($ID, array('do'=> 'profile'));
+ $msg .= ' <a href="'.$url.'">'.$lang['btn_profile'].'</a>';
+ }
+ msg($msg);
+ $this->msgshown = true;
}
- msg($msg);
- $this->msgshown = true;
}
}
@@ -462,6 +478,10 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin {
$opts['domain_controllers'] = array_map('trim', $opts['domain_controllers']);
$opts['domain_controllers'] = array_filter($opts['domain_controllers']);
+ // compatibility with old option name
+ if(empty($opts['admin_username']) && !empty($opts['ad_username'])) $opts['admin_username'] = $opts['ad_username'];
+ if(empty($opts['admin_password']) && !empty($opts['ad_password'])) $opts['admin_password'] = $opts['ad_password'];
+
// we can change the password if SSL is set
if($opts['use_ssl'] || $opts['use_tls']) {
$this->cando['modPass'] = true;
@@ -469,10 +489,10 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin {
$this->cando['modPass'] = false;
}
- if(isset($opts['ad_username']) && isset($opts['ad_password'])) {
+ if(!empty($opts['admin_username']) && !empty($opts['admin_password'])) {
$this->cando['getUsers'] = true;
} else {
- $this->cando['getUsers'] = true;
+ $this->cando['getUsers'] = false;
}
return $opts;
diff --git a/lib/plugins/authad/conf/default.php b/lib/plugins/authad/conf/default.php
index 05d6c328e..9274db209 100644
--- a/lib/plugins/authad/conf/default.php
+++ b/lib/plugins/authad/conf/default.php
@@ -4,11 +4,11 @@ $conf['account_suffix'] = '';
$conf['base_dn'] = '';
$conf['domain_controllers'] = '';
$conf['sso'] = 0;
-$conf['ad_username'] = '';
-$conf['ad_password'] = '';
+$conf['admin_username'] = '';
+$conf['admin_password'] = '';
$conf['real_primarygroup'] = 0;
$conf['use_ssl'] = 0;
$conf['use_tls'] = 0;
$conf['debug'] = 0;
$conf['expirywarn'] = 0;
-$conf['additional'] = ''; \ No newline at end of file
+$conf['additional'] = '';
diff --git a/lib/plugins/authad/conf/metadata.php b/lib/plugins/authad/conf/metadata.php
index dc251a108..fbc3f163c 100644
--- a/lib/plugins/authad/conf/metadata.php
+++ b/lib/plugins/authad/conf/metadata.php
@@ -4,11 +4,11 @@ $meta['account_suffix'] = array('string');
$meta['base_dn'] = array('string');
$meta['domain_controllers'] = array('string');
$meta['sso'] = array('onoff');
-$meta['ad_username'] = array('string');
-$meta['ad_password'] = array('password');
+$meta['admin_username'] = array('string');
+$meta['admin_password'] = array('password');
$meta['real_primarygroup'] = array('onoff');
$meta['use_ssl'] = array('onoff');
$meta['use_tls'] = array('onoff');
$meta['debug'] = array('onoff');
$meta['expirywarn'] = array('numeric', '_min'=>0);
-$meta['additional'] = array('string'); \ No newline at end of file
+$meta['additional'] = array('string');
diff --git a/lib/plugins/authad/lang/bg/settings.php b/lib/plugins/authad/lang/bg/settings.php
new file mode 100644
index 000000000..877810c4e
--- /dev/null
+++ b/lib/plugins/authad/lang/bg/settings.php
@@ -0,0 +1,18 @@
+<?php
+/**
+ * Bulgarian language file
+ *
+ * @author Kiril <neohidra@gmail.com>
+ */
+$lang['account_suffix'] = 'Наставка на акаунта Ви. Например <code>@някакъв.домейн.org</code>';
+$lang['base_dn'] = 'Вашият основен DN. Например <code>DC=моят,DC=домейн,DC=org</code>';
+$lang['domain_controllers'] = 'Domain controller списък, разделете сървърите със запетая. Например <code>сървър1.домейн.org,сървър2.домейн.org</code>';
+$lang['admin_username'] = 'Привилегирован Active Directory потребител с достъп до данните на останалите потребители. Не е задължително, но е необходимо за някои функционалности като изпращането на имейл за абонаменти.';
+$lang['admin_password'] = 'Паролата на горния потребител.';
+$lang['sso'] = 'Да се ползва ли еднократно вписване чрез Kerberos или NTLM?';
+$lang['real_primarygroup'] = 'Да се извлича ли истинската група вместо да се предполага "Domain Users" (по-бавно)';
+$lang['use_ssl'] = 'Ползване на SSL свързаност? Не отбелязвайте TLS (по-долу) ако включите опцията.';
+$lang['use_tls'] = 'Ползване на TLS свързаност? Не отбелязвайте SSL (по-горе) ако включите опцията.';
+$lang['debug'] = 'Показване на допълнителна debug информация при грешка?';
+$lang['expirywarn'] = 'Предупреждаване на потребителите Х дни преди изтичане валидността на паролата им. Въведете 0 за изключване.';
+$lang['additional'] = 'Списък с допълнителни AD атрибути за извличане от потребителските данни (разделяйте ги със запетая). Ползва се от няколко приставки.'; \ No newline at end of file
diff --git a/lib/plugins/authad/lang/cs/settings.php b/lib/plugins/authad/lang/cs/settings.php
new file mode 100644
index 000000000..71f83afda
--- /dev/null
+++ b/lib/plugins/authad/lang/cs/settings.php
@@ -0,0 +1,18 @@
+<?php
+/**
+ * Czech language file
+ *
+ * @author mkucera66@seznam.cz
+ */
+$lang['account_suffix'] = 'Přípona vašeho účtu, tj. <code>@moje.domena.org</code>';
+$lang['base_dn'] = 'Vaše doménové jméno DN. tj. <code>DC=moje,DC=domena,DC=org</code>';
+$lang['domain_controllers'] = 'Čárkou oddělenových kontrol=rů, tj. <code>srv1.domena.org,srv2.domena.org</code>';
+$lang['admin_username'] = 'Privilegovaný uživatel Active Directory s přístupem ke všem datům. Volitelně, ale nutné pro určité akce typu zasílání mailů.';
+$lang['admin_password'] = 'Heslo uživatele výše';
+$lang['sso'] = 'Chcete přihlašování Single-Sign-On pomocí jádra Kerberos nebo NTLM ( autentizační protokol obvyklý ve Windows)?';
+$lang['real_primarygroup'] = 'Má být zjištěna primární skupina namísto vyhodnocení hodnoty "doménoví uživatelé" (pomalejší)';
+$lang['use_ssl'] = 'Použít spojení SSL? Pokud ano, nevyužívejte TLS níže.';
+$lang['use_tls'] = 'Použít spojení TLS? Pokud ano, nevyužívejte SSL výše.';
+$lang['debug'] = 'Zobrazit dodatečné debugovací výstupy při chybách?';
+$lang['expirywarn'] = 'Dny mezi varováním o vyprčšení hesla uživatele a jeho vypršením. 0 znaší vypnuto.';
+$lang['additional'] = 'Čárkou oddělený seznam dodatečných atributů získávaných z uživatelských dat. Využito některými pluginy.';
diff --git a/lib/plugins/authad/lang/de-informal/settings.php b/lib/plugins/authad/lang/de-informal/settings.php
new file mode 100644
index 000000000..4d0b93e5d
--- /dev/null
+++ b/lib/plugins/authad/lang/de-informal/settings.php
@@ -0,0 +1,19 @@
+<?php
+/**
+ * German (informal) language file
+ *
+ * @author Frank Loizzi <contact@software.bacal.de>
+ * @author Matthias Schulte <dokuwiki@lupo49.de>
+ */
+$lang['account_suffix'] = 'Dein Account-Suffix. Z.B. <code>@my.domain.org</code>';
+$lang['base_dn'] = 'Dein Base-DN. Z.B. <code>DC=my,DC=domain,DC=org</code>';
+$lang['domain_controllers'] = 'Eine Komma-separierte Liste von Domänen-Controllern. Z.B. <code>srv1.domain.org,srv2.domain.org</code>';
+$lang['admin_username'] = 'Ein privilegierter Active Directory-Benutzer mit Zugriff zu allen anderen Benutzerdaten. Optional, aber wird benötigt für Aktionen wie z. B. dass Senden von Benachrichtigungs-Mails.';
+$lang['admin_password'] = 'Das Passwort des obigen Benutzers.';
+$lang['sso'] = 'Soll Single-Sign-On via Kerberos oder NTLM benutzt werden?';
+$lang['real_primarygroup'] = 'Soll die echte primäre Gruppe aufgelöst werden anstelle der Annahme "Domain Users" (langsamer)';
+$lang['use_ssl'] = 'SSL-Verbindung benutzen? Falls ja, TLS unterhalb nicht aktivieren.';
+$lang['use_tls'] = 'TLS-Verbindung benutzen? Falls ja, SSL oberhalb nicht aktivieren.';
+$lang['debug'] = 'Zusätzliche Debug-Informationen bei Fehlern anzeigen?';
+$lang['expirywarn'] = 'Tage im Voraus um Benutzer über ablaufende Passwörter zu informieren. 0 zum Ausschalten.';
+$lang['additional'] = 'Eine Komma-separierte Liste von zusätzlichen AD-Attributen, die von den Benutzerobjekten abgefragt werden. Wird von einigen Plugins benutzt.';
diff --git a/lib/plugins/authad/lang/de/settings.php b/lib/plugins/authad/lang/de/settings.php
new file mode 100644
index 000000000..f4e86dedd
--- /dev/null
+++ b/lib/plugins/authad/lang/de/settings.php
@@ -0,0 +1,19 @@
+<?php
+/**
+ * German (informal) language file
+ *
+ * @author Frank Loizzi <contact@software.bacal.de>
+ * @author Matthias Schulte <dokuwiki@lupo49.de>
+ */
+$lang['account_suffix'] = 'Ihr Account-Suffix. Z. B. <code>@my.domain.org</code>';
+$lang['base_dn'] = 'Ihr Base-DN. Z. B. <code>DC=my,DC=domain,DC=org</code>';
+$lang['domain_controllers'] = 'Eine Komma-separierte Liste von Domänen-Controllern. Z. B. <code>srv1.domain.org,srv2.domain.org</code>';
+$lang['admin_username'] = 'Ein priviligierter Active Directory-Benutzer mit Zugriff zu allen anderen Benutzerdaten. Optional, aber wird benötigt für Aktionen wie z. B. dass Senden von Benachrichtigungs-Mails.';
+$lang['admin_password'] = 'Das Passwort des obigen Benutzers.';
+$lang['sso'] = 'Soll Single-Sign-On via Kerberos oder NTLM benutzt werden?';
+$lang['real_primarygroup'] = 'Soll die echte primäre Gruppe aufgelöst werden anstelle der Annahme "Domain Users" (langsamer)';
+$lang['use_ssl'] = 'SSL-Verbindung benutzen? Falls ja, TLS unterhalb nicht aktivieren.';
+$lang['use_tls'] = 'TLS-Verbindung benutzen? Falls ja, SSL oberhalb nicht aktivieren.';
+$lang['debug'] = 'Zusätzliche Debug-Informationen bei Fehlern anzeigen?';
+$lang['expirywarn'] = 'Tage im Voraus um Benutzer über ablaufende Passwörter zu informieren. 0 zum Ausschalten.';
+$lang['additional'] = 'Eine Komma-separierte Liste von zusätzlichen AD-Attributen, die von den Benutzerobjekten abgefragt werden. Wird von einigen Plugins benutzt.';
diff --git a/lib/plugins/authad/lang/en/settings.php b/lib/plugins/authad/lang/en/settings.php
index 41176847a..aff49550b 100644
--- a/lib/plugins/authad/lang/en/settings.php
+++ b/lib/plugins/authad/lang/en/settings.php
@@ -3,12 +3,12 @@
$lang['account_suffix'] = 'Your account suffix. Eg. <code>@my.domain.org</code>';
$lang['base_dn'] = 'Your base DN. Eg. <code>DC=my,DC=domain,DC=org</code>';
$lang['domain_controllers'] = 'A comma separated list of Domain controllers. Eg. <code>srv1.domain.org,srv2.domain.org</code>';
-$lang['ad_username'] = 'A privileged Active Directory user with access to all other user\'s data. Optional, but needed for certain actions like sending subscription mails.';
-$lang['ad_password'] = 'The password of the above user.';
+$lang['admin_username'] = 'A privileged Active Directory user with access to all other user\'s data. Optional, but needed for certain actions like sending subscription mails.';
+$lang['admin_password'] = 'The password of the above user.';
$lang['sso'] = 'Should Single-Sign-On via Kerberos or NTLM be used?';
$lang['real_primarygroup'] = 'Should the real primary group be resolved instead of assuming "Domain Users" (slower)';
$lang['use_ssl'] = 'Use SSL connection? If used, do not enable TLS below.';
$lang['use_tls'] = 'Use TLS connection? If used, do not enable SSL above.';
$lang['debug'] = 'Display additional debugging output on errors?';
$lang['expirywarn'] = 'Days in advance to warn user about expiring password. 0 to disable.';
-$lang['additional'] = 'A comma separated list of additional AD attributes to fetch from user data. Used by some plugins.'; \ No newline at end of file
+$lang['additional'] = 'A comma separated list of additional AD attributes to fetch from user data. Used by some plugins.';
diff --git a/lib/plugins/authad/lang/eo/settings.php b/lib/plugins/authad/lang/eo/settings.php
new file mode 100644
index 000000000..8bd34b439
--- /dev/null
+++ b/lib/plugins/authad/lang/eo/settings.php
@@ -0,0 +1,17 @@
+<?php
+/**
+ * Esperanto language file
+ *
+ */
+$lang['account_suffix'] = 'Via konto-aldonaĵo, ekz. <code>@mia.domajno.lando</code>';
+$lang['base_dn'] = 'Via baza DN, ekz. <code>DC=mia,DC=domajno,DC=lando</code>';
+$lang['domain_controllers'] = 'Komodisigita listo de domajno-serviloj, ekz. <code>srv1.domajno.lando,srv2.domajno.lando</code>';
+$lang['admin_username'] = 'Privilegiita Aktiv-Dosieruja uzanto kun aliro al ĉiuj uzantaj datumoj. Libervole, sed necesa por iuj agadoj kiel sendi abonan retpoŝton.';
+$lang['admin_password'] = 'La pasvorto de tiu uzanto.';
+$lang['sso'] = 'Ĉu uzi Sola Aliro tra Kerberos aŭ NTLM?';
+$lang['real_primarygroup'] = 'Ĉu trovi la veran ĉefan grupon anstataŭ supozi "Domajnuzantoj" (pli malrapida)?';
+$lang['use_ssl'] = 'Ĉu uzi SSL-konekton? Se jes, ne aktivigu TLS sube.';
+$lang['use_tls'] = 'Ĉu uzi TLS-konekton? Se jes, ne aktivigu SSL supre.';
+$lang['debug'] = 'Ĉu montri aldonajn informojn dum eraroj?';
+$lang['expirywarn'] = 'Tagoj da antaŭaverto pri malvalidiĝonta pasvorto. 0 por malebligi.';
+$lang['additional'] = 'Komodisigita listo de aldonaj AD-atributoj por preni el uzantaj datumoj. Uzita de iuj kromaĵoj.';
diff --git a/lib/plugins/authad/lang/fi/settings.php b/lib/plugins/authad/lang/fi/settings.php
new file mode 100644
index 000000000..d3aa13e07
--- /dev/null
+++ b/lib/plugins/authad/lang/fi/settings.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Finnish language file
+ *
+ * @author Otto Vainio <otto@valjakko.net>
+ */
diff --git a/lib/plugins/authad/lang/fr/settings.php b/lib/plugins/authad/lang/fr/settings.php
new file mode 100644
index 000000000..5480a3d44
--- /dev/null
+++ b/lib/plugins/authad/lang/fr/settings.php
@@ -0,0 +1,18 @@
+<?php
+/**
+ * French language file
+ *
+ * @author Bruno Veilleux <bruno.vey@gmail.com>
+ */
+$lang['account_suffix'] = 'Le suffixe de votre compte. Ex.: <code>@mon.domaine.org</code>';
+$lang['base_dn'] = 'Votre nom de domaine de base. <code>DC=mon,DC=domaine,DC=org</code>';
+$lang['domain_controllers'] = 'Une liste de contrôleurs de domaine séparés par des virgules. Ex.: <code>srv1.domaine.org,srv2.domaine.org</code>';
+$lang['admin_username'] = 'Un utilisateur Active Directory avec accès aux données de tous les autres utilisateurs. Facultatif, mais nécessaire pour certaines actions telles que l\'envoi de courriels d\'abonnement.';
+$lang['admin_password'] = 'Le mot de passe de l\'utilisateur ci-dessus.';
+$lang['sso'] = 'Est-ce que la connexion unique (Single-Sign-On) par Kerberos ou NTLM doit être utilisée?';
+$lang['real_primarygroup'] = 'Est-ce que le véritable groupe principal doit être résolu au lieu de présumer "Domain Users" (plus lent)?';
+$lang['use_ssl'] = 'Utiliser une connexion SSL? Si utilisée, n\'activez pas TLS ci-dessous.';
+$lang['use_tls'] = 'Utiliser une connexion TLS? Si utilisée, n\'activez pas SSL ci-dessus.';
+$lang['debug'] = 'Afficher des informations de débogage supplémentaires pour les erreurs?';
+$lang['expirywarn'] = 'Jours d\'avance pour l\'avertissement envoyé aux utilisateurs lorsque leur mot de passe va expirer. 0 pour désactiver.';
+$lang['additional'] = 'Une liste séparée par des virgules d\'attributs AD supplémentaires à récupérer dans les données utilisateur. Utilisée par certains modules.';
diff --git a/lib/plugins/authad/lang/ja/settings.php b/lib/plugins/authad/lang/ja/settings.php
new file mode 100644
index 000000000..fdc6fc434
--- /dev/null
+++ b/lib/plugins/authad/lang/ja/settings.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Japanese language file
+ *
+ * @author Satoshi Sahara <sahara.satoshi@gmail.com>
+ */
diff --git a/lib/plugins/authad/lang/ko/settings.php b/lib/plugins/authad/lang/ko/settings.php
new file mode 100644
index 000000000..f2bf52681
--- /dev/null
+++ b/lib/plugins/authad/lang/ko/settings.php
@@ -0,0 +1,18 @@
+<?php
+/**
+ * Korean language file
+ *
+ * @author Myeongjin <aranet100@gmail.com>
+ */
+$lang['account_suffix'] = '계정 접미어. 예를 들어 <code>@my.domain.org</code>';
+$lang['base_dn'] = '기본 DN. 예를 들어 <code>DC=my,DC=domain,DC=org</code>';
+$lang['domain_controllers'] = '도메인 컨트롤러의 쉼표로 구분한 목록. 예를 들어 <code>srv1.domain.org,srv2.domain.org</code>';
+$lang['admin_username'] = '다른 모든 사용자의 데이터에 접근할 수 있는 권한이 있는 Active Directory 사용자. 선택적이지만 구독 메일을 보내는 등의 특정 작업에 필요합니다.';
+$lang['admin_password'] = '위 사용자의 비밀번호.';
+$lang['sso'] = 'Kerberos나 NTLM을 통해 Single-Sign-On을 사용해야 합니까?';
+$lang['real_primarygroup'] = '실제 기본 그룹은 "도메인 사용자"를 가정하는 대신 해결될 것입니다 (느림)';
+$lang['use_ssl'] = 'SSL 연결을 사용합니까? 사용한다면 아래 TLS을 활성화하지 마세요.';
+$lang['use_tls'] = 'TLS 연결을 사용합니까? 사용한다면 위 SSL을 활성화하지 마세요.';
+$lang['debug'] = '오류에 대한 추가적인 디버그 정보를 보이겠습니까?';
+$lang['expirywarn'] = '미리 비밀번호 만료를 사용자에게 경고할 날짜. 0일 경우 비활성화합니다.';
+$lang['additional'] = '사용자 데이터에서 가져올 추가적인 AD 속성의 쉼표로 구분한 목록. 일부 플러그인이 사용합니다.';
diff --git a/lib/plugins/authad/lang/lv/settings.php b/lib/plugins/authad/lang/lv/settings.php
new file mode 100644
index 000000000..ced5dabf8
--- /dev/null
+++ b/lib/plugins/authad/lang/lv/settings.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Latvian, Lettish language file
+ *
+ * @author Aivars Miška <allefm@gmail.com>
+ */
diff --git a/lib/plugins/authad/lang/nl/settings.php b/lib/plugins/authad/lang/nl/settings.php
new file mode 100644
index 000000000..933566d18
--- /dev/null
+++ b/lib/plugins/authad/lang/nl/settings.php
@@ -0,0 +1,17 @@
+<?php
+/**
+ * Dutch language file
+ *
+ */
+$lang['account_suffix'] = 'Je account domeinnaam. Bijv <code>@mijn.domein.org</code>';
+$lang['base_dn'] = 'Je basis DN. Bijv. <code>DC=mijn,DC=domein,DC=org</code>';
+$lang['domain_controllers'] = 'Eeen commagesepareerde lijst van domeinservers. Bijv. <code>srv1.domein.org,srv2.domein.org</code>';
+$lang['admin_username'] = 'Een geprivilegeerde Active Directory gebruiker die bij alle gebruikersgegevens kan komen. Optioneel, maar kan nodig zijn voor bepaalde acties, zoals het versturen van abonnementsmailtjes.';
+$lang['admin_password'] = 'Het wachtwoord van bovernvermelde gebruiker.';
+$lang['sso'] = 'Wordt voor Single-Sign-on Kerberos of NTLM gebruikt?';
+$lang['real_primarygroup'] = 'Moet de echte primaire groep worden opgezocht in plaats van het aannemen van "Domeingebruikers" (langzamer)';
+$lang['use_ssl'] = 'SSL verbinding gebruiken? Zo ja, gebruik dan TLS hieronder niet.';
+$lang['use_tls'] = 'TLS verbinding gebruiken? Zo ja, activeer dan niet de SSL verbinding hierboven.';
+$lang['debug'] = 'Aanvullende debug informatie tonen bij fouten?';
+$lang['expirywarn'] = 'Waarschuwingstermijn voor vervallen wachtwoord. 0 om te deactiveren.';
+$lang['additional'] = 'Commagesepareerde lijst van aanvullend uit AD op te halen attributen. Gebruikt door sommige plugins.';
diff --git a/lib/plugins/authad/lang/pt-br/settings.php b/lib/plugins/authad/lang/pt-br/settings.php
new file mode 100644
index 000000000..29f8db4ad
--- /dev/null
+++ b/lib/plugins/authad/lang/pt-br/settings.php
@@ -0,0 +1,16 @@
+<?php
+/**
+ * Brazilian Portuguese language file
+ *
+ * @author Victor Westmann <victor.westmann@gmail.com>
+ */
+$lang['account_suffix'] = 'Sufixo de sua conta. Eg. <code>@meu.domínio.org</code>';
+$lang['base_dn'] = 'Sua base DN. Eg. <code>DC=meu,DC=domínio,DC=org</code>';
+$lang['domain_controllers'] = 'Uma lista de controles de domínios separada por vírgulas. Eg. <code>srv1.domínio.org,srv2.domínio.org</code>';
+$lang['admin_password'] = 'A senha do usuário acima.';
+$lang['sso'] = 'Usar Single-Sign-On através do Kerberos ou NTLM?';
+$lang['use_ssl'] = 'Usar conexão SSL? Se usar, não habilitar TLS abaixo.';
+$lang['use_tls'] = 'Usar conexão TLS? se usar, não habilitar SSL acima.';
+$lang['debug'] = 'Mostrar saída adicional de depuração em mensagens de erros?';
+$lang['expirywarn'] = 'Dias com antecedência para avisar o usuário de uma senha que vai expirar. 0 para desabilitar.';
+$lang['additional'] = 'Uma lista separada de vírgulas de atributos adicionais AD para pegar dados de usuários. Usados por alguns plugins.';
diff --git a/lib/plugins/authad/lang/ru/settings.php b/lib/plugins/authad/lang/ru/settings.php
new file mode 100644
index 000000000..4c394080e
--- /dev/null
+++ b/lib/plugins/authad/lang/ru/settings.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Russian language file
+ *
+ * @author Ivan I. Udovichenko (sendtome@mymailbox.pp.ua)
+ */
diff --git a/lib/plugins/authad/lang/zh-tw/settings.php b/lib/plugins/authad/lang/zh-tw/settings.php
new file mode 100644
index 000000000..c46e5f96f
--- /dev/null
+++ b/lib/plugins/authad/lang/zh-tw/settings.php
@@ -0,0 +1,18 @@
+<?php
+/**
+ * Chinese Traditional language file
+ *
+ * @author syaoranhinata@gmail.com
+ */
+$lang['account_suffix'] = '您的帳號後綴。如: <code>@my.domain.org</code>';
+$lang['base_dn'] = '您的基本識別名。如: <code>DC=my,DC=domain,DC=org</code>';
+$lang['domain_controllers'] = '以逗號分隔的域名控制器列表。如: <code>srv1.domain.org,srv2.domain.org</code>';
+$lang['admin_username'] = 'Active Directory 的特權使用者,可以查看所有使用者的數據。(非必要,但對發送訂閱郵件等活動來說,這是必須的。)';
+$lang['admin_password'] = '上述使用者的密碼。';
+$lang['sso'] = '是否使用 Kerberos 或 NTLM 的單一登入系統 (Single-Sign-On)?';
+$lang['real_primarygroup'] = '是否視作真正的主要群組,而不是假設為網域使用者 (比較慢)';
+$lang['use_ssl'] = '使用 SSL 連接嗎?如果要使用,請不要啟用下方的 TLS。';
+$lang['use_tls'] = '使用 TLS 連接嗎?如果要使用,請不要啟用上方的 SSL。';
+$lang['debug'] = '有錯誤時,顯示額外除錯資訊嗎?';
+$lang['expirywarn'] = '提前多少天警告使用者密碼即將到期。輸入0表示停用。';
+$lang['additional'] = '從使用者數據中取得額外 AD 屬性列表,以供某些附加元件使用。列表以逗號分隔。';
diff --git a/lib/plugins/authad/lang/zh/settings.php b/lib/plugins/authad/lang/zh/settings.php
index 9fd3c4e35..0ad8d4e4f 100644
--- a/lib/plugins/authad/lang/zh/settings.php
+++ b/lib/plugins/authad/lang/zh/settings.php
@@ -7,8 +7,8 @@
$lang['account_suffix'] = '您的账户后缀。例如 <code>@my.domain.org</code>';
$lang['base_dn'] = '您的基本分辨名。例如 <code>DC=my,DC=domain,DC=org</code>';
$lang['domain_controllers'] = '逗号分隔的域名控制器列表。例如 <code>srv1.domain.org,srv2.domain.org</code>';
-$lang['ad_username'] = '一个活动目录的特权用户,可以查看其他所有用户的数据。可选,但对某些活动例如发送订阅邮件是必须的。';
-$lang['ad_password'] = '上述用户的密码。';
+$lang['admin_username'] = '一个活动目录的特权用户,可以查看其他所有用户的数据。可选,但对某些活动例如发送订阅邮件是必须的。';
+$lang['admin_password'] = '上述用户的密码。';
$lang['sso'] = '是否使用经由 Kerberos 和 NTLM 的 Single-Sign-On?';
$lang['real_primarygroup'] = ' 是否解析真实的主要组,而不是假设为“域用户” (较慢)';
$lang['use_ssl'] = '使用 SSL 连接?如果是,不要激活下面的 TLS。';
diff --git a/lib/plugins/authad/plugin.info.txt b/lib/plugins/authad/plugin.info.txt
index f02b5118c..996813bc5 100644
--- a/lib/plugins/authad/plugin.info.txt
+++ b/lib/plugins/authad/plugin.info.txt
@@ -1,7 +1,7 @@
base authad
author Andreas Gohr
email andi@splitbrain.org
-date 2012-11-09
+date 2013-04-25
name Active Directory auth plugin
desc Provides authentication against a Microsoft Active Directory
url http://www.dokuwiki.org/plugin:authad