

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

# ベストプラクティスと戦略
<a name="best-practices-and-strats"></a>

以下のセクションでは、 AWS リソースのタグ付けとタグエディタの使用に関するベストプラクティスと戦略について説明します。



## タグ付けのベストプラクティス
<a name="tag-best-practices"></a>

 AWS リソースのタグ付け戦略を作成するときは、ベストプラクティスに従います。
+ 個人情報 (PII) などの機密情報や秘匿性の高い情報はタグに追加しないようにします。タグには、請求を含む多くの AWS サービスからアクセスできます。タグは、プライベートデータまたは機密データに使用することを意図したものではありません。
+ タグには、標準化された、大文字と小文字の区別がある形式を使用し、すべてのリソースタイプに一貫して適用します。
+ リソースアクセスコントロールの管理、コスト追跡、オートメーション、整理など、複数の目的に対応したタグガイドラインを考慮します。
+ 自動化されたツールを使用して、リソースタグを管理できます。タグエディタ と [リソースグループのタグ付け API](https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/) を使用すると、プログラムによるタグの制御が可能になるため、タグとリソースの自動的な管理、検索、フィルタリングが容易になります。
+ タグは、多めに使用します。
+ ビジネス要件の変化に合わせてタグを変更するのは簡単ですが、将来の変更の影響を考慮してください。たとえば、アクセス制御タグを変更した場合、そのタグを参照してリソースへのアクセスを制御するポリシーも更新する必要があります。
+  AWS Organizationsを使用してタグポリシーを作成およびデプロイすることで、組織が採用するタグ付け標準を自動的に適用することができます。タグポリシーでは、有効なキー名と各キーに有効な値を定義するタグ付けルールを指定することができます。モニタリングのみを選択して、既存のタグを評価し、クリーンアップすることもできます。選択した標準にタグが準拠したら、タグポリシーで適用を有効にして、非準拠のタグが作成されないようにすることができます。詳細については、*AWS Organizations ユーザーガイド*の[タグポリシー](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html)を参照してください。

## タグ命名のベストプラクティス
<a name="id_tags_naming_best_practices"></a>

