【MLA-C01】AWSリソースのセキュリティ|IAM最小権限・KMS・Macie・Secrets Manager・VPCを図解

AWSリソースのセキュリティ MLA-C01 AWS資格の森 機械学習エンジニア(MLA)
無料MLA-C01 ドメイン4:監視・保守・セキュリティ|M4-3「AWSリソースのセキュリティ」。IAM最小権限・KMS・Macie・Secrets Manager・VPCを図解します。

MLシステムは、機微なデータと高価なリソースを扱います。誰がアクセスできるかデータは暗号化されているか機密情報は安全に管理されているかネットワークは隔離されているか——この守りがドメイン4の総仕上げです。この記事では、IAMの最小権限KMSMacieSecrets ManagerVPCを解説します。これでMLA-C01の4ドメインが揃います。前の記事は M4-2、全体像は シラバスマップ をどうぞ。

MLリソースをIAM・暗号化・ネットワークで多層的に守るイメージ図
図:セキュリティは「1つの対策」ではなく、アクセス制御・暗号化・ネットワーク隔離・機密管理を重ねる多層防御で守ります。

アクセス制御の基本:IAMと最小権限

セキュリティの土台はIAM(誰が何にアクセスできるかの管理)です。鉄則は最小権限(least privilege)——必要な操作に必要なだけの権限を与え、余計な権限は付けないこと。たとえば学習ジョブには、そのジョブが触るS3バケットへの読み書きだけを許可します。

過剰な権限と最小権限の違いを示す図
図:管理者権限を広く与えると、漏えい時の被害が大きくなります。必要な権限だけに絞ると、万一の影響を最小化できます。

SageMaker Role Managerを使うと、ML向けの最小権限ロールの作成を支援してくれます。

多層で守る:暗号化・機密管理・ネットワーク

IAMに加え、複数の対策を重ねます。

IAM・KMS・Secrets Manager・VPC・Macieを重ねた多層防御の図
図:アクセス制御(IAM)・暗号化(KMS)・機密管理(Secrets Manager)・ネットワーク隔離(VPC)・データ検査(Macie)を重ねて守ります。
サービス 役割
AWS KMS 暗号化に使う鍵の作成・管理。保存データの暗号化に使う
AWS Secrets Manager DB認証情報やAPIキーなどの機密情報を安全に保管・ローテーション
Amazon Macie S3内の個人情報(PII)を自動で検出・分類
Amazon VPC サブネット・セキュリティグループでネットワークを隔離

監査とCI/CDのセキュリティ

  • 監査・ログCloudTrailでAPI操作を記録し、継続的にセキュリティとコンプライアンスを確認
  • CI/CDのセキュリティ:パイプラインで使う認証情報をSecrets Managerで管理し、権限を最小化する
  • ネットワーク隔離:機微な学習・推論はVPC内に閉じ、必要な範囲だけ通信を許可

確認クイズ

Q1. あなたはSageMakerの学習ジョブ用にIAMロールを設定します。ジョブが必要とするのは、特定のS3バケットの読み書きと、学習に必要な一部のAPIだけです。セキュリティのベストプラクティスに沿った権限設定として、最も適切なものはどれですか。

A. 管理者権限(フルアクセス)を付与し、権限不足で止まらないようにする。
B. 最小権限の原則に従い、必要なS3バケットと必要なAPIへの権限だけを与える。
C. すべてのジョブやユーザーで同じ広い権限を共有する。
D. 権限管理は煩雑なので、認証情報をコードに直接書いて回避する。

Q2. あなたは学習データやモデルを保存するS3バケットを保存時に暗号化し、その暗号鍵を一元的に管理・制御したいと考えています。鍵の作成やアクセス制御、ローテーションを担うサービスとして最も適切なものはどれですか。

A. データは平文のまま保存し、必要になったら暗号化を検討する。
B. Amazon CloudWatchで鍵を保存・管理する。
C. 鍵をソースコード内にハードコードして共有する。
D. AWS KMSで暗号鍵を作成・管理し、S3の保存時暗号化に利用する。

Q3. あなたは大量のデータが入ったS3バケットに、個人情報(PII)が意図せず含まれていないかを自動で検出・分類し、機微なデータの所在を把握したいと考えています。最も適切なサービスはどれですか。

A. Amazon Macieで、S3内の個人情報(PII)を自動的に検出・分類する。
B. 担当者がS3のファイルを1つずつ開いて目視で確認する。
C. AWS CloudTrailのAPIログからPIIの有無を判断する。
D. Amazon CloudWatchのメトリクスでPIIを検出する。

あなたのMLパイプラインは、外部データベースへの接続に認証情報(ユーザー名・パスワード)を使います。これらをコードに直書きせず、安全に保管して、必要に応じて自動でローテーションしたいと考えています。最も適切なサービスはどれですか。

A. 認証情報をソースコードに直接書き込み、リポジトリで共有する。
B. 認証情報を平文のテキストファイルにしてS3に置く。
C. AWS Secrets Managerで認証情報を安全に保管し、自動ローテーションを設定する。
D. 認証情報を環境変数に平文で置き、誰でも参照できるようにする。

よくある質問(FAQ)

Q. 最小権限とはどういう考え方ですか?

A. 必要な操作に必要なだけの権限を与え、余計な権限を付けない原則です。万一の漏えい時に被害を最小化できます。

Q. KMSとSecrets Managerの違いは?

A. KMSは暗号化の鍵を管理Secrets Managerはパスワードやキーなどの機密情報そのものを保管・ローテーションします。

Q. Macieは何を検出しますか?

A. S3内の個人情報(PII)を自動で検出・分類し、機微なデータの所在を把握できます。

まとめ

  • 土台はIAMの最小権限(必要な分だけ・SageMaker Role Managerが支援)
  • 多層防御:暗号化=KMS/機密管理=Secrets Manager/PII検出=Macie/ネットワーク隔離=VPC
  • 監査はCloudTrail、CI/CDの認証情報もSecrets Managerで安全に
🎉 これでMLA-C01の全4ドメインが完了です

※本記事はAWS公式試験ガイド(MLA-C01)および各サービスの公開ドキュメントに基づき、エンジニアKが作成しています。サービス仕様は更新されることがあるため、最新は必ずAWS公式でご確認ください。本サイトはAmazon Web Services, Inc.の公式サイトではありません。AWSは同社の商標です。

コメント

タイトルとURLをコピーしました