« 10月のAWS Black Belt オンラインセミナーのご案内 | メイン | AWS Black Belt Online Seminar「クラウドのためのアーキテクチャ設計-ベストプラクティス-」の資料およびQA公開 »

AWS Black Belt Online Seminar「AWS Identity and Access Management (IAM)」「AWS Key Management Service (KMS)」の資料およびQA公開

こんにちは、テクニカルトレーナーの鬼形です。

先日開催されました、「AWS Identity and Access Management (IAM)」「AWS Key Management Service (KMS)」の資料およびQAが公開されましたので是非ご覧ください。

「AWS Identity and Access Management (IAM)」 

 
「AWS Identity and Access Management (IAM)」について頂いたご質問の一部とその回答です。
Q1. 認証キーについて、推奨の保管方法は何でしょうか?
保管に関する特別な推奨ということではございませんが、そもそも認証キーの取扱いに関しどのような点に気を付けるかということはIAMベストプラクティス等を参照ください。
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/best-practices.html

Q2.「ユーザ自身によるパスワード変更の許可」を設定した場合、あとはコンソールにログインすることができればユーザ自身によるパスワード変更が可能でしょうか?また、MFAのアクティベーションはユーザ自身で可能でしょうか?
はい、詳しくは下記のドキュメントを参照ください。
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_credentials_passwords_enable-user-change.html
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_credentials_passwords_user-change-own.html

ユーザーにMFAのアクティベーションを許可するための権限については下記のドキュメントを参考にして頂けると思います。
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_credentials_delegate-permissions_examples.html#creds-policies-mfa-console
https://docs.aws.amazon.com/ja_jp/IAM/latest/APIReference/Welcome.html

Q3. 特定のVPCへのアクセスを制限するポリシーを作成することができますか?
VPC、もしくはVPC上のどのAWSリソースに対するどのような操作に対してかということで状況は変わるかと思います。
下記のドキュメントにはAmazon VPC のリソースに対するアクセスの制御がサンプルポリシーと共に紹介されています。
https://docs.aws.amazon.com/ja_jp/AmazonVPC/latest/UserGuide/VPC_IAM.html

また以下のチュートリアルもご質問の内容に対する参考になるかと思われます。
https://aws.amazon.com/jp/premiumsupport/knowledge-center/iam-policy-restrict-vpc/

Q4. S3にアクセスできるIAMロールをEC2に付けると、そのEC2にログインできる人は誰でもS3にアクセスできてしまいます。認証情報を使わずに自分たちで実装したアプリケーションだけがアクセスできるような良い方法はありますか?
S3にアクセスできるIAMロールをEC2で利用する場合、おっしゃる通りかと思います。
アプリケーションに権限を持たせたい場合はSTSでAssumeRoleを使いS3にアクセスするための一時的な認証情報を得るということも検討できるかと思います。
ただしその場合もEC2のIAMロールでAssumeRoleの権限を持たせるために根本的な解決ではないかもしれません。
今回のWebinarのFederationで触れたように認証と組み合わせることができるとよりセキュアに権限を持たせる一つの方法になるかと思われます。

Q5. AWS Accountの複数利用におけるベストプラクティスはありますか?
こちらのチュートリアルは参考になりますでしょうか?
お客様の要件に関係してくるテーマでもありますので、もしお悩みのようでしたらAWSやパートナー様にコンタクトいただければと思います。
https://aws.amazon.com/answers/account-management/aws-multi-account-security-strategy/

Q6. Condition に記載する際、同一条件の値が異なる(例えばこのIPとこのIPの場合)場合のOR条件はわかるのですが、別の条件間のOR条件はできないのでしょうか?
同じCondition Blockの中では仰る通りです。
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_policies_elements.html#Condition

異なる条件間でORのような権限設定をしたい場合はStatementを別けて明示的なAllowもしくは明示的なDenyを用いることで同様の機能の実装を検討できる可能性があります。
ただし、特に明示的なDenyを用いる場合は最少権限の原則の観点から十分に気を付けるようにしてください。
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_policies_evaluation-logic.html

Q7. InlinePolicyの制限はありますか?
ポリシー名やエンティティあたりのポリシーサイズなどに制限があります。
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_iam-limits.html
 
「AWS Key Management Service (KMS)」

 
「AWS Key Management Service (KMS)」について頂いたご質問の一部とその回答です。
Q1. マスターキーを作り変えることはできるんですか?
マスターキーを切り替えるという事ができるか?というご質問として解釈させていただきます。
ReEncrypt APIを利用すれば、あるマスターキーで暗号化されたデータ(データキー)を新しいマスターキーで暗号化し直すことが可能です。

Q2. 無効化した鍵も課金対象とのことですが、課金されたくない場合は鍵を削除すれば良いとの認識で正しいでしょうか。
はい。ご認識のとおりです。鍵を削除すれば課金の対象外となります。鍵の削除には待機期間がありますが、待機期間入った段階から課金対象外となります。

Q3. マルチリージョンの場合の鍵管理プラクティスを教えてください
それぞれのリージョンに同一AliasのCMKを作成することによって、アプリケーションコード内ではリージョンを意識せずにマルチリージョンでKMSを利用した暗号化が可能です。以下もご参照下さい。
https://aws.amazon.com/jp/blogs/news/how-to-use-the-new-aws-encryption-sdk-to-simplify-data-encryption-and-improve-ap/

Q4. S3バケットにファイルを置いたら勝手に暗号化されるようなインテグレーションも可能ですか?それともイベントドリブンでLambdaなどで実装が必要ですか?
S3のオブジェクトを暗号化する場合、PUTリクエスト時に明示的に暗号化の指定が必要となります。
一旦配置したオブジェクトを後から暗号化するといった場合はご質問頂いているとおりLambda等を利用してご自身で実装頂く必要があります。
尚、S3のバケットポリシーにてSSEの強制化が可能です。この場合、SSEを指定しないAPIコールは失敗します。詳細は以下をご参照下さい・
http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/UsingKMSEncryption.html#APISupportforKMSEncryption

Q5. ローテーションされた鍵を消すタイミングが今ひとつ理解できてないです。新しい鍵で復号できないなら、古い鍵で暗号化した何かが残っている場合には古い鍵をずっと残す必要があるということでしょうか。
マスターキーのローテーションを設定した場合、ローテーションはKMSで自動的に行われます。古いHBK/EKTは復号用としてKMS内に保管され、個別に特定の世代のものを削除することは出来ません。ローテーションが行われても、暗号化/復号処理は透過的に行われるため、ユーザーが意識することは基本的に有りません。コストの観点で鍵の削除を行いたいといったご要望の場合は、質問1.の回答のようにRe-EncryptでCMKを切り替えた後にCMKごと削除する必要があります。尚、KMSによって生成されるデータキーのローテーションについては、お客様にて任意のタイミングで実施いただけます。

AWS Black Belt Online Seminarの過去の資料は こちら で公開されております。

今後のAWS Black Belt Online Seminarのスケジュールは こちら をご覧ください。

次回も多くの方のご参加をお待ちしております。

コメント

Twitter, Facebook

このブログの最新情報はTwitterFacebookでもお知らせしています。お気軽にフォローください。

2018年4 月

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30