エイリアスの使用 - AWS Key Management Service

エイリアスの使用

このトピックの例では、AWS KMS API を使用してエイリアスを作成、表示、更新、および削除します。エイリアスの詳細については、を参照してください エイリアスの使用

エイリアスの作成

AWS Management Console で AWS KMS key を作成するときは、そのエイリアスを作成する必要があります。ただし、KMS キーを作成する CreateKey オペレーションでは、エイリアスは作成されません。

エイリアスを作成するには、 CreateAlias オペレーションを使用します。エイリアスはアカウントとリージョンで一意であることが必要です。aws/ で始まるエイリアスを作成することはできません。aws/ プレフィックスは、AWS マネージドキー の Amazon Web Services によって予約されます。

クライアントオブジェクトを必要とする言語では、これらの例では「AWS KMS」で作成した クライアントの作成 クライアントオブジェクトを使用します。

Java

詳細については、AWS SDK for Java API リファレンスcreateAlias メソッド を参照してください。

// Create an alias for a KMS key // String aliasName = "alias/projectKey1"; // Replace the following example key ARN with a valid key ID or key ARN String targetKeyId = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"; CreateAliasRequest req = new CreateAliasRequest().withAliasName(aliasName).withTargetKeyId(targetKeyId); kmsClient.createAlias(req);
C#

詳細については、https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/KeyManagementService/MKeyManagementServiceCreateAliasCreateAliasRequest.html の AWS SDK for .NETCreateAlias メソッドを参照してください。

// Create an alias for a KMS key // String aliasName = "alias/projectKey1"; // Replace the following example key ARN with a valid key ID or key ARN String targetKeyId = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"; CreateAliasRequest createAliasRequest = new CreateAliasRequest() { AliasName = aliasName, TargetKeyId = targetKeyId }; kmsClient.CreateAlias(createAliasRequest);
Python

詳細については、AWS SDK for Python (Boto3) の create_alias メソッドを参照してください。

# Create an alias for a KMS key alias_name = 'alias/projectKey1' # Replace the following example key ARN with a valid key ID or key ARN target_key_id = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab' response = kms_client.create_alias( AliasName=alias_name, TargetKeyId=key_id )
Ruby

詳細については、create_aliasAWS SDK for Ruby インスタンスメソッドを参照してください。

# Create an alias for a KMS key alias_name = 'alias/projectKey1' # Replace the following example key ARN with a valid key ID or key ARN target_key_id = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab' response = kmsClient.create_alias({ alias_name: alias_name, target_key_id: target_key_id })
PHP

詳細については、https://docs.aws.amazon.com/sdk-for-php/latest/reference/api-kms-2014-11-01.html#createalias の AWS SDK for PHPCreateAlias メソッドを参照してください。

// Create an alias for a KMS key // $aliasName = "alias/projectKey1"; // Replace the following example key ARN with a valid key ID or key ARN $keyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab'; $result = $KmsClient->createAlias([ 'AliasName' => $aliasName, 'TargetKeyId' => $keyId, ]);
Node.js

詳細については、AWS SDK for JavaScript in Node.jscreateAlias プロパティを参照してください。

// Create an alias for a KMS key // const AliasName = 'alias/projectKey1'; // Replace the following example key ARN with a valid key ID or key ARN const TargetKeyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab'; kmsClient.createAlias({ AliasName, TargetKeyId }, (err, data) => { ... });
PowerShell

エイリアスを作成するには、 New-KMSAlias コマンドレットを使用します。エイリアス名では、大文字と小文字が区別されます。

# Create an alias for a KMS key $aliasName = 'alias/projectKey1' # Replace the following example key ARN with a valid key ID or key ARN $targetKeyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab' New-KMSAlias -TargetKeyId $targetKeyId -AliasName $aliasName

AWS KMS PowerShell コマンドレットを使用するには、AWS.Tools.KeyManagementService モジュールをインストールします。詳細については、AWS Tools for Windows PowerShell ユーザーガイドを参照してください。

エイリアスのリスト化

アカウントとリージョンのエイリアスを一覧表示するには、 ListAliases オペレーションを使用します。

