特定のバケットにロール条件を設定する方法
Data PlatformのIdentity Access Manager(IAM)を使用すると、プロジェクトで細かい条件を設定できます
目的
Data PlatformのIdentity Access Manager(IAM)を使用すると、プロジェクトで以下のような細かい条件を設定できます。
- リソースのプロパティ
- ユーザーのプロパティ
- データ(Advanced Data Access Controlを使用)
このチュートリアルでは、プロジェクト内のユーザーに、Lakehouse Managerのバケットでmy_bucketという名前のバケットのみにアクセスできるように制限を設定する方法を説明します。
必要なもの
以下が必要です。
- リソース
bucketへのアクセスを許可するIAMロール(例:デフォルトの「DataStore Editor」ロール)
チュートリアル
Lakehouse Managerのバケットへのアクセスを制限するには、Data Storeバケットへのアクセスを許可するロールをバインドする際に、技術名に条件を設定する必要があります。
Data Storeは、Data Platformのバケットの元の名前です。
このようなロールをお好みのグループ/ユーザーにバインドします。
次に、ロールバインドに条件を追加します。
条件は、リソースの技術名に設定する必要があります。直感的には、以下のようになります。
ただし、この条件を追加するだけでは、「my_bucket」という名前のリソースに対してロール全体がフィルタリングされます。バケットではないリソース(クエリ、ダッシュボード、パイプラインなど)も含まれます。言い換えると、ロールが他のリソースへのアクセスを許可している場合、それらもバケットと同様にフィルタリングされます。
したがって、以下のように条件を設定することをお勧めします。
ビジュアルビルダーを使用する
初期ロールが他のリソースへのアクセスを許可している場合、最初のルールを追加して、ロールで計画されているバケット以外のすべてのリソースへのアクセスを許可する必要があります。
条件を使用して、ロールで最初に許可されていないリソース/アクションへのアクセスを許可することはできません。条件はロールをさらにフィルタリングするだけです。
- フィールド:リソース
- オペレーター:等しくない
- 値:バケット
次に、ORオペレーターでブランチングを追加します。
ブランチング内に、ANDオペレーターで接続された2つのルールを追加します。
最初のルール:
- フィールド:リソース
- オペレーター:等しい
- 値:バケット
2番目のルール:
- フィールド:技術名
- オペレーター:等しい
- 値:my_bucket
確認をクリックします。ユーザー/グループは、現在、バケット「my_bucket」のみにアクセスでき、ロールに含まれる他のすべてのリソースにもアクセスできます。
このブランチングシステムは、一部のオブジェクト(例:タグ「dev」が付いているもの)への書き込み/削除アクセスを制限し、残りのオブジェクトへの読み取りアクセスを許可する場合にも使用できます。
CELエディターを使用する
CELでは、条件は以下のようになります。
さらに詳しくは、Identity Access Managerのカスタマイズ機能について、当社のドキュメントを参照してください。
また、必要に応じてお問い合わせください。当社のサポート&製品チームは、お客様が考えているAIアプリケーションを迅速に提供するお手伝いをするために専門的にサポートしています。
さらに詳しく
トレーニングや技術的なサポートが必要な場合は、営業担当者にお問い合わせください、またはプロフェッショナルサービスページを訪れて、当社の専門家がプロジェクトを分析するための見積もりをリクエストしてください。
質問をする、フィードバックを送信する、またはData Platformを構築するチームと直接交流するには、専用のDiscordチャネルをご利用ください。
OVHcloudサービスについてサポートが必要な場合は、ヘルプセンターでリクエストを作成してください。
ユーザーコミュニティに参加してください。

