

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

# Secrets Manager シークレットの概要
<a name="whats-in-a-secret"></a>

Secrets Manager では、シークレット**は、シークレット情報、シークレット値**、およびシークレットに関するメタデータで構成されます。シークレット値には、文字列またはバイナリを使用できます。

複数の文字列値をシークレットに保存するには、キーと値のペアを使用した JSON テキスト文字列を使用することをお勧めします。次に例を示します。

```
{
  "host"       : "ProdServer-01.databases.example.com",
  "port"       : "8888",
  "username"   : "administrator",
  "password"   : "EXAMPLE-PASSWORD",
  "dbname"     : "MyDatabase",
  "engine"     : "mysql"
}
```

データベースシークレットで自動ローテーションを有効にするには、シークレットに正しい JSON 構造でデータベースの接続情報が含まれている必要があります。詳細については、「[AWS Secrets Manager シークレットの JSON 構造](reference_secret_json_structure.md)」を参照してください。

## メタデータ
<a name="whats-in-a-secret-metadata"></a>

シークレットのメタデータには以下が含まれます。
+ 次の形式の Amazon リソースネーム (ARN)

  ```
  arn:aws:secretsmanager:<Region>:<AccountId>:secret:SecretName-6RandomCharacters
  ```

  Secrets Manager は、シークレット ARN が確実に一意であるようにするのに役立つよう、シークレット名の末尾に 6 つのランダムな文字を含めます。元のシークレットが削除され、同じ名前で新しいシークレットが作成された場合、これらの文字により 2 つのシークレット ARN は異なったものとなります。ARN が異なるため、古いシークレットにアクセスできるユーザーであっても、新しいシークレットへのアクセスを自動的に取得するわけではありません。
+ シークレットの名前、説明、リソースポリシー、タグ
+ *暗号化キー*の ARN。Secrets Manager AWS KMS key がシークレット値を暗号化および復号するために使用する です。Secrets Manager はシークレットテキストを常に暗号化された形式で保存し、転送中のシークレットを暗号化します。[でのシークレットの暗号化と復号 AWS Secrets Manager](security-encryption.md) を参照してください。
+ シークレットをローテーションする方法に関する情報 (ローテーションを設定した場合) 「[AWS Secrets Manager シークレットのローテーション](rotating-secrets.md)」を参照してください。

Secrets Manager は、IAM アクセス許可ポリシーを使用して、認証されたユーザーのみがシークレットにアクセスまたは変更できるようにします。「[の認証とアクセスコントロール AWS Secrets Manager](auth-and-access.md)」を参照してください。

シークレットには、暗号化されたシークレット値のコピーを保持している複数の*バージョン*があります。シークレットの値を変更するか、シークレットをローテーションすると、Secrets Manager は新しいバージョンを作成します。「[シークレットバージョン](#term_version)」を参照してください。

シークレットを*レプリケート* AWS リージョン することで、複数の でシークレットを使用できます。シークレットをレプリケートする場合、元のシークレットをコピーするか、*レプリカシークレット*と呼ばれる*プライマリシークレット*を作成します。レプリカシークレットは、プライマリシークレットにリンクされたままになっています。「[リージョン間でシー AWS Secrets Manager クレットをレプリケートする](replicate-secrets.md)」を参照してください

「[でシークレットを管理する AWS Secrets Manager](managing-secrets.md)」を参照してください

## シークレットバージョン
<a name="term_version"></a>

シークレットには、暗号化されたシークレット値のコピーを保持している複数の*バージョン*があります。シークレットの値を変更するか、シークレットをローテーションすると、Secrets Manager は新しいバージョンを作成します。

Secrets Manager は、シークレットの履歴をバージョン順には保存しません。代わりに、以下の 3 つの特定のバージョンにラベルを付け、追跡します。
+ 現在のバージョン – `AWSCURRENT`
+ 以前のバージョン – `AWSPREVIOUS`
+ 保留中のバージョン (ローテーション中) – `AWSPENDING`

シークレットには常に、`AWSCURRENT` というラベルが付いたバージョンがあり、シークレット値を取得する際は、そのバージョンがデフォルトで Secrets Manager から返されます。

[https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/update-secret-version-stage.html](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/update-secret-version-stage.html) で を呼び出すことで、独自のラベルでバージョンにラベルを付けることもできます AWS CLI。シークレットには、最大 20 個のラベルをアタッチできます。シークレットの 2 つのバージョンで同じステージングラベルを持つことはできません。各バージョンには、複数のラベル付けることが可能です。

ラベル付きのバージョンであれば、Secrets Manager により削除されることはありませんが、ラベルのないバージョンは非推奨と見なされます。非推奨のバージョンの数が 100 を超えた場合、Secrets Manager はそれらを削除します。ただし、Secrets Manager は 24 時間以内に作成されたバージョンは削除しません。

次の図は、 AWS ラベル付きバージョンとカスタマーラベル付きバージョンを持つシークレットを示しています。ラベルのないバージョンは非推奨と見なされ、将来のある時点で Secrets Manager によって削除されます。

 ![\[A secret that contains multiple secret versions, some with labels such as AWSCURRENT or MyLabelA, and some without labels.\]](http://docs.aws.amazon.com/ja_jp/secretsmanager/latest/userguide/images/SecretVersions.png) 