

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# IAM ユーザーが作成されたときに通知を送信
<a name="send-a-notification-when-an-iam-user-is-created"></a>

*Amazon Web Services、Mansi Suratwala、Sergiy Shevchenko*

## 概要
<a name="send-a-notification-when-an-iam-user-is-created-summary"></a>

Amazon Web Services (AWS) では、このパターンを使用して AWS CloudFormation テンプレートをデプロイし、AWS Identity and Access Management (IAM) ユーザーが作成されたときに自動的に通知を受け取ることができます。 

IAM を使用すると、AWS サービスとリソースへのアクセスを安全に管理できます。AWS のユーザーとグループを作成および管理し、アクセス権を使用して ユーザーとグループの AWS リソースへのアクセスを許可および拒否できます。

CloudFormation テンプレートは Amazon CloudWatch Events と AWS Lambda 関数を作成します。このイベントでは、AWS CloudTrail を使用して、AWS アカウントで作成されているすべての IAM ユーザーを監視します。ユーザーが作成されると、CloudWatch Events イベントによって Lambda 関数が開始され、新しいユーザー作成イベントを通知する Amazon Simple Notiﬁcation Service (Amazon SNS) 通知が送信されます。

## 前提条件と制限
<a name="send-a-notification-when-an-iam-user-is-created-prereqs"></a>

**前提条件**
+ アクティブなAWS アカウント
+ AWS CloudTrail トレイルが作成され、デプロイされました

**制限事項**
+ AWS CloudFormation テンプレートは、`CreateUser` 専用にデプロイする必要があります。 

## アーキテクチャ
<a name="send-a-notification-when-an-iam-user-is-created-architecture"></a>

**ターゲットテクノロジースタック**
+ IAM
+ AWS CloudTrail
+ Amazon CloudWatch Events
+ AWS Lambda
+ Amazon Simple Storage Service (Amazon S3)
+ Amazon SNS

**ターゲットアーキテクチャ**

