Menu

## LdapDirectoryService
in package

LdapDirectoryService.php : 21

Service zum Lesen von Objekten aus dem Active Directory.

Aktueller Umfang:

- Liste von Benutzern (sAMAccountName, displayName, mail)
- Liste von Gruppen (sAMAccountName, cn, description)

Technische Details:

- Verwendet ein technisches Konto (bind_dn + bind_password) für Lesezugriffe
- Nutzt LdapConnectionHelper zum Aufbau der Verbindung

### Table of Contents

#### Properties

$config : array<string, mixed>
$connectionHelper : LdapConnectionHelper

#### Methods

__construct() : mixed
getGroups() : array<int, array<string, string>>
  Liefert eine Liste von Gruppen aus dem AD.
getUsers() : array<int, array<string, string>>
  Liefert eine Liste von Benutzern aus dem AD.
connect() : resource
  Stellt eine LDAP-Verbindung her und bindet sich mit dem technischen Konto.

### Properties

#### $config

LdapDirectoryService.php : 24
`private array<string, mixed> $config`

LDAP-Konfiguration (inkl. base_dn, bind_dn, bind_password)

#### $connectionHelper

LdapDirectoryService.php : 27
`private LdapConnectionHelper $connectionHelper`

Zentrale Hilfsklasse für den Aufbau von LDAP-Verbindungen

### Methods

#### __construct()

LdapDirectoryService.php : 32
`public __construct(array<string, mixed> $ldapConfig) : mixed`

##### Parameters

$ldapConfig : array<string, mixed>

  Teilbereich "ldap" aus der config.php

#### getGroups()

LdapDirectoryService.php : 153

Liefert eine Liste von Gruppen aus dem AD.

`public getGroups() : array<int, array<string, string>>`

##### Tags

throws
  RuntimeException

  bei Konfigurations- oder Verbindungsproblemen

##### Return values

array<int, array<string, string>> —

Liste von Gruppen-Datensätzen

#### getUsers()

LdapDirectoryService.php : 90

Liefert eine Liste von Benutzern aus dem AD.

`public getUsers() : array<int, array<string, string>>`

##### Tags

throws
  RuntimeException

  bei Konfigurations- oder Verbindungsproblemen

##### Return values

array<int, array<string, string>> —

Liste von Benutzer-Datensätzen [ [ 'samaccountname' => 'user1', 'displayname' => 'User Eins', 'mail' => 'user1@example.local', ], ... ]

#### connect()

LdapDirectoryService.php : 49

Stellt eine LDAP-Verbindung her und bindet sich mit dem technischen Konto.

`private connect() : resource`

##### Tags

throws
  RuntimeException

  wenn Bind-Daten fehlen oder der Bind fehlschlägt

##### Return values

resource —

LDAP-Verbindungs-Handle

## Search results