Glueの使い方的な㉛(GlueやAthenaで見えるテーブルを制限する)
Glueの使い方的な㉛(GlueやAthenaで見えるテーブルを制限する):
ユーザーAはGlueデータカタログのテーブル1が閲覧操作できるが、ユーザーBはGlueデータカタログのテーブル1を閲覧操作できないなどを実現する。
https://aws.amazon.com/jp/about-aws/whats-new/2018/10/aws-glue-now-supports-resource-based-policies-and-resource-level-permissions-and-for-the-AWS-Glue-Data-Catalog/
管理者ユーザーは全部操作でき、se2_user31という名前のユーザーは閲覧操作できるテーブルに制限が掛かってることを確認
Glueデータカタログのデータベースが全部見えます
Glueデータカタログのテーブルが全部見えます
ユーザー名:se2_user31
対象データベース:se2
対象テーブル:se2の配下すべて
Glueの画面から、[設定]をクリックし、"アクセス権限"の箇所にポリシーを書きます。
ポリシーは以下のように、「se2_user31というユーザーが、データカタログのデータベースse2とデータカタログのテーブルのse2配下全部に対して閲覧操作可能」という内容です。
※se2_user31ユーザーのIAMポリシーにはGlueの設定はなにも入れない
se2_user31ユーザーでログインし、データカタログのデータベースを見る。
se2だけ表示される
データカタログのテーブルを見る。
なにも見えない
検索窓で「データベース:se2」でフィルタリングすると表示される
Athenaからも確認。同様にse2のデータベースとテーブルだけが表示される
この機能はメタデータへの権限制御なのでS3は関係ない。S3への権限があればS3にある実データを読み書き削除を行えてしまう。必要なら実データが入っているS3への権限制御も付与を行う
アクセスコントロール用の AWS Glue リソースポリシー
https://docs.aws.amazon.com/ja_jp/glue/latest/dg/glue-resource-policies.html
AWS Glue データカタログ のデータベースとテーブルへのきめ細かなアクセス
https://docs.aws.amazon.com/ja_jp/athena/latest/ug/fine-grained-access-to-glue-resources.html
Glueの使い方まとめ
https://qiita.com/pioho07/items/32f76a16cbf49f9f712f
Glue リソースポリシーでアクセスコントロール
ユーザーAはGlueデータカタログのテーブル1が閲覧操作できるが、ユーザーBはGlueデータカタログのテーブル1を閲覧操作できないなどを実現する。https://aws.amazon.com/jp/about-aws/whats-new/2018/10/aws-glue-now-supports-resource-based-policies-and-resource-level-permissions-and-for-the-AWS-Glue-Data-Catalog/
試す
管理者ユーザーは全部操作でき、se2_user31という名前のユーザーは閲覧操作できるテーブルに制限が掛かってることを確認
管理者ユーザーから確認
Glueデータカタログのデータベースが全部見えますGlueデータカタログのテーブルが全部見えます
特定ユーザーに閲覧操作できるテーブルを限定します
ユーザー名:se2_user31対象データベース:se2
対象テーブル:se2の配下すべて
Glueの画面から、[設定]をクリックし、"アクセス権限"の箇所にポリシーを書きます。
ポリシーは以下のように、「se2_user31というユーザーが、データカタログのデータベースse2とデータカタログのテーブルのse2配下全部に対して閲覧操作可能」という内容です。
※se2_user31ユーザーのIAMポリシーにはGlueの設定はなにも入れない
{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::xxxxxxxxxxxx:user/se2_user31" }, "Action" : "glue:*", "Resource" : [ "arn:aws:glue:ap-northeast-1:xxxxxxxxxxxx:catalog", "arn:aws:glue:ap-northeast-1:xxxxxxxxxxxx:database/se2", "arn:aws:glue:ap-northeast-1:xxxxxxxxxxxx:table/se2/*" ] } ] }
動作確認
se2_user31ユーザーでログインし、データカタログのデータベースを見る。se2だけ表示される
データカタログのテーブルを見る。
なにも見えない
検索窓で「データベース:se2」でフィルタリングすると表示される
Athenaからも確認。同様にse2のデータベースとテーブルだけが表示される
注意
この機能はメタデータへの権限制御なのでS3は関係ない。S3への権限があればS3にある実データを読み書き削除を行えてしまう。必要なら実データが入っているS3への権限制御も付与を行う
その他
アクセスコントロール用の AWS Glue リソースポリシーhttps://docs.aws.amazon.com/ja_jp/glue/latest/dg/glue-resource-policies.html
AWS Glue データカタログ のデータベースとテーブルへのきめ細かなアクセス
https://docs.aws.amazon.com/ja_jp/athena/latest/ug/fine-grained-access-to-glue-resources.html
Glueの使い方まとめ
https://qiita.com/pioho07/items/32f76a16cbf49f9f712f
コメント
コメントを投稿