Xイノベーション本部 ソフトウェアデザインセンター セキュリティグループの福山です。
AWSセキュリティの認定資格である「AWS Certified Security - Specialty(SCS-C01)」を受験し、合格しました。
この資格を取得することで、AWSクラウドにおけるデータやワークロードのセキュリティ確保に関する
専門知識を保有することが認定されます。
今後受験する方のお役に立てればと思い、取り組んだことを共有します。
受験するきっかけ
私は2022年3月にISIDに入社しました。全社横断的にセキュリティを推進していくチームで、
クラウド環境のSOC、IRという役割をいただいています。
まずは当資格を取得することで、AWSのセキュリティを網羅的に理解することを目標としました。
前提知識
- 前職はインフラエンジニアで、AWSのインフラ構築・保守の経験が2~3年
- AWS SAAは取得済み(1回目は不合格、2回目は732点で何とか合格)
- 現在は業務で Security Hub、GuardDuty等のセキュリティ系サービスを頻繁に触っている
勉強方法
勉強期間は2ヶ月程度を要しました。以下に勉強の流れを記載します。
➀試験内容を把握する
- 試験ガイドに目を通す
試験範囲は170分、合格ラインは750点となっています。
⇒試験ガイド - AWS公式トレーニングを試す
こちら無償です(要ログイン)。各章と最後に練習問題があり、試験難易度もざっくり把握できるのでおすすめです。
⇒Exam Readiness: AWS Certified Security - Specialty (Japanese) 日本語実写版 - AWS公式のサンプル問題を解く
⇒AWS 認定セキュリティ — 専門知識 AWS Certified Security – Specialty (SCS-C01) 認定試験の質問例
②各AWSサービスとベストプラクティスを理解する
- 参考書を購入する
⇒要点整理から攻略する『AWS認定 セキュリティ-専門知識』
タイトルの通り、要点が整理されて、非常にわかりやすい内容になっております。 - IAMとKMSのBlackbeltを閲覧する
上記2サービスは頻出するとの情報が散見されるため、BlackBeltを閲覧しました。
⇒BlackBelt - 主なサービスをおさえる
各サービスの概要、他サービスとの関連性、ベストプラクティスをおさえます。■分野1:インシデントへの対応
・Security Hub、Config
・GuardDuty、Detective
・Amazon Macie
■分野2:ログ記録とモニタリング
・CloudWatch Events、SNS
・S3、CloudTrail
・Kinesis、OpenSearch Service
■分野3:インフラストラクチャのセキュリティ
・SG、NACL
・AWS WAF、Shield、CloudFront
・AWS Artifact
■分野4:アイデンティティ管理とアクセス管理
・IAM(頻出)
・Organizations
■分野5:データ保護
・KMS(頻出)
・AWS Config
・Secrets Manager、Parameter Store
また、以下ドキュメントには、AWSの定めるSecurity Hubのセキュリティ基準が記載されており参考になります。
⇒AWS Foundational Security Best Practices
③試験を申し込む
- 以下サイトからログインの上、試験を申し込む
試験の1ヶ月前に申し込みました。
なお、ISIDの社内制度で、受験料は補償されました。
⇒試験のスケジュールを立てる
④問題を解く
- Udemyを受講する
以下のコースを受講しました。ISIDには、Udemy Businessを利用できる社内サービスがあるため、
無償で受講することができました。
なお、こちらのコースはボリュームが多いため、まずは各章の練習問題を実施し、
間違えた箇所は本編を視聴して消化するスタイルで進めました。
⇒AWS Certified Security – Specialty SCS-C01 - AWS公式の模擬試験を受ける
こちら無償になっています(要ログイン)。
⇒AWS Certified Security - Specialty Official Practice Question Set (SCS-C01 - Japanese) - 時間の許す限り、①②③(AWS公式トレーニング、サンプル問題、参考書、Udemy、模擬試験)の練習問題を繰り返す
試験を終えて
結果は767点と合格ラインギリギリでした。。
点数を落とした要因は、IAMポリシーやKMSキーポリシーの記述方法を問われる問題が頻出し、
自信を持って解けなかったことが大きかったと思われます。
また、クロスアカウントやサービスへのアクセスに必要な記述内容なども理解しておくと良いと思いました。
次回更新時は上記を重点的に学習したいと思います。
最後に、参考書やブログで散見される、IAMユーザーにMFAを強制するIAMポリシーの記述方法を紹介して、
締めとさせていただきます。 それでは、行ってらっしゃい!!
{
"Sid": "DenyAllExceptListedIfNoMFA",
"Effect": "Deny",
"NotAction": [
"iam:CreateVirtualMFADevice",
"iam:DeleteVirtualMFADevice",
"iam:EnableMFADevice",
"iam:GetUser",
"iam:ListMFADevices",
"iam:ListVirtualMFADevices",
"iam:ResyncMFADevice",
"sts:GetSessionToken"
],
"Resource": "*",
"Condition": {
"BoolIfExists": {
"aws:MultiFactorAuthPresent": "false"
}
}
}
参考:MFAで認証されたIAM ユーザーが「My Security Credentials」ページで自分の MFA デバイスを管理できるようにする
IAMユーザにMFA設定を強制するにあたりiam:ListUsersが必須では無くなった話
私たちは同じチームで働いてくれる仲間を大募集しています!たくさんのご応募お待ちしています。
- セキュリティエンジニア(セキュリティ設計)
執筆:@fuku.dancho、レビュー:@sato.taichi (Shodoで執筆されました)