绑定 LDAP 目录

# ldap_bind

(PHP 4, PHP 5, PHP 7, PHP 8)

ldap_bind — 绑定 LDAP 目录

### 说明

function ldap_bind(LDAP\Connection `$ldap`, ?string `$dn` = `null`, #[\SensitiveParameter]?string `$password` = `null`): bool

使用指定的 RDN 和密码绑定到 LDAP 目录。

### 参数

`ldap`

  通过 ldap_connect() 返回的 LDAP\Connection 实例。

`dn`

`password`

如果没有指定 `password` 或为空，将会以匿名身份绑定。`dn` 也可以为空，用于匿名绑定。这在 https://tools.ietf.org/html/rfc2251#section-4.2.2 中有定义。

### 返回值

成功时返回 `true`， 或者在失败时返回 `false`。

### 更新日志

版本 | 说明
--- | ---
8.1.0 | 现在 `ldap` 参数接受 LDAP\Connection 实例，之前接受有效的 `ldap link` resource。

### 示例

示例 #1 使用 LDAP Bind

    <?php

    // using ldap bind
    $ldaprdn  = 'uname';     // ldap rdn or dn
    $ldappass = 'password';  // associated password

    // connect to ldap server
    $ldapconn = ldap_connect("ldap://ldap.example.com")
        or die("Could not connect to LDAP server.");

    if ($ldapconn) {

        // binding to ldap server
        $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);

        // verify binding
        if ($ldapbind) {
            echo "LDAP bind successful...";
        } else {
            echo "LDAP bind failed...";
        }

    }

    ?>

示例 #2 Using LDAP Bind Anonymously

    <?php

    //using ldap bind anonymously

    // connect to ldap server
    $ldapconn = ldap_connect("ldap://ldap.example.com")
        or die("Could not connect to LDAP server.");

    if ($ldapconn) {

        // binding anonymously
        $ldapbind = ldap_bind($ldapconn);

        if ($ldapbind) {
            echo "LDAP bind anonymous successful...";
        } else {
            echo "LDAP bind anonymous failed...";
        }

    }

    ?>

### 参见

- ldap_bind_ext() - Bind to LDAP directory
- ldap_unbind() - Unbind from LDAP directory

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open