

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# `DirectoryService` セクション
<a name="DirectoryService-v3"></a>

**注記**  
 AWS ParallelCluster バージョン 3.1.1 で のサポートが追加され`DirectoryService`ました。

**(オプション)** 複数のユーザーアクセスをサポートするクラスターのディレクトリサービス設定。

AWS ParallelCluster は、[System Security Services Daemon (SSSD) でサポートされている Lightweight Directory Access Protocol (LDAP) を介した Active Directory (AD) ](https://sssd.io/docs/introduction.html)を持つクラスターへの複数のユーザーアクセスをサポートするアクセス許可を管理します。詳細については、「 *AWS Directory Service 管理ガイド*」の[「What is AWS Directory Service?](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/what_is.html)」を参照してください。

潜在的に機密性の高い情報が暗号化されたチャネルを介して送信されるように LDAP over TLS/SSL (略して LDAPS) を使用することをお勧めします。

```
DirectoryService:
  DomainName: string
  DomainAddr: string
  PasswordSecretArn: string
  DomainReadOnlyUser: string
  LdapTlsCaCert: string
  LdapTlsReqCert: string
  LdapAccessFilter: string
  GenerateSshKeysForUsers: boolean
  AdditionalSssdConfigs: dict
```

[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

## `DirectoryService` のプロパティ
<a name="DirectoryService-v3.properties"></a>

**注記**  
インターネットアクセスのない単一のサブネット AWS ParallelCluster で を使用する予定がある場合は、追加の要件[AWS ParallelCluster インターネットアクセスのない 1 つのサブネット内](aws-parallelcluster-in-a-single-public-subnet-no-internet-v3.md)について「」を参照してください。

`DomainName` **(必須)**、`String`)  
ID 情報に使用するアクティブディレクトリ (AD) ドメイン。  
`DomainName` は、完全修飾ドメイン名 (FQDN) と LDAP 識別名 (DN) の両方の形式を受け入れます。  
+ FQDN の例: `corp.example.com`
+ LDAP DN の例: `DC=corp,DC=example,DC=com`
このプロパティは、`ldap_search_base` で呼び出される sssd-ldap パラメータに対応します。  
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

`DomainAddr` **(必須)**、`String`)  
LDAP サーバーとして使用される AD ドメインコントローラーを指す URI。`ldap_uri` で呼び出される SSSD-LDAP パラメータに対応する URI。値はカンマ区切りの URI の文字列になることもあります。LDAP を使用するには、各 URI の先頭に `ldap://` を追加する必要があります。  
値の例:  

```
ldap://192.0.2.0,ldap://203.0.113.0          # LDAP
ldaps://192.0.2.0,ldaps://203.0.113.0        # LDAPS without support for certificate verification
ldaps://abcdef01234567890.corp.example.com  # LDAPS with support for certificate verification
192.0.2.0,203.0.113.0                        # AWS ParallelCluster uses LDAPS by default
```
LDAPS を証明書検証と共に使用する場合、URI はホスト名である必要があります。  
証明書検証なしで LDAPS または LDAP を使用する場合、URI はホスト名または IP アドレスのいずれかになります。  
パスワードやその他の機密情報が暗号化されていないチャネルを介して送信されるのを回避するには、LDAP over TLS/SSL (LDAPS) を使用します。 AWS ParallelCluster でプロトコルが見つからない場合は、各 URI またはホスト名の先頭に `ldaps://` が追加されます。  
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

