diff options
Diffstat (limited to 'lib/public/LDAP/ILDAPProvider.php')
-rw-r--r-- | lib/public/LDAP/ILDAPProvider.php | 50 |
1 files changed, 49 insertions, 1 deletions
diff --git a/lib/public/LDAP/ILDAPProvider.php b/lib/public/LDAP/ILDAPProvider.php index 3c07dfcbe8e..03ac54d01e3 100644 --- a/lib/public/LDAP/ILDAPProvider.php +++ b/lib/public/LDAP/ILDAPProvider.php @@ -3,6 +3,10 @@ * * @copyright Copyright (c) 2016, Roger Szabo (roger.szabo@web.de) * + * @author Roger Szabo <roger.szabo@web.de> + * @author Vinicius Brand <vinicius@eita.org.br> + * @author Daniel Tygel <dtygel@eita.org.br> + * * @license GNU AGPL version 3 or any later version * * This program is free software: you can redistribute it and/or modify @@ -36,7 +40,15 @@ interface ILDAPProvider { * @since 11.0.0 */ public function getUserDN($uid); - + + /** + * Translate a group id to LDAP DN. + * @param string $gid group id + * @return string + * @since 13.0.0 + */ + public function getGroupDN($gid); + /** * Translate a LDAP DN to an internal user name. * @param string $dn LDAP DN @@ -69,6 +81,14 @@ interface ILDAPProvider { * @since 11.0.0 */ public function getLDAPConnection($uid); + + /** + * Return a new LDAP connection resource for the specified group. + * @param string $gid group id + * @return resource of the LDAP connection + * @since 13.0.0 + */ + public function getGroupLDAPConnection($gid); /** * Get the LDAP base for users. @@ -102,4 +122,32 @@ interface ILDAPProvider { * @since 11.0.0 */ public function clearCache($uid); + + /** + * Get the LDAP attribute name for the user's display name + * @param string $uid user id + * @return string the display name field + * @throws \Exception if user id was not found in LDAP + * @since 12.0.0 + */ + public function getLDAPDisplayNameField($uid); + + /** + * Get the LDAP attribute name for the email + * @param string $uid user id + * @return string the email field + * @throws \Exception if user id was not found in LDAP + * @since 12.0.0 + */ + public function getLDAPEmailField($uid); + + /** + * Get the LDAP attribute name for the type of association betweeen users and groups + * @param string $gid group id + * @return string the configuration, one of: 'memberUid', 'uniqueMember', 'member', 'gidNumber' + * @throws \Exception if group id was not found in LDAP + * @since 13.0.0 + */ + public function getLDAPGroupMemberAssoc($gid); + } |