これらはいくつかのベストプラクティスと命名規則であり、タグとともに使用することをお勧めします。詳細については、*IAM ユーザーガイド*の[「命名タグ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html#id_tags_rules)」を参照してください。

多くのタグは、 によって事前定義 AWS されているか、さまざまな によって自動的に作成されます AWS のサービス。多くのAWS 生成されたタグは、すべて小文字のキー名を使用し、名前に含まれる単語はハイフンで区切られ、タグのソースサービスを識別するプレフィックスにコロンが続きます。例えば、以下を参照してください。
+ `aws:ec2spot:fleet-request-id` は、インスタンスを起動した Amazon EC2 スポットインスタンスリクエストを識別するタグです。
+ `aws:cloudformation:stack-name` は、リソースを作成した CloudFormation スタックを識別するタグです。
+ `elasticbeanstalk:environment-name` は、リソースを作成したアプリケーションを識別するタグです。

次のルールを使用してタグに名前を付けることを検討してください。
+ 単語にはすべて小文字を使用してください。
+ 単語を区切るにはハイフンを使用してください。
+ プレフィックスに続けてコロンを付けると、組織名または省略名を識別できます。

例えば、 *AnyCompany* という名前の架空の会社の場合では、次のようにタグを定義できます。
+ `anycompany:cost-center` のタグは、内部のコストセンターのコードを識別するのに使用。
+ `anycompany:environment-type` のタグは、開発、テスト、本番のいずれの環境であるかを識別するのに使用。
+ `anycompany:application-id` のタグは、リソースが作成されたアプリケーションを識別するのに使用。

プレフィックスを使用すると、タグが組織で定義されているとおりに明確に認識でき、使用している可能性のある AWS やサードパーティーのツールでは認識できません。すべて小文字を使用し、単語をハイフンで区切ることにより、タグ名に大文字を使用した場合の混乱を避けることができます。例えば、`anycompany:project-id` の方が、`ANYCOMPANY:ProjectID`、`anycompany:projectID`、`Anycompany:ProjectId` よりも覚えるのが簡単です。

### タグの命名制限と要件
<a name="tag-conventions"></a>

タグには、次の基本的な命名要件と使用要件が適用されます。
+ 各リソースは、最大 50 個のユーザー作成タグを持つことができます。
+ `aws:` で始まるシステム作成タグは AWS に使用するために予約されており、この制限にはカウントされません。`aws:` プレフィックスで始まるタグを編集または削除することはできません。
+ タグキーは、リソースごとにそれぞれ一意である必要があります。また、各タグキーに設定できる値は 1 つのみです。
+ UTF-8 では、タグキーは 1 文字以上で、最大 128 文字の Unicode 文字である必要があります。
+ UTF-8 では、タグ値は 0 文字以上、最大 256 文字の Unicode 文字である必要があります。
+ 使用できる文字は AWS サービスによって異なります。特定の AWS サービスのリソースにタグを付けるために使用できる文字については、そのドキュメントを参照してください。通常、使用できる文字は、UTF-8 対応の文字、数字、スペースと、 \_ . : / = \+ - @ の文字です。
+ タグのキーと値では、大文字と小文字が区別されます。ベストプラクティスとして、タグを大文字にするための戦略を決定し、その戦略をすべてのリソースタイプにわたって一貫して実装します。たとえば、`Costcenter`、`costcenter`、`CostCenter` のいずれを使用するかを決定し、すべてのタグに同じ規則を使用します。大文字と小文字の扱いについて、同様のタグに整合性のない規則を使用することは避けてください。

## 一般的なタグ付け戦略
<a name="tag-strategies"></a>

以下のタグ付け戦略を使用すると、 AWS リソースの識別と管理に役立ちます。

**Topics**
+ [リソース整理のタグ](#tag-strategies-console)
+ [コスト配分のタグ](#tag-strategies-cost-allocation)
+ [オートメーションのタグ](#tag-strategies-automation)
+ [アクセス制御のタグ](#tag-strategies-access-control)
+ [タグ付けのガバナンス](#tag-strategies-governance)

### リソース整理のタグ
<a name="tag-strategies-console"></a>

タグは、 で AWS リソースを整理する優れた方法です AWS マネジメントコンソール。タグと共にリソースが表示されるように設定したり、タグで検索やフィルタリングを行ったりできます。 AWS Resource Groups サービスを使用すると、1 つ以上のタグまたはタグの一部に基づいて AWS リソースのグループを作成できます。 AWS CloudFormation スタックでの出現に基づいてグループを作成することもできます。リソースグループとタグエディタを使用すると、複数のサービス、リソース、リージョンで構成されるアプリケーションのデータを 1 か所にまとめて表示できます。

### コスト配分のタグ
<a name="tag-strategies-cost-allocation"></a>

AWS Cost Explorer と詳細な請求レポートを使用すると、タグごとに AWS コストを分類できます。通常、*コストセンター/ビジネスユニット、顧客***、*プロジェクト*などのビジネスタグを使用して、 AWS コストを従来のコスト配分ディメンションに関連付けます。ただし、コスト配分レポートで使用できるタグに制限はありません。特定のアプリケーション、環境、コンプライアンスプログラムなど、技術やセキュリティに関するディメンションを使って、コストの関連付けを行うことができます。

一部のサービスでは、 が生成 AWSした`createdBy`タグをコスト配分の目的で使用して、それ以外の場合は未分類になる可能性のあるリソースを考慮できます。`createdBy` タグは、サポートされている AWS のサービスとリソースにのみ使用できます。値には、特定の API またはコンソールイベントに関連付けられたデータが含まれます。詳細については、*AWS Billing and Cost Management ユーザーガイド*の「[AWS生成コスト配分タグ](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tags.html)」を参照してください。

### オートメーションのタグ
<a name="tag-strategies-automation"></a>

リソースまたはサービスに固有のタグは、多くの場合、オートメーションアクティビティ中にリソースをフィルタリングする目的で使用します。オートメーションタグは、自動タスクのオプトインまたはオプトアウト、またはアーカイブ、更新、削除の対象となるリソースのバージョンの特定に使用します。たとえば、オートメーションにした `start` または `stop` スクリプトを実行して業務時間外に開発環境をオフにすれば、コストが削減できます。このシナリオで Amazon Elastic Compute Cloud (Amazon EC2) インスタンスタグを使うと、このアクションからオプトアウトするインスタンスを簡単に指定できます。古くなった、またはローリング更新された Amazon EBS スナップショットを検索して削除するスクリプトの場合、スナップショットタグで検索条件にディメンションを追加することができます。

### アクセス制御のタグ
<a name="tag-strategies-access-control"></a>

IAM ポリシーでは、タグベースの条件をサポートしています。このため、特定のタグやタグの値に基づいて IAM アクセス許可を制限できます。たとえば、IAM ユーザーまたはロールのアクセス許可に、EC2 API コールをタグに基づいて特定の環境 (開発、テスト、本番など) に制限する条件を含めることができます。同じ戦略を使用して、API 呼び出しを特定の Amazon 仮想プライベートクラウド (Amazon VPC) ネットワークに制限できます。タグベースのリソースレベルの IAM アクセス許可をサポートしているかどうかは、サービスによって異なります。アクセス制御にタグベースの条件を使用する場合は、タグを変更できるユーザーを定義することで、タグの変更を制限してください。 AWS リソースへの API アクセスを制御するためのタグの使用に関する詳細については、*IAM ユーザーガイド*の「[IAM と連携するAWS のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。

### タグ付けのガバナンス
<a name="tag-strategies-governance"></a>

効果的なタグ付け戦略では、標準化されたタグを使用し、 AWS リソース全体に一貫してプログラムで適用します。 AWS 環境内のタグを管理するには、事後対応型アプローチと事前対応型アプローチの両方を使用できます。
+ **リアクティブガバナンス**は、Resource Groups Tagging API AWS Config ルール、カスタムスクリプトなどのツールを使用して適切にタグ付けされていないリソースを見つけるためのものです。リソースを手動で検索するには、タグエディタと請求明細レポートを使用します。
+ **プロアクティブガバナンス**では CloudFormation、、Service Catalog、 のタグポリシー、IAM リソースレベルのアクセス許可などのツールを使用して AWS Organizations、リソースの作成時に標準化されたタグが一貫して適用されるようにします。

  たとえば、 プロパティを使用して CloudFormation `Resource Tags`リソースタイプにタグを適用できます。Service Catalog では、ポートフォリオと製品タグを追加すれば、製品の開始時に自動的にポートフォリオと製品タグの組み合わせが適用されます。より厳格なプロアクティブガバナンスには、自動タスクが含まれます。たとえば、リソースグループタグ付け API を使用して AWS 環境のタグを検索したり、不適切にタグ付けされたリソースを隔離または削除するためのスクリプトを実行したりできます。