デフォルトでは、ListAliases コマンドはアカウントとリージョンのすべてのエイリアスを返します。これには、ユーザーが作成してカスタマーマネージドキーに関連付けたエイリアスと、AWS が作成してアカウントの AWS マネージドキー に関連付けたエイリアスが含まれます。レスポンスには、TargetKeyId フィールドがないエイリアスが含まれている場合もあります。これらは AWS が作成した定義済みのエイリアスですが、まだ KMS キーとは関連付けられていません。

クライアントオブジェクトを必要とする言語では、これらの例では「AWS KMS」で作成した クライアントの作成 クライアントオブジェクトを使用します。

Java

Java の実装の詳細については、AWS SDK for Java API リファレンスlistAliases method を参照してください。

// List the aliases in this AWS アカウント // Integer limit = 10; ListAliasesRequest req = new ListAliasesRequest().withLimit(limit); ListAliasesResult result = kmsClient.listAliases(req);
C#

詳細については、AWS SDK for .NETListAliases method を参照してください。

// List the aliases in this AWS アカウント // int limit = 10; ListAliasesRequest listAliasesRequest = new ListAliasesRequest() { Limit = limit }; ListAliasesResponse listAliasesResponse = kmsClient.ListAliases(listAliasesRequest);
Python

詳細については、AWS SDK for Python (Boto3) の list_aliases メソッドを参照してください。

# List the aliases in this AWS アカウント response = kms_client.list_aliases( Limit=10 )
Ruby

詳細については、list_aliasesAWS SDK for Ruby インスタンスメソッドを参照してください。

# List the aliases in this AWS アカウント response = kmsClient.list_aliases({ limit: 10 })
PHP

詳細については、AWS SDK for PHPList Aliases method を参照してください。

// List the aliases in this AWS アカウント // $limit = 10; $result = $KmsClient->listAliases([ 'Limit' => $limit, ]);
Node.js

詳細については、AWS SDK for JavaScript in Node.jslistAliases プロパティを参照してください。

// List the aliases in this AWS アカウント // const Limit = 10; kmsClient.listAliases({ Limit }, (err, data) => { ... });
PowerShell

アカウントとリージョンのエイリアスを一覧表示するには、 Get-KMSAliasList コマンドレットを使用します。

出力オブジェクトの数を制限するために、この例では、リストコマンドレットで非推奨の Limit パラメータの代わりに Select-Object コマンドレットを使用します。AWS Tools for PowerShell での出力のページ分割については、「AWS Tools for PowerShell での出力ページ分割」を参照してください。

# List the aliases in this AWS アカウント $limit = 10 $result = Get-KMSAliasList | Select-Object -First $limit

AWS KMS PowerShell コマンドレットを使用するには、AWS.Tools.KeyManagementService モジュールをインストールします。詳細については、AWS Tools for Windows PowerShell ユーザーガイドを参照してください。

特定の KMS キーに関連付けられているエイリアスのみをリストするには、KeyId パラメータを使用します。その値として、リージョン内の任意の KMS キーのキー ID またはキー ARN を指定できます。エイリアス名またはエイリアス ARN を指定することはできません。

Java

Java の実装の詳細については、AWS SDK for Java API リファレンスlistAliases method を参照してください。

// List the aliases for one KMS key // // Replace the following example key ARN with a valid key ID or key ARN String keyId = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"; ListAliasesRequest req = new ListAliasesRequest().withKeyId(keyId); ListAliasesResult result = kmsClient.listAliases(req);
C#

詳細については、AWS SDK for .NETListAliases method を参照してください。

// List the aliases for one KMS key // // Replace the following example key ARN with a valid key ID or key ARN String keyId = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"; ListAliasesRequest listAliasesRequest = new ListAliasesRequest() { KeyId = keyId }; ListAliasesResponse listAliasesResponse = kmsClient.ListAliases(listAliasesRequest);
Python

詳細については、AWS SDK for Python (Boto3) の list_aliases メソッドを参照してください。

# List the aliases for one KMS key # Replace the following example key ARN with a valid key ID or key ARN key_id = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab' response = kms_client.list_aliases( KeyId=key_id )
Ruby

