すべてのプロダクト
Search
ドキュメントセンター

Key Management Service:Alibaba Cloud SDK

最終更新日:Apr 21, 2026

Alibaba Cloud SDK を統合すると、OpenAPI を呼び出して、インスタンスやキーの作成などの管理操作を実行できます。また、暗号化、復号、シークレット値の取得などのビジネス運用も実行できます。このトピックでは、Alibaba Cloud SDK を統合して Key Management Service (KMS) を使用する方法について説明します。

アクセスの概要

KMS のために Alibaba Cloud SDK を統合する場合、管理操作は共有ゲートウェイ経由でのみアクセス可能ですが、ビジネス運用は共有ゲートウェイと専用ゲートウェイの両方からアクセスできることに注意してください。以下の図は、これらのアクセス方法を示しています。

KMS アクセスにおける共有ゲートウェイと専用ゲートウェイの違い

以下の表は、Alibaba Cloud SDK を使用して KMS にアクセスしビジネス運用を行う際の、共有ゲートウェイと専用ゲートウェイの主な違いを示しています。

項目

共有ゲートウェイ

専用ゲートウェイ

ネットワーク

パブリックネットワークまたは VPC ネットワーク。

KMS プライベートネットワーク。

パフォーマンス

KMS には、1 秒あたりの API リクエスト数を制限するクォータがあります。

例えば、暗号化と復号の QPS は 1000 に固定されています。

API リクエスト数を制限する代わりに、KMS はベストエフォートモードでリクエストを処理します。処理中には、利用可能な最大のコンピューティングリソースとストレージリソースが使用されます。KMS インスタンスを購入する際に、ビジネス要件に基づいて適切な QPS を選択できます。

サポートされる API

暗号操作とシークレット値取得のためのすべての OpenAPI。

ReEncrypt を除く、暗号操作とシークレット値取得のためのすべての OpenAPI。

ネットワークアクセス制御

ネットワークアクセス制御では、VPC ID (条件キー: acs:SourceVpc) と VPC 内の IP アドレス (条件キー: acs:VpcSourceIp) がサポートされています。

VPC ID (条件キー: acs:SourceVpc) と VPC 内のソース IP アドレス (条件キー: acs:VpcSourceIp) はネットワークアクセス制御でサポートされていません。ネットワークアクセス制御が必要な場合は、アカウントマネージャーにお問い合わせください。

権限付与

STS 認証を使用してシークレットを取得する場合、権限付与は GetSecretValue 操作にのみ適用され、Decrypt 操作には適用されません。他の認証方式では、両方の操作に権限付与が適用されます。

シークレット取得プロセス中、GetSecretValue と Decrypt の両方の操作が権限付与されます。

ログ監査

ActionTrail

Simple Log Service (SLS)

SDK 構成

エンドポイント

クライアントの初期化中に、共有ゲートウェイエンドポイントを次のいずれかのフォーマットで設定する必要があります:

  • パブリックネットワークドメイン名: kms.<REGION_ID>.aliyuncs.com

  • VPC ドメイン名: kms-vpc.<REGION_ID>.aliyuncs.com

クライアントの初期化中に、専用ゲートウェイエンドポイントを次のフォーマットで設定する必要があります: <KMS_INSTANCE_ID>.cryptoservice.kms.aliyuncs.com

CA 証明書

不要です。

  • Alibaba Cloud SDK V2.0: CA 証明書の設定が必要です。

  • Alibaba Cloud SDK V1.0: 証明書をサポートしていません。代わりに、HTTPSInsecure 実行時パラメーターを true に設定する必要があります: client.SetHTTPSInsecure(true)

サポートされる OpenAPI

管理操作は共有ゲートウェイ経由でのみアクセス可能ですが、ビジネス運用は共有ゲートウェイと専用ゲートウェイの両方からアクセスできます。

管理操作

サービス管理

API

タイトル

説明

DescribeAccountKmsStatus

DescribeAccountKmsStatus

ご利用の Alibaba Cloud アカウント内の KMS のステータスを照会します。

OpenKmsService

OpenKmsService

ご利用の Alibaba Cloud アカウントで KMS をアクティベートします。

インスタンス管理

API

タイトル

説明

ListKmsInstances

ListKmsInstances

現在のリージョンにあるすべての KMS インスタンスを照会します。

ConnectKmsInstance

ConnectKmsInstance

KMS インスタンスを有効にします。

GetKmsInstance

GetKmsInstance

KMS インスタンスの詳細を取得します。

UpdateKmsInstanceBindVpc

UpdateKmsInstanceBindVpc

KMS インスタンスの VPC バインディングを更新します。

ReleaseKmsInstance

ReleaseKmsInstance

