11---
22slug : /cloud/data-sources/secure-s3
3- sidebar_label : ' S3 データへ安全にアクセスする '
4- title : ' S3 データへ安全にアクセスする '
5- description : ' この記事では、ClickHouse Cloud のお客様がロールベースのアクセス制御を活用して Amazon Simple Storage Service(S3)で認証を行い、データへ安全にアクセスする方法を説明します 。'
3+ sidebar_label : ' S3 データへの安全なアクセス '
4+ title : ' S3 データへの安全なアクセス '
5+ description : ' この記事では、ClickHouse Cloud のお客様がロールベースのアクセス制御を活用して Amazon Simple Storage Service (S3) の認証を行い、データに安全にアクセスする方法を説明します 。'
66keywords : ['RBAC', 'Amazon S3', '認証']
77doc_type : ' guide'
88---
99
1010import Image from '@theme/IdealImage ';
11- import secure_s3 from '@site/static /images/cloud/security/secures3.jpg ';
11+ import secure_s3 from '@site/static /images/cloud/security/secures3.png ';
1212import s3_info from '@site/static /images/cloud/security/secures3_arn.png';
1313import s3_output from '@site/static /images/cloud/security/secures3_output.jpg';
1414
15- この記事では、ClickHouse Cloud のユーザーがロールベースアクセスを活用して Amazon Simple Storage Service (S3) に対して認証を行い、データに安全にアクセスする方法を説明します 。
15+ この記事では、ClickHouse Cloud のお客様がロールベースのアクセス制御を利用して Amazon Simple Storage Service (S3) に認証し、データへ安全にアクセスする方法を示します 。
1616
1717
1818## はじめに {#introduction}
1919
20- 安全な S3 アクセスの構成に入る前に、その仕組みを理解しておくことが重要です。以下では、ClickHouse の各種サービスが、顧客の AWS アカウント内のロールを引き受けることで、プライベート S3 バケットへアクセスする方法の概要を示します。
21-
22- <Image img ={secure_s3} size =" md " alt =" ClickHouse による安全な S3 アクセスの概要 " />
23-
24- この方式により、顧客は S3 バケットへのすべてのアクセスを 1 か所(引き受けたロールの IAM ポリシー)で一元管理できるようになり、すべてのバケットポリシーを個別に確認してアクセス権を追加・削除する必要がなくなります。
20+ セキュアな S3 アクセスの設定に入る前に、その仕組みを理解しておくことが重要です。以下では、ClickHouse の各種サービスが、顧客の AWS アカウント内のロールを引き受けることで、プライベートな S3 バケットへアクセスできる仕組みの概要を示します。
2521
22+ <Image img ={secure_s3} size =" lg " alt =" ClickHouse によるセキュアな S3 アクセスの概要 " />
2623
24+ この方法により、顧客は S3 バケットへのすべてのアクセスを、各バケットのポリシーを個別に確認してアクセス権限を追加・削除することなく、引き受けられるロールに設定された IAM ポリシー 1 箇所で一元的に管理できます。
2725
2826## セットアップ {#setup}
2927
30- ### ClickHouse サービスの IAM ロール ARN の取得 {#obtaining-the-clickhouse-service-iam-role-arn}
28+ ### ClickHouse サービスの IAM ロール ARN を取得する {#obtaining-the-clickhouse-service-iam-role-arn}
3129
32301 - ClickHouse Cloud アカウントにログインします。
3331
34322 - 連携を作成したい ClickHouse サービスを選択します。
3533
36343 - ** Settings** タブを選択します。
3735
38- 4 - ページ下部にある ** Network security information** セクションまでスクロールします。
36+ 4 - ページ下部の ** Network security information** セクションまでスクロールします。
3937
40- 5 - 下図のように 、そのサービスに対応する ** Service role ID (IAM)** の値をコピーします。
38+ 5 - 下図に示すように 、そのサービスに対応する ** Service role ID (IAM)** の値をコピーします。
4139
42- <Image img ={s3_info} size =" lg " alt =" ClickHouse サービスの IAM ロール ARN の取得 " border />
40+ <Image img ={s3_info} size =" lg " alt =" ClickHouse サービスの IAM ロール ARN を取得する " border />
4341
44- ### IAM Assume Role の設定 {#setting-up-iam-assume-role}
42+ ### IAM ロールの引き受けの設定 {#setting-up-iam-assume-role}
4543
46- #### オプション 1: CloudFormation スタックでデプロイする {#option-1-deploying-with-cloudformation-stack}
44+ #### オプション 1: CloudFormation スタックを使用してデプロイする {#option-1-deploying-with-cloudformation-stack}
4745
48- 1 - IAM ロールの作成および管理権限を持つ IAM ユーザーで、Web ブラウザから AWS アカウントにログインします。
46+ 1 - IAM ロールの作成および管理権限を持つ IAM ユーザーで、ウェブブラウザから自分の AWS アカウントにログインします。
4947
50- 2 - [ この URL] ( https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks/quickcreate?templateURL=https://s3.us-east-2.amazonaws.com/clickhouse-public-resources.clickhouse.cloud/cf-templates/secure-s3.yaml\ & stackName=ClickHouseSecureS3 ) にアクセスして CloudFormation スタックを作成します 。
48+ 2 - CloudFormation スタックを作成するために [ この URL] ( https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks/quickcreate?templateURL=https://s3.us-east-2.amazonaws.com/clickhouse-public-resources.clickhouse.cloud/cf-templates/secure-s3.yaml&stackName=ClickHouseSecureS3 ) にアクセスします 。
5149
52- 3 - ClickHouse サービスに紐づく ** IAM Role** を入力(または貼り付け )します。
50+ 3 - ClickHouse サービスに対応する ** IAM Role** を入力(またはペースト )します。
5351
54- 4 - CloudFormation スタックを設定します。以下は各パラメータの補足情報です 。
52+ 4 - CloudFormation スタックを設定します。以下は各パラメータに関する補足情報です 。
5553
56- | Parameter | Default Value | 説明 |
57- | :------------------------ | :------------------: | :------------------------------------------------------------ |
58- | RoleName | ClickHouseAccess-001 | ClickHouse Cloud があなたの S3 バケットにアクセスするために使用する新しいロールの名前 |
59- | Role Session Name | * | Role Session Name は共有シークレットとして使用でき、バケットをさらに保護するのに役立ちます。 |
60- | ClickHouse Instance Roles | | この Secure S3 連携を利用できる ClickHouse サービスの IAM ロールを、カンマ区切りで指定します。 |
61- | Bucket Access | Read | 指定したバケットに対するアクセスレベルを設定します。 |
62- | Bucket Names | | このロールがアクセスできる ** バケット名** を、カンマ区切りで指定します。 |
54+ | Parameter | Default Value | Description |
55+ | :--- | :----: | :---- |
56+ | RoleName | ClickHouseAccess-001 | ClickHouse Cloud が S3 バケットへアクセスする際に使用する、新しいロールの名前です。 |
57+ | Role Session Name | * | Role Session Name は、共有シークレットとして使用し、バケットをさらに保護するために利用できます。 |
58+ | ClickHouse Instance Roles | | この Secure S3 連携を使用できる ClickHouse サービス IAM ロールの、カンマ区切りリストです。 |
59+ | Bucket Access | Read | 指定されたバケットに対するアクセスレベルを設定します。 |
60+ | Bucket Names | | このロールがアクセス権を持つ ** バケット名** のカンマ区切りリストです。 |
6361
6462* 注意* : バケットの完全な ARN ではなく、バケット名のみを指定してください。
6563
66645 - ** I acknowledge that AWS CloudFormation might create IAM resources with custom names.** チェックボックスを選択します。
6765
68666 - 右下の ** Create stack** ボタンをクリックします。
6967
70- 7 - CloudFormation スタックの作成がエラーなく完了したことを確認します 。
68+ 7 - CloudFormation スタックがエラーなく完了したことを確認します 。
7169
72- 8 - CloudFormation スタックの ** Outputs** タブを選択します 。
70+ 8 - CloudFormation スタックの ** Outputs** を選択します 。
7371
74- 9 - この連携用に ** RoleArn** の値をコピーします。これは S3 バケットへアクセスする際に必要となる値です 。
72+ 9 - この連携用に ** RoleArn** の値をコピーします。これは S3 バケットへアクセスするために必要な値です 。
7573
76- <Image img ={s3_output} size =" lg " alt =" IAM ロール ARN を示す CloudFormation スタックの出力 " border />
74+ <Image img ={s3_output} size =" lg " alt =" CloudFormation スタックの出力に表示された IAM Role ARN " border />
7775
7876#### オプション 2: IAM ロールを手動で作成する {#option-2-manually-create-iam-role}
7977
80- 1 - IAM ロールの作成および管理権限を持つ IAM ユーザーで、Web ブラウザから AWS アカウントにログインします。
78+ 1 - IAM ロールの作成および管理権限を持つ IAM ユーザーで、ウェブブラウザから自分の AWS アカウントにログインします。
8179
82- 2 - IAM Service Console を開きます 。
80+ 2 - IAM サービスコンソールにアクセスします 。
8381
84- 3 - 以下の IAM ポリシーおよび信頼ポリシーを使用して、新しい IAM ロールを作成します。
82+ 3 - 次の IAM ポリシーおよび信頼ポリシーを使用して、新しい IAM ロールを作成します。
8583
86- 信頼ポリシー(` {ClickHouse_IAM_ARN} ` を、お使いの ClickHouse インスタンスに対応する IAM ロール ARN に置き換えてください):
84+ 信頼ポリシー(` {ClickHouse_IAM_ARN} ` を、ClickHouse インスタンスに対応する IAM ロール ARN に置き換えてください):
8785
8886``` json
8987{
@@ -100,7 +98,7 @@ import s3_output from '@site/static/images/cloud/security/secures3_output.jpg';
10098}
10199```
102100
103- IAM ポリシー(` {BUCKET_NAME} ` をバケット名に置き換えてください):
101+ IAM ポリシー(` {BUCKET_NAME} ` をバケット名に置き換えてください):
104102
105103``` json
106104{
@@ -130,23 +128,23 @@ IAM ポリシー(`{BUCKET_NAME}` をバケット名に置き換えてくださ
130128}
131129```
132130
133- 4 - 作成後、新しい ** IAM ロール ARN ** をコピーします。これは S3 バケットにアクセスするために必要なものです。
131+ 4 - 作成後に新しい ** IAM Role Arn ** をコピーします。これは S3 バケットにアクセスするために必要なものです。
134132
135133
136- ## ClickHouseAccess ロールで S3 バケットにアクセスする {#access-your-s3-bucket-with-the-clickhouseaccess-role}
134+ ## ClickHouseAccess ロールを使用して S3 バケットにアクセスする {#access-your-s3-bucket-with-the-clickhouseaccess-role}
137135
138- ClickHouse Cloud には 、S3 テーブル関数内で ` extra_credentials ` を指定できる新機能があります 。以下は、前述の手順で作成した新しいロールを使ってクエリを実行する例です 。
136+ ClickHouse Cloud では 、S3 テーブル関数の一部として ` extra_credentials ` を指定できる新機能が利用できます 。以下は、上で作成した新しいロールを使用してクエリを実行する例です 。
139137
140138``` sql
141139DESCRIBE TABLE s3(' https://s3.amazonaws.com/BUCKETNAME/BUCKETOBJECT.csv' ,' CSVWithNames' ,extra_credentials(role_arn = ' arn:aws:iam::111111111111:role/ClickHouseAccessRole-001' ))
142140```
143141
144- 以下は、` role_session_name ` を共有シークレットとして用いてバケット内のデータをクエリする例です 。` role_session_name ` が正しくない場合、この操作は失敗します。
142+ 以下は、` role_session_name ` を共有シークレットとして使用し、バケットからデータをクエリするサンプルクエリです 。` role_session_name ` が正しくない場合、この操作は失敗します。
145143
146144``` sql
147145DESCRIBE TABLE s3(' https://s3.amazonaws.com/BUCKETNAME/BUCKETOBJECT.csv' ,' CSVWithNames' ,extra_credentials(role_arn = ' arn:aws:iam::111111111111:role/ClickHouseAccessRole-001' , role_session_name = ' secret-role-name' ))
148146```
149147
150148::: note
151- データ転送料金を抑えるため、ソースの S3 は ClickHouse Cloud サービスと同じリージョンに配置することを推奨します。詳細は [ S3 pricing] ( https://aws.amazon.com/s3/pricing/ ) を参照してください。
149+ データ転送料金を抑えるため、ソースの S3 バケットは ClickHouse Cloud サービスと同じリージョンに配置することを推奨します。詳細については [ S3 pricing] ( https://aws.amazon.com/s3/pricing/ ) を参照してください。
152150:::
0 commit comments