アウトバウンド・コネクタの管理
ファイル・ストレージは、アウトバウンド・コネクタを使用して、外部サーバー(LDAPサーバーなど)と通信します。
アウトバウンド・コネクタには、接続、認証、およびアカウントの必須機能を実行するための認可の取得に必要なすべての情報が含まれます。現在、アウトバウンド・コネクタはLDAPサーバーとの通信にのみ使用されます。マウント・ターゲットにLDAP認証を追加するときに、コネクタの構成オプションを指定します。
LDAPサーバーに接続する場合、マウント・ターゲットは、その構成で指定された最初のアウトバウンド・コネクタを使用します。マウント・ターゲットが最初のアウトバウンド・コネクタを使用したLDAPサーバーへのログインに失敗した場合、2番目のアウトバウンド・コネクタが使用されます。
複数のマウント・ターゲットで同じアウトバウンド・コネクタを使用できます。アウトバウンド・コネクタをマウント・ターゲットに関連付けることができるのは、同じ可用性ドメインに存在する場合のみです。アベイラビリティ・ドメイン当たり最大32個のアウトバウンド・コネクタを保有できます。
アウトバウンド・コネクタ管理に関する詳細な手順については、次のトピックを参照してください。
必要なIAMポリシー
Oracle Cloud Infrastructureを使用するには、管理者が、テナンシ管理者がポリシーでセキュリティ・アクセス権を付与したグループのメンバーである必要があります。コンソールまたは(SDK、CLIまたはその他のツールを使用した) REST APIのどれを使用しているかにかかわらず、このアクセス権が必要です。権限がない、または認可されていないというメッセージが表示された場合は、テナンシ管理者に、どのタイプのアクセス権があり、どのコンパートメントでアクセスが作業する必要があるかを管理者に確認してください。
管理者の場合: ユーザーによるファイル・システムの作成、管理および削除のポリシーにより、ユーザーはアウトバウンド・コネクタを管理できます。
これらのポリシーは、認可にLDAPを使用するようにマウント・ターゲットを構成する前に作成する必要があります。
マウント・ターゲット構成を有効にするポリシー
次のようなポリシーを使用して、マウント・ターゲット権限でLDAPを構成するユーザーまたはグループに権限を付与します。これにより、ユーザーは構成中に必要なVaultシークレットを読み取ることができます。
allow <user|group> to read secret-family in compartment <Compartment_ID> where any { target.secret.id = <LDAP_Password_Secret_ID>, target.secret.id = <Trusted_Certificate_Secret_ID> }これにより、ユーザーは、構成中に検証のためにVaultシークレットを読み取り、シークレットの一部を表示するファイル・ストレージ・コマンドを発行できます。
マウント・ターゲットにシークレットの取得を許可するポリシー
File Storageサービスにはシークレットを読み取る機能が必要です。ファイル・ストレージでは、リソース・プリンシパルを使用して、特定のマウント・ターゲットのセットにVaultシークレットへのアクセス権を付与します。これは2ステップのプロセスであり、まずアクセスが必要なマウント・ターゲットを動的グループに配置し、次にその動的グループにシークレットを読み取るアクセス権が付与されます。
-
次のようなポリシーを使用して、マウント・ターゲットの動的グループを作成します:
ALL { resource.type='mounttarget', resource.compartment.id = '<mount_target_compartment_id>' }ノート
動的グループに複数のルールがある場合は、必ずMatch any rules defined belowオプションを使用してください。 -
Vaultシークレットへの読取りアクセス権をマウント・ターゲットの動的グループに付与するIAMポリシーを作成します:
allow dynamic-group <dynamic_group_name> to read secret-family in compartment <secret_compartment_name>
ポリシーを初めて使用する場合は、ポリシーの開始およびファイル・ストレージ・サービスの詳細を参照してください。
アウトバウンド・コネクタの詳細
詳細ページには、アウトバウンド・コネクタに関する次の情報が表示されます:
- OCID
- すべてのOracle Cloud Infrastructureリソースには、Oracle Cloud Identifier (OCID)と呼ばれるOracle割当ての一意のIDがあります。コマンドライン・インタフェース(CLI)またはAPIを使用するには、アウトバウンド・コネクタのOCIDが必要です。サポートに連絡する際、OCIDも必要です。リソース識別子を参照してください。
- 作成日
- アウトバウンド・コネクタが作成された日時。
- コンパートメント
- アウトバウンド・コネクタの作成時に、アウトバウンド・コネクタが存在するコンパートメントを指定します。コンパートメントは、組織の管理者によって権限が付与されたグループのみがアクセスできる関連リソース(クラウド・ネットワーク、コンピュート・インスタンス、ファイル・システムなど)のコレクションです。コマンドライン・インタフェース(CLI)またはAPIを使用するには、アウトバウンド・コネクタのコンパートメントが必要です。詳細は、コンパートメントの管理を参照してください。
- 可用性ドメイン
- アウトバウンド・コネクタの作成時に、アウトバウンド・コネクタが存在する可用性ドメインを指定します。可用性ドメインはリージョン内の1つ以上のデータ・センターです。コマンドライン・インタフェース(CLI)またはAPIを使用するには、アウトバウンド・コネクタの可用性ドメインが必要です。詳細は、リージョンと可用性ドメインを参照してください。
- コネクタ・タイプ
- アウトバウンド・コネクタのタイプ。サポートされているタイプはLDAPBINDのみです。
- サーバーDNS名
- LDAPサービスが実行されているインスタンスの完全修飾ドメイン名
- PORT
- LDAPサービスのLDAPSポート
- バインド識別名
- LDAPサーバーにログインするために使用されるLDAP識別名
- シークレットOCID
- バインド識別名に関連付けられたパスワードを含むVault内のシークレットのOCID。
- シークレット・バージョン
- LDAPパスワード・シークレットのバージョン番号。
- 信頼できる認証の有効化
- アウトバウンド・コネクタがLDAPS接続に信頼できる証明書を使用するように構成されているかどうかを示します。
- 信頼できる証明書のシークレット
- 信頼できる証明書を含むVault内のシークレットのOCID。
- 信頼できる証明書シークレット・バージョン
- 信頼できる証明書シークレットのバージョン番号。
信頼できる証明書を構成する際の不正なリクエスト(HTTP 400)エラーのトラブルシューティング
アウトバウンド・コネクタを作成し、信頼できる証明書シークレットのOCIDおよびシークレット・バージョンを指定した場合、リクエストは不正なリクエスト(HTTP 400)で失敗する可能性があります。これは通常、サービスがシークレット、バージョンまたは証明書の内容を検証できなかったことを意味します。
一般的な原因と修正を次に示します。
原因: VaultシークレットOCIDが無効です
入力した信頼できる証明書OCIDは、Vault Secret OCIDではありません(またはシークレット名が無効です)。
処置: 有効なVaultシークレットOCIDを使用します
- OCIDが(ボールト、キーまたは別のリソース・タイプではなく)Vaultシークレットを指していることを確認します。
- 正しい信頼できる証明書シークレットOCIDを使用するようにアウトバウンド・コネクタを更新します。
原因: シークレット・バージョンが無効です
信頼できる証明書シークレットのバージョンは0より大きくする必要があります。0(または負の数)を使用すると、検証は失敗します。
処置: バージョンを0より大きい数値に設定してください
- Vaultで、信頼できる証明書シークレットで使用可能なシークレット・バージョンを確認します。
- 0より大きいシークレット・バージョンを使用するようにアウトバウンド・コネクタを更新します。
原因: 自己署名ルート証明書がありません
サービスは、シークレットから証明書(またはバンドル)を読み取り、自己署名(ルート)証明書を見つけることを期待します。見つからない場合、検証は失敗します。
処置: シークレットに自己署名ルート証明書が含まれていることを確認します
- シークレット・コンテンツを確認し、自己署名ルートCA証明書(単一の証明書またはバンドル内)が含まれていることを確認します。
- 必要に応じてVaultシークレット・コンテンツを更新し、アウトバウンド・コネクタを再作成します。
原因: 期限切れルート証明書
シークレットで見つかった自己署名(ルート)証明書は期限切れです。メッセージRoot Certificate is expiredが表示される場合があります。
処置: 期限切れの証明書を置き換えます
- 有効な(期限切れでない)ルート証明書をVaultシークレットにアップロードします。
- 更新によって新しいシークレット・バージョンが作成された場合は、そのバージョンを使用するようにアウトバウンド・コネクタを更新してから再試行してください。
原因: Vaultシークレットのアクセスに失敗しました
サービスはシークレットを読み取れません(権限が欠落している、シークレットが使用できない、接続の問題など)。
処置: 権限およびシークレットへのアクセスの確認
- ユーザーが変更を許可するIAMポリシーと、マウント・ターゲット(リソース・プリンシパル)がシークレットのコンパートメントの
secret-familyを読み取ることができることを確認します。 - シークレットが存在し、使用可能であり、Vaultアクセスが環境から機能していることを確認します。
原因: X.509証明書形式が無効です
シークレット・コンテンツは有効なX.509証明書(または証明書バンドル)ではないため、サービスはそれを解析できません。
処置: 有効なX.509証明書(またはバンドル)を格納します
- 格納した証明書データが適切にフォーマットされたX.509証明書(またはバンドル)であり、切り捨てられたり破損していないことを確認します。
- 修正された証明書の内容でVaultシークレットを更新してから、アウトバウンド・コネクタの作成/更新を再試行してください。