ARNとサービスエンドポイントの理解
各リソースを識別するAmazon Resource Nameの構造を読み解きます。
「ARNとサービスエンドポイントの理解」はCoddyKit上の無料AWS Security Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAWS Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 AWS Security Academyコースには全4レッスンが含まれています。
すべてのリソースに名前を付ける
ARN(Amazon Resource Name)は、AWSのすべてのリソースを一意に識別するIDです。ポリシーやログでは、すべてARNによってリソースを指定するため、ARNの読み方を学ぶことは不可欠です。
ARNの形式
ARNは、コロンで区切られた固定形式です:arn:partition:service:region:account-id:resource。各部分によって対象が絞り込まれるため、長いARNでも一目で読み取れます。例を確認してください。
arn:aws:s3:::my-secure-bucket/reports/q1.pdfパーティションとサービス
パーティションは通常awsで、GovCloudや中国向けには専用のパーティションがあります。サービスの部分にはs3やiamのようにサービス名が入ります。まずこの2つで大まかな対象範囲を決めます。
リージョンとアカウント
リージョンの部分にはリージョン名が入り、グローバルサービスでは空になります。account-idは所有者を示す12桁の番号です。クロスアカウントで作業する場合、この番号からリソースの所有者がわかります。
arn:aws:iam::123456789012:role/SecurityAuditRoleリソース部分
最後の部分はリソースそのもので、role/のようなプレフィックスが付くこともあります。1つの対象を正確に指定することも、ワイルドカードで複数を指定することもできます。IAMポリシーでは、主にこの部分を対象にします。
IAMでARNが重要な理由
IAMポリシーでは、アクションの適用対象を正確に指定するため、ResourceフィールドにARNを記述します。ARNを読めば、権限が限定的か、それとも危険なほど広範囲かをすぐに判断できます。
ARN内のワイルドカード
ARN内のワイルドカード(*)は、複数のリソースに一致します。bucket/*は、その中のすべてのオブジェクトを意味します。単独の*はすべてに一致し、ほとんどの場合広すぎる権限になります。注意してください。
arn:aws:s3:::my-secure-bucket/*サービスエンドポイントとは
サービスエンドポイントは、リクエストが実際に到達するURLです。たとえばs3.us-east-1.amazonaws.comのようなものです。ほとんどはリージョン単位であるため、カバレッジもリージョンごとに設定します。
プライベートアクセス用のVPCエンドポイント
VPCエンドポイントを使うと、パブリックインターネットを経由せずに、リソースからAWSサービスへプライベートにアクセスできます。これによりトラフィックをAWS内に留め、外部への露出を減らせます。
識別子を活用する
ARNはリクエストの「何を」を示し、エンドポイントは「どこへ」を定義します。両者を組み合わせることで、正確なポリシーを記述できます。これは、最小権限に関する試験問題で重要なポイントになることがよくあります。
条件とログ内のARN
ARNはResourceフィールド以外にも登場します。ポリシーのconditionsやCloudTrailのログにも現れます。ARNをスムーズに読めれば、より厳格なルールを作成し、誰が何をしたのかを追跡できます。
クイックチェック
ARNを読み解いてみましょう。
まとめ
ARNはすべてのリソースを一意に識別し、ポリシーはResourceフィールドでARNを対象にします。広範囲のワイルドカードは最小権限の原則を損ないます。VPCエンドポイントを使うと、サービスへプライベートにアクセスできます。
よくある質問
「ARNとサービスエンドポイントの理解」レッスンは無料ですか?
はい。「ARNとサービスエンドポイントの理解」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、AWS Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 AWS Security Academyコースには全4レッスンが含まれています。
「ARNとサービスエンドポイントの理解」で何を学びますか?
各リソースを識別するAmazon Resource Nameの構造を読み解きます。 ブラウザで直接実行するハンズオンコードでAWS Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
AWS Security Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのAWS Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「ARNとサービスエンドポイントの理解」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このAWS Security Academyレッスンでコードを書いて実行できますか?
はい。すべてのAWS Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- AWS Management Consoleの操作
- リージョン、アベイラビリティーゾーン、エッジロケーション
- AWS CLIコマンドの概念的な読み方
- ARNとサービスエンドポイントの理解