![\[ユーザーから IAM、CloudTrail、CloudWatch イベント、Lambda、S3 バケットまでのプロセスを経て、最後に SNS メール通知を送信します。\]](http://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/patterns/images/pattern-img/5487fbff-72e7-4da4-a970-a4542e89824d/images/c73532fd-8e95-45a5-843d-1864eb4df227.png)


**自動化とスケール**

AWS CloudFormation テンプレートは、さまざまな AWS リージョンとアカウントに複数回使用できます。各リージョンまたはアカウントで 1 回実行するだけで済みます。複数のアカウントへのデプロイを自動化するには、「[AWS CloudFormation StackSets」](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html) を使用してください。CloudFormation テンプレートは、各アカウントに必要なすべてのリソースをデプロイできます。

## ツール
<a name="send-a-notification-when-an-iam-user-is-created-tools"></a>

**ツール**
+ 「[IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)」 – AWS Identity and Access Management (IAM) は、AWS リソースへのアクセスのセキュアな制御に役立つ Web サービスです。IAM を使用して、誰を認証 (サインイン) し、誰にリソースの使用を認可する (アクセス許可を付与する) かを制御します。
+ 「[AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)」 – AWS CloudFormation は、Amazon ウェブサービスリソースのモデル化とセットアップを支援して、これらのリソースの管理に費やす時間を減らし、AWS で実行されるアプリケーションに集中する時間を増やすことができます。必要なすべての AWS リソースを説明するテンプレートを作成して、CloudFormation がお客さまに代わって、これらのリソースのプロビジョニングや設定を処理します。
+ 「[AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)」 – AWS CloudTrail は、AWS アカウントのガバナンス、コンプライアンス、および運用とリスクの監査を管理します。ユーザー、ロール、または AWS のサービスによって実行されたアクションは、CloudTrail にイベントとして記録されます。イベントには、AWS マネジメントコンソール、AWS コマンドラインインターフェイス、AWS SDK や API で実行されるアクションが含まれます。
+ 「[Amazon CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html)」 – Amazon CloudWatch Events は、AWS リソースの変更を説明するシステムイベントのほぼリアルタイムのストリームを提供します。 
+ 「[AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)」 – AWS Lambda はサーバーのプロビジョニングや管理を行わずにコードの実行を支援できるコンピューティングサービスです。Lambda は必要に応じてコードを実行し、1 日あたり数個のリクエストから 1 秒あたり数千のリクエストまで自動的にスケールします。 
+ 「[Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html)」— Amazon Simple Storage Service (Amazon S3)は、インターネット用のストレージです。Simple Storage Service (Amazon S3) を使用すると、いつでもウェブ上の任意の場所から任意の量のデータを保存および取得できます。
+ 「[Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)」 — Amazon Simple Notiﬁcation Service (Amazon SNS) は、Lambda、HTTP、E メール、モバイルプッシュ通知 (SMS) を使用してメッセージを配信するマネージドサービスです。

**コード**

プロジェクトの .zip ファイルは添付ファイルとして入手できます。

## エピック
<a name="send-a-notification-when-an-iam-user-is-created-epics"></a>

### Lambda スクリプト用の S3 バケットを作成する
<a name="create-the-s3-bucket-for-the-lambda-script"></a>


| タスク | 説明 | 必要なスキル | 
| --- | --- | --- | 
| S3 バケットを定義します。 | Amazon S3 コンソールを開き、S3 バケットを選択、または作成します。この S3 バケットは Lambda コードの.zip ファイルをホストします。S3 バケット名の先頭にスラッシュを含めることはできません。 | クラウドアーキテクト | 

### S3 バケットに Lambda コードをアップロードします
<a name="upload-the-lambda-code-to-the-s3-bucket"></a>


| タスク | 説明 | 必要なスキル | 
| --- | --- | --- | 
| Lambda コードをアップロードします。 | *[添付ファイル]* セクションにある Lambda コードの .zip ファイルを S3 バケットにアップロードします。 | クラウドアーキテクト | 

### CloudFormation のテンプレートを入手するには
<a name="deploy-the-cloudformation-template"></a>


| タスク | 説明 | 必要なスキル | 
| --- | --- | --- | 
| CloudFormation のテンプレートをデプロイします。 | CloudFormation コンソールで、このパターンへの添付ファイルとして提供されている CloudFormation `createIAMuser.yaml` テンプレートをデプロイします。次のエピックでは、テンプレートパラメータの値を指定します。 | クラウドアーキテクト | 

### CloudFormation テンプレートのパラメータを入力します。
<a name="complete-the-parameters-in-the-cloudformation-template"></a>


| タスク | 説明 | 必要なスキル | 
| --- | --- | --- | 
|  S3 バケット名を指定します。 | 最初のエピックで作成または選択した S3 バケットの名前を入力します。 | クラウドアーキテクト | 
| S3 キーを指定します。 | S3 バケットの Lambda コードの .zip ファイルの場所を、先頭にスラッシュを付けずに指定します (例: `<directory>/<file-name>.zip`)。 | クラウドアーキテクト | 
| Eメールアドレスを入力します。 | Amazon SNS 通知を受信するための有効な Eメールアドレスを指定します。 | クラウドアーキテクト | 
| ログ記録のレベルを定義します。 | Lambda 関数のロギングレベルと頻度を定義します。 `Info` アプリケーションの進行状況に関する詳細な情報メッセージを指定します。 `Error` それでもアプリケーションの実行を継続できるエラーイベントを指定します。 `Warning` 潜在的に有害な状況を示します。 | クラウドアーキテクト | 

### サブスクリプションを確認
<a name="confirm-the-subscription"></a>


| タスク | 説明 | 必要なスキル | 
| --- | --- | --- | 
| サブスクリプションを確認します。 | テンプレートが正常にデプロイされると、指定されたメールアドレスに購読メールメッセージが送信されます。通知を受信するには、このメールのサブスクリプションを確認する必要があります。 | クラウドアーキテクト | 

## 関連リソース
<a name="send-a-notification-when-an-iam-user-is-created-resources"></a>
+ 「[証跡の作成](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-a-trail-using-the-console-first-time.html?icmpid=docs_console_unmapped)」
+ 「[S3 バケットの作成](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html)」
+ 「[ファイルを S3 バケットにアップロード](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/upload-objects.html)」 
+ 「[CloudFormation テンプレートをデプロイする](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html)」
+ 「[IAM ユーザーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html)」
+ 「[AWS CloudTrail を使用して AWS API コールでトリガーする CloudWatch Events ルールの作成](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-CloudTrail-Rule.html)」 

## アタッチメント
<a name="attachments-5487fbff-72e7-4da4-a970-a4542e89824d"></a>

このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「[attachment.zip](samples/p-attach/5487fbff-72e7-4da4-a970-a4542e89824d/attachments/attachment.zip)」