Datastream は Secret Manager と統合されているため、ソース データベースのパスワードなどの認証リソースを安全に保存できます。接続プロファイルを作成するときにプレーン テキストのパスワードを使用するのではなく、シークレットを作成して使用します。
シークレットとは
シークレットは、ラベル、アノテーション、権限などのメタデータを含むグローバル リソースです。
シークレットにはシークレット バージョンもあります。シークレット バージョンには、API キー、パスワード、証明書などのシークレット リソースの実際のデータが保存されます。各バージョンには一意の識別子またはタイムスタンプがあります。
シークレットと暗号鍵の違い
シークレットの管理は暗号鍵の管理と同様に重要ですが、データ セキュリティの異なる領域に重点を置いています。ユースケースと保存する機密情報の種類に応じて、どちらか一方を使用します。
通常は、機密データをバイナリ blob またはテキスト文字列として安全に保存して管理するために、シークレットを選択します。シークレットには実際のデータが保存されますが、アクセスするには、シークレット メタデータで定義された特定の権限が必要です。
一方、データの暗号化または復号が必要な場合は、暗号鍵が適しています。暗号化に使用される実際の暗号データは表示または抽出できません。Cloud Key Management Service などの鍵管理システムは、通常、データベース内の行、画像、ファイルなどの暗号化など、より要求の厳しいシナリオを管理するために使用されます。
データに追加の保護レイヤが必要な場合は、顧客管理の暗号鍵(CMEK)を有効にして、Cloud Key Management Service に保存されている独自の暗号鍵を使用して、Secret Manager のシークレットを保護できます。Datastream で CMEK を使用する方法の詳細については、顧客管理の暗号鍵(CMEK)を使用するをご覧ください。
Datastream で Secret Manager を使用する
Datastream で使用する機密データを保存するには、Secret Manager を使用してシークレットを作成する必要があります。詳細については、シークレットを作成するをご覧ください。
接続プロファイルの接続の詳細を定義するときに、シークレットを作成することもできます。詳細については、接続プロファイルを作成するをご覧ください。
必要なロール
Datastream で Secret Manager を使用するために必要な権限を取得するには、Datastream サービス アカウントに対する Secret Manager のシークレット アクセサー (roles/secretmanager.secretAccessor
)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。