AWS Secrets Manager でシークレットを検索する
フィルタなしでシークレットを検索すると、Secrets Manager はシークレット名、説明、タグキー、およびタグ値のキーワードを照合します。フィルタなしで検索すると、大文字と小文字は区別されず、スペース、/、_、=、# などの特殊文字は無視され、数字と文字のみが使用されます。フィルタなしで検索すると、Secrets Manager は検索文字列を分析して個別の単語に変換します。単語は、大文字から小文字、文字から数字、または数字/文字から句読点への変更によって区切られます。たとえば、名前、説明、およびタグのキーと値で、creds、Database、および 892 を検索する検索語 credsDatabase#892 を入力するとします。
Secrets Manager では、シークレットをリストアップする際に CloudTrail のログエントリーが生成されます。(詳しくは、「AWS CloudTrail による AWS Secrets Manager イベントのログ記録」を参照してください。)
Secrets Manager はリージョンのサービスであり、検索は、選択されたリージョンのシークレットのみを返します。
検索フィルター
フィルターを使用しない場合、Secrets Manager は検索文字列を単語に分割し、すべての属性で一致するものを検索します。この検索では、大文字と小文字は区別されません。例えば、My_Secret を検索すると、名前、説明、またはタグの my または secret という単語が含まれるシークレットが一致します。
検索に次のフィルタを適用できます。
- 名前
-
シークレット名の先頭に一致します。大文字と小文字は区別されます。たとえば、名前:
Dataは、databaseSecretでもMyDataでもないDatabaseSecretという名前のシークレットを返します。 - 説明
-
シークレットの説明内の単語に一致します。大文字と小文字は区別されません。たとえば、説明:
My Descriptionは、シークレットを次の説明で照合します。-
My Description -
my description -
My basic description -
Description of my secret
-
- によって管理されます
-
以下のような、AWS 以外のサービスによって管理されるシークレットを検索します。
-
1Password
-
Akeyless
-
CyberArk
-
HashiCorp
-
- 所有しているサービス
-
管理サービスの ID プレフィックスの先頭に一致します。大文字と小文字は区別されません。例えば、
my-serは、プレフィックスmy-servおよびmy-serviceを持つサービスが管理するシークレットと一致します。(詳しくは、「他のサービスによって管理されるシークレット」を参照してください。) - レプリケート:
-
プライマリシークレット、レプリカシークレット、またはレプリケートされないシークレットをフィルタリングできます。
- タグキー
-
タグキーの先頭に一致します。大文字と小文字は区別されます。たとえば、タグキー:
Prodは、タグProductionそしてProd1付きのシークレットを返しますが、タグprodまたは1 Prod付きのシークレットは返しません。 - タグ 値
-
タグ値の先頭に一致します。大文字と小文字は区別されます。たとえば、タグ値:
ProdはタグProductionそしてProd1付きのシークレットを返しますが、タグ値prodまたは1 Prodを持つシークレットは返しません。
AWS CLI
例 アカウントにあるシークレットを一覧表示する
以下の list-secrets 例は、 アカウント内にあるシークレットの一覧を取得します。
aws secretsmanager list-secrets
例 アカウントにあるシークレットの一覧をフィルタリングする
次の list-secrets の例は、アカウント内にあり、名前に Test が含まれているシークレットの一覧を取得します。名前によるフィルタリングでは、大文字と小文字が区別されます。
aws secretsmanager list-secrets \ --filters Key="name",Values="Test"
例 他の AWS のサービスによって管理されているシークレットを検索する
次の list-secrets の例では、サービスによって管理されているシークレットの一覧を取得します。サービスは ID で指定します。(詳しくは、「他のサービスによって管理されるシークレット」を参照してください。)
aws secretsmanager list-secrets \ --filters Key="owning-service",Values="<service ID prefix>"
AWS SDK
AWS SDK のいずれかを使用してシークレットを見つけるには、ListSecrets を使用します。詳しくは、「AWS SDK」を参照してください。