AWS基礎

リージョン、IAM、Well-Architected Framework

IAM(Identity and Access Management)

AWSリソースへのアクセスを安全に制御するサービス。認証と認可を管理。

ユーザー

個人のアカウント。長期認証情報

ロール

一時的な権限。EC2やLambdaに付与

グループ

ユーザーの集合。ポリシーを一括適用

ポリシー

JSON形式の権限定義

1{
2 "Version": "2012-10-17",
3 "Statement": [
4 {
5 "Effect": "Allow",
6 "Action": [
7 "s3:GetObject",
8 "s3:PutObject"
9 ],
10 "Resource": "arn:aws:s3:::my-bucket/*"
11 },
12 {
13 "Effect": "Deny",
14 "Action": "s3:DeleteObject",
15 "Resource": "*"
16 }
17 ]
18}

ARN(Amazon Resource Name)

arn:aws:service:region:account-id:resource

説明
arn:aws:s3:::my-bucketS3バケット
arn:aws:ec2:ap-northeast-1:123456789:instance/i-xxxEC2インスタンス
arn:aws:iam::123456789:role/MyRoleIAMロール
arn:aws:lambda:ap-northeast-1:123456789:function:MyFuncLambda関数

Well-Architected Framework

AWSが推奨するアーキテクチャ設計の6つの柱

1. 運用上の優秀性

自動化、IaC、継続的改善

2. セキュリティ

最小権限、暗号化、監査ログ

3. 信頼性

障害復旧、スケーリング、変更管理

4. パフォーマンス効率

適切なリソース選択、モニタリング

5. コスト最適化

不要リソースの削除、適正サイジング

6. サステナビリティ

環境負荷の最小化

AWS CLI

1# 設定
2aws configure
3# AWS Access Key ID: AKIA...
4# AWS Secret Access Key: ...
5# Default region name: ap-northeast-1
6# Default output format: json
7
8# S3操作
9aws s3 ls
10aws s3 cp file.txt s3://my-bucket/
11
12# EC2操作
13aws ec2 describe-instances
14aws ec2 start-instances --instance-ids i-xxxxx
15
16# プロファイル切り替え
17aws --profile production s3 ls
18
19# 環境変数
20export AWS_PROFILE=production
21export AWS_REGION=ap-northeast-1

タグ戦略

リソースにタグを付けて管理。コスト配分、自動化、アクセス制御に活用。

タグキー値の例用途
Environmentproduction, staging, dev環境識別
Projectwebapp, apiコスト配分
Ownerteam-sre責任者
CostCenter12345請求先

セキュリティベストプラクティス

ルートアカウントを使わない

MFAを有効化し、日常作業はIAMユーザーで

最小権限の原則

必要な権限のみを付与

ロールを使う

EC2/LambdaにはIAMロールを付与、アクセスキーを埋め込まない

CloudTrailを有効化

全API呼び出しを記録