注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Data Connectionの主要な概念 - エージェント、ソース、および同期 - は、Foundryのリソースとして管理されます。これにより、プロジェクトやフォルダー間でリソースを柔軟に整理でき、Data Connectionリソースにマーキングなどのセキュリティプリミティブを適用できます。
プラットフォーム所有者は、Data Connectionリソースの共有を過剰に行わないよう注意する必要があります。ソースとエージェントの表示および編集権限を持つユーザーは、信頼できるパイプライン開発者である必要があります。同期によって生成されたデータセットは、必要に応じて下流のTransformsプロジェクトにインポートでき、エージェントやソースへのアクセスを共有せずにデータへのアクセスを許可できます。
このページでは、すべてのData Connectionリソースに対する権限の動作を説明しています。
以下に示すパーミッションはデフォルトです。一部の環境では、カスタムロールを使用してデフォルトのパーミッション動作が変更されている場合があります。
オーナー
エージェントのオーナーは通常、そのエージェントの作成者であり、以下の権限が与えられます。
エディター
エージェントのエディターは以下の操作ができます。
プロジェクトのエディターであるユーザーは、そのプロジェクトでエージェントを作成することができますが、そのプロジェクトのオーナーである必要があります。これは、ユーザーがエージェントを作成した後、ダウンロードリンクを生成するなど、エージェントに対して他の管理タスクを実行できないことを意味します。
ビューアー
エージェントのビューアーは以下の操作ができます。
オーナー
エディター
ソースのエディターは以下の操作ができます。
ソースの資格情報が許可する場合、同期によってソースシステムが変更される可能性があります(例:ディレクトリまたはS3ソースからファイルを削除する、任意のSQLを介してデータベースからデータを削除する)。ソースへのアクセス(またはそれを含むプロジェクト)を、ソースがデータにアクセスするために使用するアカウントへの完全アクセスを許可するユーザーに対してのみ、編集アクセスを許可する必要があります。
ビューアー
同期の権限は、関連するソースと出力データセットから導出されます。
オーナー
エディター
ビューアー
Webhookの権限は、関連するソースから完全に継承されます。
デフォルトでは、Webhookを実行するユーザーのみが、Data Connectionアプリケーションの履歴タブを使用してレスポンスを表示できます。webhooks:read-privileged-data
権限をカスタムまたはデフォルトのロールに追加することで、そのロールを持つユーザーがアクセス可能なすべてのWebhookの完全なリクエストとレスポンス履歴を表示できるようになります。標準的な推奨セットアップは、この権限を持つ新しいロール「Webhook Privileged Data Viewer」を追加し、関連するソースで完全なWebhook履歴を表示する必要があるユーザーにこのロールを持たせることです。
上記で述べたように、リソースには、追加のアクセス制御レベルとして組織およびマーキングが適用できます。ソースに適用される組織とマーキングは、そのソースでの同期から生成されたデータセットに伝播します。これは、ユーザーがソースから生成されたデータセット内のデータを表示できないことを意味します。ソースに適用されたすべての組織とマーキングにアクセスできる場合に限ります。
ソースには、様々なレベルの機密性を持つデータが含まれる可能性があるため、ソース内の利用可能なデータに適用されるすべての組織とマーキングでソースをマークすることをお勧めします。その後、stop_propagating
および/またはstop_requiring
機能を使用して、データをクリーンアップおよびマーク解除するためにトランスフォームを使用します。マーク解除についての詳細は、マーキングの削除および継承されたマーキングの削除のガイドを参照してください。
データが同期された後にデータに組織やマーキングを適用するだけでは十分ではないことに注意してください。ソースへのアクセスはデータへのアクセスと同等であるため、ソースはそれが含むものに適用される組織やマーキングでマークする必要があります。
簡単に思い出しておくと、主要なData Connectionリソースはエージェントとソースです。プラグインとドライバーは、エージェントに機能を追加するためにデプロイされます。
エージェントの推奨されるパーミッション設定は2つあります。オーガニゼーションごとに1つのプロジェクトにすべてのエージェントを配置するか、それぞれのエージェントを独自のプロジェクトに配置します。上の図は前者のオプションを示しています。以下の説明では、各オプションを選択する理由を説明しています。
オプション1:オーガニゼーションごとに1つのプロジェクトにすべてのエージェントを配置する。
すべてのエージェントを1つのプロジェクトに配置するのが最もクリーンな方法であり、すべてのエージェントを管理する1つのユーザーグループがある場合に推奨されます。これにより、エージェントへのアクセスをプロジェクトレベルで制御でき、エージェントの下流でソースと同期を別々にパーミッション設定できます。
エージェントマネージャーとすべてのソースエディターがすべてのエージェントにアクセスできる場合にのみ、このオプションを選択してください。エージェントにソースをデプロイするには、ユーザーはそのエージェントのエディター権限を持っている必要があることを覚えておいてください。
オプション2:それぞれのエージェントを独自のプロジェクトに配置する。
この方法では、エージェントのパーミッションの粒度が完全に制御できます。また、ソース管理の進化の過程で、「グループ」がいつでもずれることがないことを保証します。たとえば、エージェントをソースから割り当て/割り当て解除することができます。これにより、ユーザーがエージェントの全体グループにアクセスを許可せずに、将来のグループパーミッション変更に伴うプロジェクトの再構成が必要なくなります。
複数のグループがエージェントを管理しており、エージェントへのアクセスを個別にパーミッション設定したい場合に、この方法が推奨されます。
エージェントが含まれるプロジェクトのエディターは、そのエージェントで実行される新しいソースや同期を作成できます。これを行うべきでないユーザーにプロジェクトのエディター権限を与えないようにしてください。
それぞれのソースは、datasourceレイヤー内の独自のプロジェクトに配置する必要があります。ソースで定義された各同期は、ソースと同じプロジェクト内のデータセットに出力する必要があります。ソースにPIIのような機密データが含まれている場合は、ソースにマーキングを適用し、出力データセットに伝播させることができます。
ソースを含むプロジェクトのエディターは、そのソースの新しい同期を作成し、既存の同期を編集することができます。また、Webhookを作成し、Foundry内の他の場所で使用するために設定することができます。
ソースの資格情報が許可する場合、同期によってソースシステムが変更される可能性があることに注意してください。たとえば、ディレクトリやS3ソースからファイルを削除するか、任意のSQLを介してデータベースからデータを削除することができます。
ソースへのアクセス(またはそれを含むプロジェクト)を、ソースがデータにアクセスするために使用するアカウントへの完全アクセスを許可するユーザーに対してのみ、編集アクセスを許可する必要があります。
プラグインとJDBCドライバーには、2つの推奨されるパーミッション設定があります。オーガニゼーションごとに1つのプロジェクトにすべてのリソースを配置するか、JDBC/ドライバーをそれが必要な1つ以上のエージェントがあるプロジェクトに配置します。
オプション1:オーガニゼーションごとに1つのプロジェクトにすべてのプラグインとドライバーを配置する。
すべてのエージェントを管理する1つのユーザーグループがある場合に推奨されます。これにより、エージェントマネージャーは、アップロードされたすべてのプラグインとドライバーにアクセスできます。この方法は、すべてのエージェントマネージャー間でプラグインとドライバーへのアクセスが等しくある場合にのみ選択する必要があります。
この方法を実装するための推奨プロセスは次のとおりです。
オプション2:それぞれのプラグインとドライバータイプを独自のプロジェクトに配置する。
この方法では、特定の「センシティブ」なプラグインやドライバーを、他のものとは別にパーミッション設定することができます。この方法を採用する場合は、必要なエージェントオーナーに適切なパーミッションを各プロジェクトに与えることを確認してください。これにより、エージェントで使用できるようになります。