従量課金制の KMS インスタンスをリリースします。

GetDefaultKmsInstance

GetDefaultKmsInstance

指定されたリージョンのデフォルトの KMS インスタンスを照会します。

キー管理

API

タイトル

説明

CreateKey

CreateKey

エンベロープ暗号化、デジタル署名、またはその他の暗号操作のためにカスタマーマスターキー (CMK) を作成します。

ListKeys

ListKeys

現在のリージョンにあるすべての CMK の ID と ARN を照会します。

DescribeKey

DescribeKey

キーの状態、使用量、ローテーション設定など、CMK のメタデータを照会します。

UpdateKeyDescription

UpdateKeyDescription

CMK の説明を更新します。

EnableKey

EnableKey

データの暗号化と復号のためにキーを有効にします。

DisableKey

DisableKey

キーを無効にします。

CreateAlias

CreateAlias

キーのエイリアスを作成します。

ListAliases

ListAliases

現在のアカウントの現在のリージョンにあるすべてのエイリアスを照会します。

ListAliasesByKeyId

ListAliasesByKeyId

キーにバインドされているすべてのエイリアスを照会します。

DeleteAlias

DeleteAlias

エイリアスを削除します。

UpdateAlias

UpdateAlias

既存のエイリアスを別の CMK ID にバインドします。

GetParametersForImport

GetParametersForImport

CMK のキーマテリアルをインポートするために使用されるパラメーターを照会します。

ImportKeyMaterial

ImportKeyMaterial

外部で生成されたキーマテリアルを、オリジンが EXTERNAL の CMK にインポートします。

DeleteKeyMaterial

DeleteKeyMaterial

インポートされたキーマテリアルを CMK から削除します。削除後、CMK はキーマテリアルを再インポートするまで PendingImport 状態になります。

ScheduleKeyDeletion

ScheduleKeyDeletion

指定された CMK を削除します。

CancelKeyDeletion

CancelKeyDeletion

CMK の削除タスクをキャンセルします。

SetDeletionProtection

SetDeletionProtection

CMK の削除保護を有効または無効にします。

UpdateRotationPolicy

UpdateRotationPolicy

CMK の自動ローテーションポリシーを更新します。

DescribeKeyVersion

DescribeKeyVersion

特定の CMK バージョンのメタデータを照会します。

CreateKeyVersion

CreateKeyVersion

CMK のバージョンを作成します。

ListKeyVersions

ListKeyVersions

指定された CMK のすべてのバージョンを照会します。

SetKeyPolicy

SetKeyPolicy

KMS インスタンス内の CMK のキーポリシーを設定します。

GetKeyPolicy

GetKeyPolicy

KMS インスタンス内の CMK のキーポリシーを照会します。

シークレット管理

API

タイトル

説明

ListSecrets

ListSecrets

現在のリージョンにあるすべてのシークレットを照会します。

DeleteSecret

DeleteSecret

シークレットを削除します。

CreateSecret

CreateSecret

シークレットを作成し、その初期バージョンを保存します。

UpdateSecret

UpdateSecret

シークレットのメタデータを更新します。

UpdateSecretVersionStage

UpdateSecretVersionStage

バージョンステージラベルをシークレットの別のバージョンに移動します。

UpdateSecretRotationPolicy

UpdateSecretRotationPolicy

シークレットのローテーションポリシーを更新します。

DescribeSecret

DescribeSecret

シークレットのメタデータを照会します。

ListSecretVersionIds

ListSecretVersionIds

指定されたシークレットのすべてのバージョン ID とステージラベルを照会します。

GetRandomPassword

GetRandomPassword

ランダムなパスワード文字列を生成します。

PutSecretValue

PutSecretValue

汎用シークレットの新しいバージョンのシークレット値を保存します。

RestoreSecret

RestoreSecret

削除されたシークレットを復元します。

RotateSecret

RotateSecret

シークレットを直ちにローテーションします。

SetSecretPolicy

SetSecretPolicy

KMS インスタンス内のシークレットのアクセスポリシーを設定します。

GetSecretPolicy

GetSecretPolicy

KMS インスタンス内の指定されたシークレットのアクセスポリシーを照会します。

タグ管理

API

タイトル

説明

GetKmsInstanceQuotaInfos

GetKmsInstanceQuotaInfos

KMS インスタンスのクォータ使用量と制限を照会します。

ListResourceTags

ListResourceTags

CMK のタグを照会します。

TagResource

TagResource

CMK、シークレット、または証明書にタグを追加します。

UntagResource

UntagResource

CMK、シークレット、または証明書からタグを削除します。

アプリケーション管理

API

タイトル

説明

CreateNetworkRule

CreateNetworkRule

