

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 將 LDAP 與 Amazon EMR 搭配使用的範例
<a name="ldap-examples"></a>

[佈建使用 LDAP 整合的 EMR 叢集](ldap-setup-launch.md)後，您可以透過內建使用者名稱和密碼身分驗證機制，將 LDAP 憑證提供給任何[支援的應用程式](ldap-considerations.md#ldap-considerations-apps)。本頁顯示部分範例。

## 將 LDAP 身分驗證與 Apache Hive 搭配使用
<a name="ldap-examples-"></a>

**Example – Apache Hive**  
下列範例命令透過 HiveServer2 和 Beeline 啟動 Apache Hive 工作階段：  

```
beeline -u "jdbc:hive2://$HOSTNAME:10000/default;ssl=true;sslTrustStore=$TRUSTSTORE_PATH;trustStorePassword=$TRUSTSTORE_PASS"  -n LDAP_USERNAME -p LDAP_PASSWORD
```

## 將 LDAP 身分驗證與 Apache Livy 搭配使用
<a name="ldap-examples-livy"></a>

**Example – Apache Livy**  
下列範例命令透過 cURL 啟動 Livy 工作階段。將 `ENCODED-KEYPAIR` 取代為 `username:password` 的 Base64 編碼字串。  

```
curl -X POST --data '{"proxyUser":"LDAP_USERNAME","kind": "pyspark"}' -H "Content-Type: application/json" -H "Authorization: Basic ENCODED-KEYPAIR" DNS_OF_PRIMARY_NODE:8998/sessions
```

## 將 LDAP 身分驗證與 Presto 搭配使用
<a name="ldap-examples-presto"></a>

**Example – Presto**  
下列範例命令透過 Presto CLI 啟動 Presto 工作階段：  

```
presto-cli --user "LDAP_USERNAME" --password --catalog hive
```
執行此命令之後，在提示下輸入 LDAP 密碼。

## 將 LDAP 身分驗證與 Trino 搭配使用
<a name="ldap-examples-trino"></a>

**Example – Trino**  
下列範例命令透過 Trino CLI 啟動 Trino 工作階段：  

```
trino-cli --user "LDAP_USERNAME" --password --catalog hive
```
執行此命令之後，在提示下輸入 LDAP 密碼。

## 將 LDAP 身分驗證與 Hue 搭配使用
<a name="ldap-examples-hue"></a>

您可以透過在叢集上建立的 SSH 通道存取 Hue UI，也可以設定代理伺服器以公開廣播與 Hue 的連線。由於 Hue 預設不會在 HTTPS 模式下執行，因此，建議您使用額外的加密層來確保用戶端與 Hue UI 之間的通訊透過 HTTPS 進行加密。這減少了您意外地以純文字形式暴露使用者憑證的可能性。

若要使用 Hue UI，請在瀏覽器中開啟 Hue UI，然後輸入您的 LDAP 使用者名稱密碼以登入。如果憑證正確，Hue 會將您登入，並使用您的身分對所有支援的應用程式進行身分驗證。

## 針對其他應用程式使用 SSH 進行密碼身分驗證和 Kerberos 票證
<a name="ldap-examples-ssh"></a>

**重要**  
我們不建議您使用密碼身分驗證透過 SSH 連接至 EMR 叢集。

您可以使用 LDAP 憑證透過 SSH 連接至 EMR 叢集。若要執行此操作，請在用於啟動叢集的 Amazon EMR 安全組態中將 `EnableSSHLogin` 組態設定為 `true`。然後，在啟動叢集之後，使用下列命令透過 SSH 連接至叢集：

```
ssh username@EMR_PRIMARY_DNS_NAME
```

執行此命令之後，在提示下輸入 LDAP 密碼。

Amazon EMR 包含叢集上的指令碼，可讓使用者產生 Kerberos keytab 檔案和票證，以便與不直接接受 LDAP 憑證的支援應用程式搭配使用。其中部分應用程式包括 `spark-submit`、Spark SQL 和 PySpark。

執行 `ldap-kinit`，並遵循提示字元。如果身分驗證成功，Kerberos keytab 檔案將顯示在您的主目錄中，並具有有效的 Kerberos 票證。使用 Kerberos 票證可以像在任何 Kerberos 化環境中一樣執行應用程式。