<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect1 id="zend.ldap.api" xmlns:xi="http://www.w3.org/2001/XInclude">
    <title>API Übersicht</title>

    <sect2 id="zend.ldap.api.configuration">
        <title>Konfiguration und Optionen</title>

        <para>
            Die <classname>Zend_Ldap</classname> Komponente akzeptiert ein Array von Optionen die
            entweder im Constructor übergeben werden oder durch die
            <methodname>setOptions()</methodname> Methode. Die erlaubten Optionen sind folgende:
        </para>

        <table id="zend.ldap.api.configuration.table">
            <title>Zend_Ldap Optionen</title>

            <tgroup cols="2">
                <thead>
                    <row>
                        <entry>Name</entry>
                        <entry>Beschreibung</entry>
                    </row>
                </thead>

                <tbody>
                    <row>
                        <entry><property>host</property></entry>

                        <entry>
                            Der Standard Hostname des <acronym>LDAP</acronym> Servers wenn bei
                            <methodname>connect()</methodname> keiner angegeben wurde (kann auch
                            verwendet werden wenn versucht wird Benutzernamen in
                            <methodname>bind()</methodname> zu kanonisieren).
                        </entry>
                    </row>

                    <row>
                        <entry><property>port</property></entry>

                        <entry>
                            Standard Port des <acronym>LDAP</acronym> Servers wenn bei
                            <methodname>connect()</methodname> keiner angegeben wurde.
                        </entry>
                    </row>

                    <row>
                        <entry><property>useStartTls</property></entry>

                        <entry>
                            Ob der <acronym>LDAP</acronym> Client <acronym>TLS</acronym> (auch als
                            <acronym>SSLv2</acronym> bekannt) verschlüsselten Transport verwenden
                            soll oder nicht. Der Wert <constant>TRUE</constant> wird in
                            Produktionsumgebungen stärkstens empfohlen um zu verhindern das
                            Passwörter im Klartext übermittelt werden. Der Standardwert ist
                            <constant>FALSE</constant>, da Server oft ein separat installiertes
                            Zertifikat nach der Installation benötigen. Die Optionen
                            <emphasis>useSsl</emphasis> und <emphasis>useStartTls</emphasis> sind
                            gegenseitig exklusiv. Die Option <emphasis>useStartTls</emphasis>
                            sollte gegenüber <emphasis>useSsl</emphasis> bevorzugt verwendet werden
                            aber nicht alle Server unterstützen diesen neueren Mechanismus.
                        </entry>
                    </row>

                    <row>
                        <entry><property>useSsl</property></entry>

                        <entry>
                            Ob der <acronym>LDAP</acronym> Client einen <acronym>SSL</acronym>
                            verschlüsselten Transport verwenden soll. Die Optionen
                            <emphasis>useSsl</emphasis> und <emphasis>useStartTls</emphasis>
                            sind gegenseitig exklusiv.
                        </entry>
                    </row>

                    <row>
                        <entry><property>username</property></entry>

                        <entry>
                            Der Standard Benutzername des Accounts. Einige Server erwarten Ihn
                            in DN Form. Er muß in DN Form angegeben werden wenn der
                            <acronym>LDAP</acronym> Server einen DN für das Binden benötigt und
                            das Binden mit einem einfachen Benutzernamen möglich sein soll.
                        </entry>
                    </row>

                    <row>
                        <entry><property>password</property></entry>

                        <entry>
                            Das Standard Passwort des Accounts (nur mit dem obigen Benutzernamen
                            verwendet).
                        </entry>
                    </row>

                    <row>
                        <entry><property>bindRequiresDn</property></entry>

                        <entry>
                            Ist er <constant>TRUE</constant>, dann instruiert er
                            <classname>Zend_Ldap</classname> den DN für den Account zu empfangen
                            der für das Binden des Benutzernamens verwendet wird wenn dieser nicht
                            bereits in DN Form ist. Der Standardwert ist
                            <constant>FALSE</constant>.
                        </entry>
                    </row>

                    <row>
                        <entry><property>baseDn</property></entry>

                        <entry>
                            Der Standard Basis DN der für das Suchen (z.B. nach Accounts) verwendet
                            wird. Diese Option wird fr die meisten Account bezogenen Operationen
                            verwendet und sollte den DN anzeigen unter dem Accounts zu finden sind.
                        </entry>
                    </row>

                    <row>
                        <entry><property>accountCanonicalForm</property></entry>

                        <entry>
                            Ein kleiner Integerwert der die Form anzeigt zu der Accountnamen
                            kanonisiert werden sollen. Siehe auch das Kapitel <link
                                linkend="zend.ldap.introduction.theory-of-operations.account-name-canonicalization"><emphasis>Kanonisierung
                                von Account Namen</emphasis></link> weiter unten.
                        </entry>
                    </row>

                    <row>
                        <entry><property>accountDomainName</property></entry>

                        <entry>
                            Die <acronym>FQDN</acronym> Domain für die der <acronym>LDAP</acronym>
                            Zielserver die Authorität ist (z.B., example.com).
                        </entry>
                    </row>

                    <row>
                        <entry><property>accountDomainNameShort</property></entry>

                        <entry>
                            Die 'short' Domain für die der <acronym>LDAP</acronym> Zielserver die
                            Authorität ist. Das wird normalerweise verwendet um den NetBIOS
                            Domainnamen für Windows Netzwerke zu spezifizieren, kann aber auch von
                            nicht-AD Servern verwendet werden.
                        </entry>
                    </row>

                    <row>
                        <entry><property>accountFilterFormat</property></entry>

                        <entry>
                            Der Suchfilter für <acronym>LDAP</acronym> der für das Suchen von
                            Accounts verwendet wird. Der String ist ein Ausdruck im Stil von <ulink
                                url="http://php.net/sprintf">
                                <methodname>sprintf()</methodname></ulink>
                            der ein '<emphasis>%s</emphasis>' enthalten muss um den Benutzernamen
                            zu notieren. Der Standardwert ist
                            '<emphasis>(&amp;(objectClass=user)(sAMAccountName=%s))</emphasis>'
                            solange <emphasis>bindRequiresDn</emphasis> nicht auf
                            <constant>TRUE</constant> gesetzt ist. In dem Fall ist der Standardwert
                            '<emphasis>(&amp;(objectClass=posixAccount)(uid=%s))</emphasis>'.
                            Benutzer eines eigenen Schemas können die Notwendigkeit haben diese
                            Option zu ändern.
                        </entry>
                    </row>

                    <row>
                        <entry><property>allowEmptyPassword</property></entry>

                        <entry>
                            Einige <acronym>LDAP</acronym> Server können konfiguriert werden um
                            ein leeres Passwort als anonymen Bind zu akzeptieren. Dieses Verhalten
                            ist meistens immer unerwünscht. Aus diesem Grund sind leere Passwörter
                            explizit unerwünscht. Dieser Wert muß auf <constant>TRUE</constant>
                            gesetzt werden um zu akzeptieren das ein leeres Passwort während des
                            Bindens übergeben werden kann.
                        </entry>
                    </row>

                    <row>
                        <entry><property>optReferrals</property></entry>

                        <entry>
                            Wenn Sie auf <constant>TRUE</constant> gesetzt wird zeigt diese Option
                            an das dem <acronym>LDAP</acronym> Client der referiert, gefolgt werden
                            soll. Der Standardwert ist <constant>FALSE</constant>.
                        </entry>
                    </row>

                    <row>
                        <entry><property>tryUsernameSplit</property></entry>

                        <entry>
                            Wenn Sie auf <constant>FALSE</constant> gesetzt wird zeigt diese Option
                            an das der angegebene Benutzername nicht mit dem ersten
                            <emphasis>@</emphasis> oder <emphasis>\</emphasis> Zeichen geteilt
                            werden soll um den Benutzernamen während der Bindungs-Prozedur von der
                            Domain zu trennen. Das erlaubt es dem Benutzer, Benutzernamen zu
                            verwenden die ein <emphasis>@</emphasis> oder <emphasis>\</emphasis>
                            Zeichen enthalten, welche keine Domain-Information enthalten, z.B.
                            die Verwendung von Email Adressen für das Binden. Der Standardwert ist
                            <constant>TRUE</constant>.
                        </entry>
                    </row>
                </tbody>
            </tgroup>
        </table>
    </sect2>

    <sect2 id="zend.ldap.api.reference">
        <title>API Referenz</title>

        <note>
            <para>Methodennamen in <emphasis>italic</emphasis> sind statische Methoden.</para>
        </note>

        <xi:include href="Zend_Ldap-API-Ldap.xml" />
        <xi:include href="Zend_Ldap-API-Ldap-Attribute.xml" />
        <xi:include href="Zend_Ldap-API-Ldap-Dn.xml" />
        <xi:include href="Zend_Ldap-API-Ldap-Filter.xml" />
        <xi:include href="Zend_Ldap-API-Ldap-Node.xml" />
        <xi:include href="Zend_Ldap-API-Ldap-Node-RootDse.xml" />
        <xi:include href="Zend_Ldap-API-Ldap-Node-Schema.xml" />
        <xi:include href="Zend_Ldap-API-Ldap-Ldif-Encoder.xml" />
    </sect2>
</sect1>