`PasswordSecretArn` **(必須)**、`String`)  
プレーンテキストのパスワードを含む AWS Secrets Manager シークレットの Amazon `DomainReadOnlyUser` リソースネーム (ARN)。シークレットの内容は、`ldap_default_authtok` で呼び出される SSSD-LDAP パラメータに対応します。  
 AWS Secrets Manager コンソールを使用してシークレットを作成する場合は、「その他のタイプのシークレット」を選択し、プレーンテキストを選択し、パスワードテキストのみをシークレットに含めます。  
 AWS Secrets Manager を使用してシークレットを作成する方法の詳細については、「 シーク[AWS Secrets Manager レットの作成](https://docs.aws.amazon.com//secretsmanager/latest/userguide/create_secret)」を参照してください。
LDAP クライアントは、ID 情報をリクエスト`DomainReadOnlyUser`するときに、パスワードを使用して AD ドメインを として認証します。  
ユーザーに [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DescribeSecret.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DescribeSecret.html) のアクセス許可がある場合、`PasswordSecretArn` が検証されます。指定されたシークレットが存在する場合、`PasswordSecretArn` は有効です。ユーザーの IAM ポリシーに `DescribeSecret` が含まれていない場合、`PasswordSecretArn` は検証されず、警告メッセージが表示されます。詳細については、「[AWS ParallelCluster `pcluster` 基本ユーザーポリシー](iam-roles-in-parallelcluster-v3.md#iam-roles-in-parallelcluster-v3-base-user-policy)」を参照してください。  
シークレットの値が変更された場合、クラスターは自動的に更新されません**。クラスターを新しいシークレット値に更新するには、[`pcluster update-compute-fleet`](pcluster.update-compute-fleet-v3.md) コマンドを使用してコンピューティングフリートを停止し、ヘッドノード内から次のコマンドを実行します。  

```
$ sudo /opt/parallelcluster/scripts/directory_service/update_directory_service_password.sh
```
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

`DomainReadOnlyUser` **(必須)**、`String`)  
クラスターユーザーのログインを認証するとき、AD ドメインに ID 情報をクエリするために使用される ID。`ldap_default_bind_dn` で呼び出される SSSD-LDAP パラメータに対応します。この値には AD ID 情報を使用してください。  
ノードの特定の LDAP クライアントが必要とする形式で ID を指定します。  
+ MicrosoftAD:

  ```
  cn=ReadOnlyUser,ou=Users,ou=CORP,dc=corp,dc=example,dc=com
  ```
+ SimpleAD:

  ```
  cn=ReadOnlyUser,cn=Users,dc=corp,dc=example,dc=com
  ```
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

`LdapTlsCaCert` (**オプション**、`String`)  
ドメインコントローラーの証明書を発行した証明書チェーン内のすべての認証機関の証明書を含む証明書バンドルへの絶対パス。`ldap_tls_cacert` で呼び出される SSSD-LDAP パラメータに対応します。  
証明書バンドルは Windows では DER Base64 形式とも呼ばれる PEM 形式 の個別の証明書を連結して構成されたファイルです。これは、LDAP サーバーとして機能する AD ドメインコントローラーの ID を検証するために使用されます。  
AWS ParallelCluster は、ノードへの証明書の初期配置については責任を負いません。クラスター管理者として、クラスターの作成後にヘッドノードの証明書を手動で設定することも、[ブートストラップスクリプト](custom-bootstrap-actions-v3.md)を使用することもできます。または、ヘッドノードで設定された証明書を含む Amazon マシンイメージ (AMI) を使用することもできます。  
[Simple AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_simple_ad.html) は LDAPS をサポートしていません。Simple AD ディレクトリを と統合する方法については AWS ParallelCluster、 *AWS セキュリティブログ*の[「How to configure an LDAPS endpoint for Simple AD](https://aws.amazon.com/blogs/security/how-to-configure-ldaps-endpoint-for-simple-ad/)」を参照してください。  
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

`LdapTlsReqCert` (**オプション**、`String`)  
TLS セッションでサーバー証明書に対して実行する確認内容を指定します。`ldap_tls_reqcert` で呼び出される SSSD-LDAP パラメータに対応します。  
有効な値: `never`、`allow`、`try`、`demand`、および `hard`。  
`never`、`allow`、および `try` は、証明書の問題が見つかった場合でも接続を続行できるようにします。  
`demand` および `hard` は、証明書に問題がない場合でも通信を継続できるようにします。  
クラスター管理者が証明書の検証の成功を必要としない値を使用した場合、警告メッセージが管理者に返されます。セキュリティ上の理由から、証明書の検証を無効にしないことをお勧めします。  
デフォルト値は `hard` です。  
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

`LdapAccessFilter` (**オプション**、`String`)  
ディレクトリアクセスを一部のユーザーに制限するフィルターを指定します。このプロパティは、`ldap_access_filter` で呼び出される SSSD-LDAP パラメータに対応します。これを使用して、多数のユーザーをサポートする AD へのクエリに制限できます。  
このフィルターは、クラスターへのユーザーアクセスをブロックできます。ただし、ブロックされたユーザーの検出性には影響しません。  
このプロパティが設定されている場合、SSSD パラメータ `access_provider` は AWS ParallelCluster によって内部で `ldap` に設定され、[`DirectoryService`](#DirectoryService-v3)/[`AdditionalSssdConfigs`](#yaml-DirectoryService-AdditionalSssdConfigs) 設定では変更できません。  
このプロパティを省略し、カスタマイズされたユーザーアクセスを [`DirectoryService`](#DirectoryService-v3)/[`AdditionalSssdConfigs`](#yaml-DirectoryService-AdditionalSssdConfigs) で指定していない場合、ディレクトリ内のすべてのユーザーがクラスターにアクセスできます。  
例:  

```
"!(cn=SomeUser*)"  # denies access to every user with an alias that starts with "SomeUser"
"(cn=SomeUser*)"   # allows access to every user with alias that starts with "SomeUser"
"memberOf=cn=TeamOne,ou=Users,ou=CORP,dc=corp,dc=example,dc=com" # allows access only to users in group "TeamOne".
```
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

`GenerateSshKeysForUsers` (**オプション**、`Boolean`)  
がヘッドノードでの最初の認証の直後にクラスターユーザーの SSH キー AWS ParallelCluster を生成するかどうかを定義します。  
`true` に設定すると、ヘッドノードでの最初の認証後、すべてのユーザーについて SSH キーが存在しない場合に生成されて `USER_HOME_DIRECTORY/.ssh/id_rsa` に保存されます。  

ヘッドノードでまだ認証されていないユーザーの場合、次のような場合に初回認証が行われます。
+ ユーザーが自身のパスワードで初めてヘッドノードにログインします。
+ ヘッドノードで、sudoer が初めてそのユーザーに切り替えます。`su USERNAME`
+ ヘッドノードで、sudoer が初めてそのユーザーとしてコマンドを実行します。`su -u USERNAME COMMAND`
それ以降は、ユーザーは SSH キーを使用して、クラスターヘッドノードとコンピューティングノードにログインできます。では AWS ParallelCluster、クラスターコンピューティングノードへのパスワードログインは設計上無効になっています。ユーザーがヘッドノードにログインしたことがない場合、SSH キーは生成されず、ユーザーはコンピューティングノードにログインすることはできません。  
デフォルトは `true` です。  
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)

`AdditionalSssdConfigs` (**オプション**、`Dict`)  
クラスターインスタンスの SSSD 設定ファイルに書き込む SSSD パラメータと値を含むキーと値のペアのディクショナリ。SSSD 設定ファイルの説明については、`SSSD` および関連設定ファイルのインスタンスのマニュアルページを参照してください。  
SSSD のパラメータと値は、次のリストで説明するように AWS ParallelCluster、 の SSSD 設定と互換性がある必要があります。  
+ `id_provider` は によって`ldap`内部的に に設定 AWS ParallelCluster されるため、変更しないでください。
+ `access_provider` は、/ [`DirectoryService`](#DirectoryService-v3) [`LdapAccessFilter`](#yaml-DirectoryService-LdapAccessFilter)が指定され AWS ParallelCluster ている場合、 によって`ldap`内部的に に設定されます。この設定は変更しないでください。

  [`DirectoryService`](#DirectoryService-v3)/[`LdapAccessFilter`](#yaml-DirectoryService-LdapAccessFilter) を省略すると、その `access_provider` の指定も省略されます。例えば、[`AdditionalSssdConfigs`](#yaml-DirectoryService-AdditionalSssdConfigs) で `access_provider` を `simple` に設定した場合、[`DirectoryService`](#DirectoryService-v3)/[`LdapAccessFilter`](#yaml-DirectoryService-LdapAccessFilter) は指定しないでください。
次の設定スニペットは、`AdditionalSssdConfigs` の有効な設定の例です。  
この例では、SSSD ログのデバッグレベルを有効にし、検索ベースを特定の組織単位に制限し、認証情報のキャッシュを無効にしています。  

```
DirectoryService:
  ...
  AdditionalSssdConfigs:
    debug_level: "0xFFF0"
    ldap_search_base: OU=Users,OU=CORP,DC=corp,DC=example,DC=com
    cache_credentials: False
```
この例では SSSD [https://www.mankier.com/5/sssd-simple](https://www.mankier.com/5/sssd-simple) `access_provider` の設定を指定しています。`EngineeringTeam` からのユーザーにはディレクトリへのアクセス許可が与えられます。この場合、[`DirectoryService`](#DirectoryService-v3)/[`LdapAccessFilter`](#yaml-DirectoryService-LdapAccessFilter) は設定できません。  

```
DirectoryService:
  ...
  AdditionalSssdConfigs:
    access_provider: simple
    simple_allow_groups: EngineeringTeam
```
[更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。](using-pcluster-update-cluster-v3.md#update-policy-compute-fleet-v3)