詳細については、list_aliasesAWS SDK for Ruby インスタンスメソッドを参照してください。

# List the aliases for one KMS key # Replace the following example key ARN with a valid key ID or key ARN key_id = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab' response = kmsClient.list_aliases({ key_id: key_id })
PHP

詳細については、AWS SDK for PHPList Aliases method を参照してください。

// List the aliases for one KMS key // // Replace the following example key ARN with a valid key ID or key ARN $keyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab'; $result = $KmsClient->listAliases([ 'KeyId' => $keyId, ]);
Node.js

詳細については、AWS SDK for JavaScript in Node.jslistAliases プロパティを参照してください。

// List the aliases for one KMS key // // Replace the following example key ARN with a valid key ID or key ARN const KeyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab'; kmsClient.listAliases({ KeyId }, (err, data) => { ... });
PowerShell

KMS キーのエイリアスを一覧表示するには、Get-KMSAliasList コマンドレットの KeyId パラメータを使用します。

# List the aliases for one KMS key # Replace the following example key ARN with a valid key ID or key ARN $keyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab' $response = Get-KmsAliasList -KeyId $keyId

AWS KMS PowerShell コマンドレットを使用するには、AWS.Tools.KeyManagementService モジュールをインストールします。詳細については、AWS Tools for Windows PowerShell ユーザーガイドを参照してください。

エイリアスの更新

既存のエイリアスを別の KMS キーに関連付けるには、UpdateAlias オペレーションを使用します。

クライアントオブジェクトを必要とする言語では、これらの例では「AWS KMS」で作成した クライアントの作成 クライアントオブジェクトを使用します。

Java

Java の実装の詳細については、AWS SDK for Java APIリファレンスupdateAlias メソッドを参照してください。

// Updating an alias // String aliasName = "alias/projectKey1"; // Replace the following example key ARN with a valid key ID or key ARN String targetKeyId = "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321"; UpdateAliasRequest req = new UpdateAliasRequest() .withAliasName(aliasName) .withTargetKeyId(targetKeyId); kmsClient.updateAlias(req);
C#

詳細については、https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/KeyManagementService/MKeyManagementServiceUpdateAliasUpdateAliasRequest.html の AWS SDK for .NETUpdateAlias メソッドを参照してください。

// Updating an alias // String aliasName = "alias/projectKey1"; // Replace the following example key ARN with a valid key ID or key ARN String targetKeyId = "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321"; UpdateAliasRequest updateAliasRequest = new UpdateAliasRequest() { AliasName = aliasName, TargetKeyId = targetKeyId }; kmsClient.UpdateAlias(updateAliasRequest);
Python

詳細については、AWS SDK for Python (Boto3) の update_alias メソッドを参照してください。

# Updating an alias alias_name = 'alias/projectKey1' # Replace the following example key ARN with a valid key ID or key ARN key_id = 'arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321' response = kms_client.update_alias( AliasName=alias_name, TargetKeyID=key_id )
Ruby

詳細については、update_aliasAWS SDK for Ruby インスタンスメソッドを参照してください。

# Updating an alias alias_name = 'alias/projectKey1' # Replace the following example key ARN with a valid key ID or key ARN key_id = 'arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321' response = kmsClient.update_alias({ alias_name: alias_name, target_key_id: key_id })
PHP

詳細については、https://docs.aws.amazon.com/sdk-for-php/latest/reference/api-kms-2014-11-01.html#updatealias の AWS SDK for PHPUpdateAlias メソッドを参照してください。

// Updating an alias // $aliasName = "alias/projectKey1"; // Replace the following example key ARN with a valid key ID or key ARN $keyId = 'arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321'; $result = $KmsClient->updateAlias([ 'AliasName' => $aliasName, 'TargetKeyId' => $keyId, ]);
Node.js

詳細については、AWS SDK for JavaScript in Node.jsupdateAlias プロパティを参照してください。

// Updating an alias // const AliasName = 'alias/projectKey1'; // Replace the following example key ARN with a valid key ID or key ARN const TargetKeyId = 'arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321'; kmsClient.updateAlias({ AliasName, TargetKeyId }, (err, data) => { ... });
PowerShell