KMS インスタンスへのアクセスを許可するプライベート IP アドレスまたはプライベート CIDR ブロックを設定するためのネットワークアクセスルールを作成します。

ListNetworkRules

ListNetworkRules

現在のリージョンにあるすべてのネットワークアクセスルールを照会します。

DescribeNetworkRule

DescribeNetworkRule

ネットワークアクセスルールの詳細を取得します。

UpdateNetworkRule

UpdateNetworkRule

ネットワークアクセスルールを更新します。

DeleteNetworkRule

DeleteNetworkRule

ネットワークアクセスルールを削除します。

CreatePolicy

CreatePolicy

アクセスを許可するキーとシークレットを設定するための権限ポリシーを作成します。

ListPolicies

ListPolicies

現在のリージョンにあるすべての権限ポリシーを照会します。

DescribePolicy

DescribePolicy

権限ポリシーの詳細を取得します。

UpdatePolicy

UpdatePolicy

権限ポリシーを更新します。

DeletePolicy

DeletePolicy

権限ポリシーを削除します。

CreateApplicationAccessPoint

CreateApplicationAccessPoint

アプリケーションアクセスポイント (AAP) を作成します。

ListApplicationAccessPoints

ListApplicationAccessPoints

現在のリージョンにあるすべてのアプリケーションアクセスポイント (AAP) を照会します。

DescribeApplicationAccessPoint

DescribeApplicationAccessPoint

AAP の詳細を取得します。

UpdateApplicationAccessPoint

UpdateApplicationAccessPoint

AAP に関する情報を更新します。

DeleteApplicationAccessPoint

DeleteApplicationAccessPoint

AAP を削除します。

CreateClientKey

CreateClientKey

クライアントキーを作成します。

ListClientKeys

ListClientKeys

AAP 内のすべてのクライアントキーを照会します。

GetClientKey

GetClientKey

クライアントキーに関する情報を取得します。

DeleteClientKey

DeleteClientKey

クライアントキーを削除します。

ビジネス運用 - 暗号操作

重要

共有ゲートウェイ経由で暗号操作を実行するには、まずパブリックアクセスを有効にする必要があります。

API

説明

共有ゲートウェイ

専用ゲートウェイ

GenerateDataKey

エンベロープ暗号化のためにランダムなデータキーを生成します。データキーはプレーンテキストと暗号文の両方の形式で返されます。

サポート済み

サポート済み

GenerateAndExportDataKey

ランダムなデータキーを生成し、指定した CMK と公開キーを使用して暗号化し、両方の暗号文を返します。

サポート済み

サポート済み

Encrypt

対称 CMK を使用してプレーンテキストを暗号化します。

サポート済み

サポート済み

Decrypt

CMK を使用して暗号化された暗号文を復号します。

サポート済み

サポート済み

ReEncrypt

プレーンテキストを公開せずに、異なる CMK で暗号文を再暗号化します。

サポート済み

サポート済み

ExportDataKey

CMK で暗号化されたデータキーをエクスポートします。データキーは、安全な伝送のために指定した公開キーで再暗号化されます。

サポート済み

サポート済み

GenerateDataKeyWithoutPlaintext

プレーンテキストのコピーなしで、暗号文形式のみのランダムなデータキーを生成します。

サポート済み

非サポート

AsymmetricSign

非対称 CMK を使用してデジタル署名を生成します。

サポート済み

サポート済み

AsymmetricVerify

非対称 CMK の公開キーを使用してデジタル署名を検証します。

サポート済み

サポート済み

AsymmetricEncrypt

非対称 CMK の公開キーを使用してデータを暗号化します。

サポート済み

サポート済み

AsymmetricDecrypt

非対称 CMK の秘密キーを使用してデータを復号します。

サポート済み

サポート済み

GetPublicKey

非対称キーの公開キーを取得します。公開キーを使用して、デバイス上でデータを暗号化したり、署名を検証したりできます。

サポート済み

サポート済み

ビジネス運用 - シークレット値の取得

API

説明

共有ゲートウェイ

専用ゲートウェイ

GetSecretValue

シークレット値を取得します。

サポート済み

サポート済み

サポートされるプログラミング言語

以下の表は、サポートされている言語とその SDK のダウンロードリンクおよびリファレンスドキュメントの一覧です。

サポートされるプログラミング言語

V2.0 SDK

V1.0 SDK (非推奨)

Java

Python

C++

  • ダウンロード: kms-20160120

  • ドキュメント: なし

PHP

.NET (C#)

Go

TypeScript

  • ダウンロード: kms20160120

  • ドキュメント: なし

なし

Swift

  • ダウンロード: kms-20160120

  • ドキュメント: なし

なし