以下小節說明如何在需要建立與目錄伺服器的安全連線之 LDAP 用戶端中,配置與使用 SSL。在 SSL 連線中,伺服器會將其憑證傳送至用戶端。用戶端必須先信任此憑證,以進行伺服器認證。接著,用戶端可選擇針對兩個 SASL 機制之一傳送其本身的憑證或資訊,以初始化其中一個用戶端認證機制。SASL 機制為 DIGEST-MD5 與使用 Kerberos V5 的 GSSAPI。
下列小節將以 ldapsearch 工具做為啟用 SSL 之 LDAP 用戶端的範例。
若要在其他 LDAP 用戶端上配置 SSL 連線,請參閱應用程式隨附的文件。
有一些用戶端應用程式可實作 SSL,但無法驗證伺服器是否具有可信任的憑證。這些用戶端應用程式可使用 SSL 協定進行資料加密,但無法確保機密度,也無法防止模擬。
下列幾節說明如何配置 LDAP 用戶端以使用安全性:
當您在用戶端中使用 DIGEST-MD5 機制時,不需要安裝使用者憑證。但若要使用加密的 SSL 連線,則仍須如管理憑證中所述,信任伺服器憑證。
範圍定義選取認證身份識別的來源名稱空間。在 DIGEST-MD5 認證中,必須對特定的範圍進行認證。
目錄伺服器會以機器完全合格的主機名稱做為 DIGEST-MD5 的預設範圍。伺服器會使用位於 nsslapd-localhost 配置屬性中的主機名稱小寫值。
若未指定範圍,則會使用伺服器所提供的預設範圍。
在 UNIX 環境中,您必須設定 SASL-PATH 環境變數,LDAP 工具才找得到 DIGEST-MD5 程式庫。DIGEST-MD5 程式庫是一種可由 SASL 外掛程式動態載入的共用程式庫。請以下列方式設定 SASL_PATH 環境變數:
export SASL_PATH=SASL-library |
此路徑假設目錄伺服器安裝於呼叫 LDAP 工具的相同主機上。
您可以在未使用 SSL 的情況下,執行 DIGEST-MD5 用戶端認證。下列範例將使用預設的 DIGEST-MD5 身份識別對映,判斷連結 DN:
$ ldapsearch -h host1 -p 1389 \ -o mech=DIGEST-MD5 [ \ -o realm="example.com"] \ -o authid="dn:uid=bjensen,dc=example,dc=com" \ -w - \ -o authzid="dn:uid=bjensen,dc=example,dc=com" \ -o secProp="minssf=56,maxssf=256,noplain" \ -b "dc=example,dc=com" "(givenname=Richard)" |
上述範例說明如何使用 -o (小寫字母 o) 選項,指定 SASL 選項。realm 是可選擇的項目,但若要指定此項目,則必須使用伺服器主機電腦完全合格的網域名稱。authid 與 authzid 皆須存在同時完全相同,但並不會使用為代理伺服器作業所設定的 authzid。-w 密碼選項會套用至 authid。
authid 的值為身份識別對映中所使用的主體。authid 應包含 dn: 前綴與目錄中的有效使用者 DN,或包含 u: 前綴與用戶端所決定的任何字串。authid 的此項用法可讓您使用DIGEST-MD5 身份識別對映中所述的對映。
讓 SSL 連線透過 LDAPS 安全連接埠提供加密,以及讓 DIGEST-MD5 提供用戶端認證,是最常見的配置。下列範例將透過 SSL 執行相同的作業:
$ ldapsearch -h host1 -P 1636 \ -Z -P .mozilla/bjensen/BJE6001.slt/cert8.db \ -N "cert-example" -w - \ -o mech=DIGEST-MD5 [-o realm="example.com"] \ -o authid="dn:uid=bjensen,dc=example,dc=com" \ -o authzid="dn:uid=bjensen,dc=example,dc=com" \ -o secProp="minssf=0,maxssf=0,noplain" \ -b "dc=example,dc=com" "(givenname=Richard)" |
在此範例中,由於作業會透過 SSL 執行,因此 ldapsearch 指令必須使用 -N 與 -w 選項。但這些選項並不會使用於用戶端認證上。伺服器會在 authid 值中執行主體的其他 DIGEST-MD5 身份識別對映。
當您在用戶端中使用 GSSAPI 機制時,不需要安裝使用者憑證,但是必須配置 Kerberos V5 安全性系統。此外,若要使用加密的 SSL 連線,則必須如管理憑證中所述,信任伺服器憑證。
您必須在將要執行 LDAP 用戶端的主機電腦上配置 Kerberos V5。
無法使用 DSCC 執行此作業。請依照此程序中的說明使用指令行。
請根據安裝指示進行 Kerberos V5 的安裝。
Sun 建議安裝 Sun Enterprise Authentication Mechanism 1.0.1 用戶端軟體。
配置 Kerberos 軟體。
使用 Sun Enterprise Authentication Mechanism 軟體,配置 /etc/krb5 下的檔案。此配置可設定 kdc 伺服器,並定義預設範圍與您的 Kerberos 系統所需的所有其他配置。
請視需要修改檔案 /etc/gss/mech,使 kerberos_v5 成為第一個列出的值。
無法使用 DSCC 執行此作業。請依照此程序中的說明使用指令行。
使用以 GSSAPI 機制啟用的用戶端應用程式前,請先以使用者主體初始化 Kerberos 安全性系統。
$ kinit user-principal |
其中 user-principal 是您的 SASL 身份識別,如 bjensen@example.com。
指定使用 Kerberos 時所需的 SASL 選項。
請注意,在 UNIX 環境中,必須將 SASL_PATH 環境變數設為 SASL 程式庫的正確路徑。以 Korn shell 為例:
$ export SASL_PATH=SASL-library |
此路徑假設目錄伺服器安裝於呼叫 LDAP 工具的相同主機上。
ldapsearch 工具的下列範例說明如何使用 -o (小寫字母 o) 選項,指定使用 Kerberos 時所需的 SASL 選項:
$ ldapsearch -h www.host1.com -p 1389 -o mech=GSSAPI -o authid="bjensen@EXAMPLE.COM" \ -o authzid="bjensen@EXAMPLE.COM" -b "dc=example,dc=com" "(givenname=Richard)" |
authid 可以省略,因為它會出現在 kinit 指令所初始化的 Kerberos 快取中。如果 authid 存在,authid 與 authzid 必須完全相同,但並不會使用為代理伺服器作業所設定的 authzid。authid 的值為身份識別對映中所使用的主體。主體必須是完整的,其中必須包含範圍。請參閱GSSAPI 身份識別對映。
為目錄伺服器配置 Kerberos 有時是很複雜的作業。您應以 Kerberos 文件做為首要參考資料。
如需更多說明,請以下列範例程序評估所應執行的步驟。但請注意,此程序僅是範例。您必須根據本身的配置與環境,適當地修改此程序。
如需有關在 Solaris 作業系統中配置及使用 Kerberos 的更多資訊,請參閱「System Administration Guide: Security Services」。此指南是 Solaris 文件集的一部分。您也可以參考線上手冊。
此範例與前述步驟的相關資訊如下:
此範例中的程序說明如何將一部機器配置成為金鑰分配中心 (KDC),並將另一部機器配置成執行目錄伺服器的機器。完成此程序後,使用者即可透過 GSSAPI 執行 Kerberos 認證。
在同一部機器上可同時執行 KDC 與目錄伺服器。若選擇在同一部機器上同時執行兩者,請使用相同的程序,但可在目錄伺服器機器的步驟中省略已對 KDC 機器執行過的部分。
此程序對於所使用的環境有許多相關假設。使用範例程序時,請根據您的環境適當地修改其值。這些假設包含:
此系統安裝了全新的 Solaris 9 軟體,以及最新的建議修補程式叢集。若未安裝適當的 Solaris 修補程式,目錄伺服器的 Kerberos 認證即可能失敗。
請注意,此處所列之程序雖然大致與 Solaris 10 的程序相同,但仍有某些不同之處。配置檔的格式略有不同,某些指令的輸出也可能不同。
執行 Kerberos 常駐程式的機器具有 kdc.example.com 完全合格的網域名稱。此機器必須配置成以 DNS 做為命名服務。Kerberos 必須進行此配置。若改用其他如 file 的命名服務,特定作業將因此失敗。
執行目錄伺服器的機器具有 directory.example.com 完全合格的網域名稱。此機器也必須配置成以 DNS 做為命名服務。
目錄伺服器機器會做為透過 Kerberos 對目錄伺服器進行認證時的用戶端系統。此認證可從任何能夠同時與目錄伺服器和 Kerberos 常駐程式進行通訊的系統執行。然而,此範例的所有必要元件皆隨附於目錄伺服器,而認證會從該系統執行。
目錄伺服器中的使用者具有格式為 uid= username,ou=People,dc=example,dc=com 的 DN。對應的 Kerberos 主體為 username@EXAMPLE.COM。若使用不同的命名機制,則必須使用不同的 GSSAPI 身份識別對映。
/etc/krb5/krb5.conf 配置檔中含有可讓 Kerberos 用戶端與 KDC 通訊的必要資訊。
在 KDC 機器、目錄伺服器機器,以及任何將使用 Kerberos 對目錄伺服器進行認證的用戶端機器上,編輯 /etc/krb5/krb5.conf 配置檔。
將您所看到的每個 "___default_realm___" 取代為 "EXAMPLE.COM"。
將您所看到的每個 "___master_kdc___" 取代為 "kdc.example.com"。
由於只會有一部 Kerberos 伺服器,因此請移除含有 "___slave_kdcs___" 的文字行。
將 "___domain_mapping___" 取代為 ".example.com = EXAMPLE.COM" (請注意 .example.com 開頭處的句點)。
更新的 /etc/krb5/krb5.conf 配置檔應如下列範例的內容所示。
#pragma ident "@(#)krb5.conf 1.2 99/07/20 SMI" # Copyright (c) 1999, by Sun Microsystems, Inc. # All rights reserved. # # krb5.conf template # In order to complete this configuration file # you will need to replace the __<name\>__ placeholders # with appropriate values for your network. # [libdefaults] default_realm = EXAMPLE.COM [realms] EXAMPLE.COM = { kdc = kdc.example.com admin_server = kdc.example.com } [domain_realm] .example.com = EXAMPLE.COM [logging] default = FILE:/var/krb5/kdc.log kdc = FILE:/var/krb5/kdc.log kdc_rotate = { # How often to rotate kdc.log. Logs will get rotated no more # often than the period, and less often if the KDC is not used # frequently. period = 1d # how many versions of kdc.log to keep around (kdc.log.0, kdc.log.1, ...) versions = 10 } [appdefaults] kinit = { renewable = true forwardable= true } gkadmin = { help_url = http://docs.sun.com:80/ab2/coll.384.1/SEAM/@AB2PageView/1195 } |
在 /etc/krb5/kadm5.acl 配置檔中,將 "___default_realm___" 取代為 "EXAMPLE.COM"。更新的檔案應如下列範例所示。
# # Copyright (c) 1998-2000 by Sun Microsystems, Inc. # All rights reserved. # # pragma ident "@(#)kadm5.acl 1.1 01/03/19 SMI" */admin@EXAMPLE.COM * |
編輯 /etc/krb5/kdc.conf 檔案,將 "___default_realm___" 取代為 "EXAMPLE.COM"。更新的檔案應如下列範例所示。
# Copyright 1998-2002 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # #ident "@(#)kdc.conf 1.2 02/02/14 SMI" [kdcdefaults] kdc_ports = 88,750 [realms] EXAMPLE.COM = { profile = /etc/krb5/krb5.conf database_name = /var/krb5/principal admin_keytab = /etc/krb5/kadm5.keytab acl_file = /etc/krb5/kadm5.acl kadmind_port = 749 max_life = 8h 0m 0s max_renewable_life = 7d 0h 0m 0s default_principal_flags = +preauth } |
$ /usr/sbin/kdb5_util create -r EXAMPLE.COM -s Initializing database ’/var/krb5/principal’ for realm ’EXAMPLE.COM’, master key name ’K/M@EXAMPLE.COM’ You will be prompted for the database Master Password. It is important that you NOT FORGET this password. Enter KDC database master key: password Re-enter KDC database master key to verify: password $ |
使用下列指令,建立具有 kws/admin@EXAMPLE.COM 主體與管理常駐程式所將使用之服務金鑰的管理使用者。
$ /usr/sbin/kadmin.local kadmin.local: add_principal kws/admin Enter password for principal "kws/admin@EXAMPLE.COM": secret Re-enter password for principal "kws/admin@EXAMPLE.COM": secret Principal "kws/admin@EXAMPLE.COM" created. kadmin.local: ktadd -k /etc/krb5/kadm5.keytab kadmin/kdc.example.com Entry for principal kadmin/kdc.example.com with kvno 3, encryption type DES-CBC-CRC added to keytab WRFILE:/etc/krb5/kadm5.keytab. kadmin.local: ktadd -k /etc/krb5/kadm5.keytab changepw/kdc.example.com Entry for principal changepw/kdc.example.com with kvno 3, encryption type DES-CBC-CRC added to keytab WRFILE:/etc/krb5/kadm5.keytab. kadmin.local: ktadd -k /etc/krb5/kadm5.keytab kadmin/changepw Entry for principal kadmin/changepw with kvno 3, encryption type DES-CBC-CRC added to keytab WRFILE:/etc/krb5/kadm5.keytab. kadmin.local: quit$ |
執行下列指令,以啟動 KDC 與管理常駐程式:
$ /etc/init.d/kdc start $ /etc/init.d/kdc.master start $ |
KDC 程序會以 /usr/lib/krb5/krb5kdc 的形式顯示在程序清單中。管理常駐程式會顯示為 /usr/lib/krb5/kadmind。
請注意,Solaris 10 作業系統中的常駐程式係由「服務管理功能 (SMF)」架構所管理。在 Solaris 10 作業系統上啟動常駐程式:
$ svcadm disable network/security/krb5kdc $ svcadm enable network/security/krb5kdc $ svcadm disable network/security/kadmin $ svcadm enable network/security/kadmin $ |
使用以下一系列的指令,為 KDC 與目錄伺服器機器的 Kerberos 資料庫增加主機主體。klist 等特定 Kerberos 公用程式會使用主機主體。
$ /usr/sbin/kadmin -p kws/admin Enter Password: secret kadmin: add_principal -randkey host/kdc.example.com Principal "host/kdc.example.com@EXAMPLE.COM" created. kadmin: ktadd host/kdc.example.com Entry for principal host/kdc.example.com with kvno 3, encryption type DES-CBC-CRC added to keytab WRFILE:/etc/krb5/krb5.keytab. kadmin: add_principal -randkey host/directory.example.com Principal "host/directory.example.com@EXAMPLE.COM" created. kadmin: ktadd host/directory.example.com Entry for principal host/directory.example.com with kvno 3, encryption type DES-CBC-CRC added to keytab WRFILE:/etc/krb5/krb5.keytab. kadmin: quit $ |
目錄伺服器必須具有本身的主體,才能對進行認證的使用者驗證其所持有之 Kerberos 票證。目錄伺服器目前程序內定為需要 ldap/fqdn@realm 的主體,其中 fqdn 是目錄伺服器的完全合格網域名稱,而 realm 是 Kerberos 範圍。fqdn 必須符合安裝目錄伺服器時所提供的完全合格名稱。在本例中,目錄伺服器的主體是 ldap/directory.example.com@EXAMPLE.COM。
使用以下一系列的指令,建立目錄伺服器的 LDAP 主體:
$ /usr/sbin/kadmin -p kws/admin Enter Password: secret kadmin: add_principal -randkey ldap/directory.example.com Principal "ldap/directory.example.com@EXAMPLE.COM" created. kadmin: quit $ |
Kerberos 資料庫中必須有進行認證的使用者,才能執行 Kerberos 認證。在此範例中,使用者的使用者名稱為 kerberos-test,這表示 Kerberos 主體為 kerberos-test@EXAMPLE.COM。
使用此範例中的指令序列建立使用者:
$ /usr/sbin/kadmin -p kws/admin Enter Password: secret kadmin: add_principal kerberos-test Enter password for principal "kerberos-test@EXAMPLE.COM": secret Re-enter password for principal "kerberos-test@EXAMPLE.COM": secret Principal "kerberos-test@EXAMPLE.COM" created. kadmin: quit $ |
安裝 Directory Server 6.0 與最新的修補程式。以下是範例設定。
變數類型 |
範例值 |
---|---|
完全合格的電腦名稱 |
directory.example.com |
安裝目錄 |
/opt/SUNWdsee |
實例路徑 |
/local/ds |
伺服器使用者 |
unixuser |
伺服器群組 |
unixgroup |
伺服器連接埠 |
389 |
尾碼 |
dc=example,dc=com |
首先建立 /data/ds/shared/bin/gssapi.ldif 檔案以定義目錄伺服器所應使用的對映,再根據主體識別進行認證的 Kerberos 使用者。建立下列範例中所顯示的相同檔案內容。
dn: cn=GSSAPI,cn=identity mapping,cn=config changetype: add objectClass: top objectClass: nsContainer cn: GSSAPI dn: cn=default,cn=GSSAPI,cn=identity mapping,cn=config changetype: add objectClass: top objectClass: nsContainer objectClass: dsIdentityMapping objectClass: dsPatternMatching cn: default dsMatching-pattern: \${Principal} dsMatching-regexp: (.*)@EXAMPLE.COM dsMappedDN: uid=\$1,ou=People,dc=example,dc=com dn: cn=SASL,cn=security,cn=config changetype: modify replace: dsSaslPluginsPath dsSaslPluginsPath: /usr/lib/mps/sasl2/libsasl.so |
接著使用 ldapmodify 指令更新目錄伺服器,以啟用具有適當對映的 GSSAPI,如下列範例所示:
$ ldapmodify -D cn=admin,cn=Administrators,cn=config -w - -a -f /data/ds/shared/bin/gssapi.ldif adding new entry cn=GSSAPI,cn=identity mapping,cn=config adding new entry cn=default,cn=GSSAPI,cn=identity mapping,cn=config modifying entry cn=SASL,cn=security,cn=config $ |
如前所述,目錄伺服器必須在 KDC 中具有本身的主體,才能透過 GSSAPI 認證 Kerberos 使用者。為使認證正確運作,主體資訊必須位於目錄伺服器機器的 Kerberos keytab 中。此項資訊必須位於執行目錄伺服器的使用者帳號可讀取的檔案中。
使用下列指令序列,建立具有正確特性的 keytab 檔案:
$ /usr/sbin/kadmin -p kws/admin Enter Password: secret kadmin: ktadd -k //local/ds/config/ldap.keytab ldap/directory.example.com Entry for principal ldap/directory.example.com with kvno 3, encryption type DES-CBC-CRC added to keytab WRFILE:/local/ds/config/ldap.keytab. kadmin: quit $ |
變更此自訂 keytab 中的權限與所有權。讓用以執行目錄伺服器的使用者帳號擁有此 keytab,且只有該名使用者可加以讀取:
$ chown unixuser:unixgroup /local/ds/config /ldap.keytab $ chmod 600 /local/ds/config/ldap.keytab $ |
目錄伺服器預設會嘗試使用 /etc/kerb5/krb5.keytab 檔案中的標準 Kerberos keytab。但若讓目錄伺服器使用者可讀取此檔案,將會構成安全性風險,為目錄伺服器建立自訂 keytab 的用意即在於此。
配置目錄伺服器以使用新的自訂 keytab。請設定 KRB5_KTNAME 環境變數,以執行此作業。
最後,請重新啟動目錄伺服器,變更方可生效:
$ KRB5_KTNAME=/etc/krb5/ldap.keytab dsadm restart /local/ds |
若要對目錄伺服器認證 Kerberos 使用者,使用者必須有目錄項目可對應於其 Kerberos 主體。
在上一個步驟中,測試使用者以 kerberos-test@EXAMPLE.COM 的主體增加到 Kerberos 資料庫中。由於身份識別對映配置已增加到目錄中,因此該名使用者的對應目錄項目必須具有 DN uid=kerberos-test,ou=People,dc=example,dc=com。
在目錄中增加使用者之前,必須以下列內容建立檔案 testuser.ldif。
dn: uid=kerberos-test,ou=People,dc=example,dc=com changetype: add objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson uid: kerberos-test givenName: Kerberos sn: Test cn: Kerberos Test description: An account for testing Kerberos authentication through GSSAPI |
接著,請使用 ldapmodify 將此項目增加到伺服器中:
$ ldapmodify -D cn=admin,cn=Administrators,cn=config -w - -f testuser.ldif adding new entry uid=kerberos-test,ou=People,dc=example,dc=com $ |
測試使用者存在於 Kerberos 資料庫、目錄伺服器與 KDC 中。因此,現在可以透過 GSSAPI 使用 Kerberos,利用測試使用者的身份,對目錄伺服器進行認證。
首先,請使用 kinit 指令取得使用者的 Kerberos 票證,如下列範例所示:
$ kinit kerberos-test Password for kerberos-test@EXAMPLE.COM: secret $ |
接著,請使用 klist 指令檢視此票證的相關資訊:
$ klist Ticket cache: /tmp/krb5cc_0 Default principal: kerberos-test@EXAMPLE.COM Valid starting Expires Service principal Sat Jul 24 00:24:15 2004 Sat Jul 24 08:24:15 2004 krbtgt/EXAMPLE.COM@EXAMPLE.COM renew until Sat Jul 31 00:24:15 2004 $ |
最後一個步驟是使用 GSSAPI,對目錄伺服器進行認證。目錄伺服器隨附的 ldapsearch 公用程式可支援 SASL 認證,包含 GSSAPI、DIGEST-MD5 與 EXTERNAL 等機制。但若要使用 GSSAPI 進行連結,則必須為用戶端提供 SASL 程式庫的路徑。藉由設定 SASL_PATH 環境變數提供 lib/sasl 目錄的路徑:
$ SASL_PATH=SASL-library $ export SASL_PATH $ |
若要使用 ldapsearch 實際執行目錄伺服器的 Kerberos 型認證,您必須包含 -o mech=GSSAPI 與 -o authzid=principal 引數。
此外,還必須指定完全合格的主機名稱,在此案例中為 -h directory.example.com,此名稱必須與伺服器之 cn=config 的 nsslapd-localhost 屬性值相符。在此必須使用 -h 選項,因為 GSSAPI 認證程序中必須要有用戶端所提供的主機名稱,用以比對伺服器所提供的主機名稱。
下列範例將在 dc=example,dc=com 項目認證為先前所建立的 Kerberos 測試使用者帳號時,擷取此項目:
$ ldapsearch -h directory.example.com -p 389 -o mech=GSSAPI \ -o authzid="kerberos-test@EXAMPLE.COM" -b "dc=example,dc=com" -s base "(objectClass=*)" version: 1 dn: dc=example,dc=com dc: example objectClass: top objectClass: domain $ |
查看目錄伺服器存取記錄,以確定認證是否已如預期般進行處理:
$ tail -12 /local/ds/logs/access [24/Jul/2004:00:30:47 -0500] conn=0 op=-1 msgId=-1 - fd=23 slot=23 LDAP connection from 1.1.1.8 to 1.1.1.8 [24/Jul/2004:00:30:47 -0500] conn=0 op=0 msgId=1 - BIND dn="" method=sasl version=3 mech=GSSAPI [24/Jul/2004:00:30:47 -0500] conn=0 op=0 msgId=1 - RESULT err=14 tag=97 nentries=0 etime=0, SASL bind in progress [24/Jul/2004:00:30:47 -0500] conn=0 op=1 msgId=2 - BIND dn="" method=sasl version=3 mech=GSSAPI [24/Jul/2004:00:30:47 -0500] conn=0 op=1 msgId=2 - RESULT err=14 tag=97 nentries=0 etime=0, SASL bind in progress [24/Jul/2004:00:30:47 -0500] conn=0 op=2 msgId=3 - BIND dn="" method=sasl version=3 mech=GSSAPI [24/Jul/2004:00:30:47 -0500] conn=0 op=2 msgId=3 - RESULT err=0 tag=97 nentries=0 etime=0 dn="uid=kerberos-test,ou=people,dc=example,dc=com" [24/Jul/2004:00:30:47 -0500] conn=0 op=3 msgId=4 - SRCH base="dc=example,dc=com" scope=0 filter="(objectClass=*)" attrs=ALL [24/Jul/2004:00:30:47 -0500] conn=0 op=3 msgId=4 - RESULT err=0 tag=101 nentries=1 etime=0 [24/Jul/2004:00:30:47 -0500] conn=0 op=4 msgId=5 - UNBIND [24/Jul/2004:00:30:47 -0500] conn=0 op=4 msgId=-1 - closing - U1 [24/Jul/2004:00:30:48 -0500] conn=0 op=-1 msgId=-1 - closed. $ |
此範例說明連結為三步驟的程序。前兩個步驟會傳回 LDAP 結果 14 (SASL 連結進行中),而第三個步驟說明連結已順利完成。method=sasl 與 mech=GSSAPI 標記說明連結採用 GSSAPI SASL 機制。成功連結回應結尾處的 dn="uid=kerberos-test,ou=people,dc=example,dc=com",說明連結已由適當的使用者身份執行。