エイリアスに関連付けられている KMS キーを変更するには、Update-KMSAlias コマンドレットを使用します。エイリアス名では、大文字と小文字が区別されます。

Update-KMSAlias コマンドレットは出力を返しません。コマンドが機能したことを確認するには、 Get-KMSaliasList コマンドレットを使用します。

# Updating an alias $aliasName = 'alias/projectKey1' # Replace the following example key ARN with a valid key ID or key ARN $keyId = 'arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321' Update-KMSAlias -AliasName $aliasName -TargetKeyID $keyId

AWS KMS PowerShell コマンドレットを使用するには、AWS.Tools.KeyManagementService モジュールをインストールします。詳細については、AWS Tools for Windows PowerShell ユーザーガイドを参照してください。

エイリアスの削除

エイリアスを削除するには、 DeleteAlias オペレーションを使用します。エイリアスを削除しても、関連付けられている KMS キーには影響しません。

クライアントオブジェクトを必要とする言語では、これらの例では「AWS KMS」で作成した クライアントの作成 クライアントオブジェクトを使用します。

Java

詳細については、AWS SDK for Java API リファレンスdeleteAlias メソッドを参照してください。

// Delete an alias for a KMS key // String aliasName = "alias/projectKey1"; DeleteAliasRequest req = new DeleteAliasRequest().withAliasName(aliasName); kmsClient.deleteAlias(req);
C#

詳細については、https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/KeyManagementService/MKeyManagementServiceDeleteAliasDeleteAliasRequest.html の AWS SDK for .NETDeleteAlias メソッドを参照してください。

// Delete an alias for a KMS key // String aliasName = "alias/projectKey1"; DeleteAliasRequest deleteAliasRequest = new DeleteAliasRequest() { AliasName = aliasName }; kmsClient.DeleteAlias(deleteAliasRequest);
Python

詳細については、AWS SDK for Python (Boto3) の delete_alias メソッドを参照してください。

# Delete an alias for a KMS key alias_name = 'alias/projectKey1' response = kms_client.delete_alias( AliasName=alias_name )
Ruby

詳細については、delete_aliasAWS SDK for Ruby インスタンスメソッドを参照してください。

# Delete an alias for a KMS key alias_name = 'alias/projectKey1' response = kmsClient.delete_alias({ alias_name: alias_name })
PHP

詳細については、https://docs.aws.amazon.com/sdk-for-php/latest/reference/api-kms-2014-11-01.html#deletealias の AWS SDK for PHPDeleteAlias メソッドを参照してください。

// Delete an alias for a KMS key // $aliasName = "alias/projectKey1"; $result = $KmsClient->deleteAlias([ 'AliasName' => $aliasName, ]);
Node.js

詳細については、AWS SDK for JavaScript in Node.jsdeleteAlias プロパティを参照してください。

// Delete an alias for a KMS key // const AliasName = 'alias/projectKey1'; kmsClient.deleteAlias({ AliasName }, (err, data) => { ... });
PowerShell

エイリアスを削除するには、 Remove-KMSAlias コマンドレットを使用します。エイリアス名では、大文字と小文字が区別されます。

このコマンドレットはエイリアスを完全に削除するため、PowerShell はコマンドの確認を求めるプロンプトを表示します。ConfirmImpactHigh であるため、ConfirmPreference を使用してこのプロンプトを抑制することはできません。確認プロンプトを表示しないようにする必要がある場合は、Confirm 共通パラメータに $false の値を追加します (例: -Confirm:$false)。

Remove-KMSAlias コマンドレットは出力を返しません。コマンドが有効であることを確認するには、 Get-KMSaliasList コマンドレットを使用します。

# Delete an alias for a KMS key $aliasName = 'alias/projectKey1' Remove-KMSAlias -AliasName $aliasName

AWS KMS PowerShell コマンドレットを使用するには、AWS.Tools.KeyManagementService モジュールをインストールします。詳細については、AWS Tools for Windows PowerShell ユーザーガイドをご参照ください。