Key Management Service (KMS) インスタンス API は、HTTP および Transport Layer Security (TLS) プロトコルを使用して安全な通信を確保します。このトピックでは、統合フロー、認証方式、エンドポイント、API 呼び出し手順、統合方法など、KMS インスタンス API の使用方法について説明します。
統合フロー
認証方式
インスタンス API の認証方式は ClientKey のみをサポートしています。 ClientKey の取得方法については、「アプリケーションアクセスポイントを作成する」をご参照ください。
標準作成の場合、ネットワークアクセスルールで [ネットワークタイプ] を [非公開] に設定します。ポリシーでは、[スコープ] を KMS インスタンス ID に設定します。
エンドポイント
インスタンス API は、KMS プライベートネットワークを使用して、Alibaba Cloud 専用ゲートウェイ経由でアクセスされます。専用ゲートウェイエンドポイントの形式は、<YOUR_KMS_INSTANCE_ID>.cryptoservice.kms.aliyuncs.com で、インスタンスの詳細ページから取得できます。たとえば、kst-hzz65f176a0ogplgq****.cryptoservice.kms.aliyuncs.com です。
インスタンス API 呼び出し手順
KMS インスタンス API 操作を呼び出すには、リクエストパラメーターを含む HTTP POST リクエストを KMS に送信します。 API を呼び出すと、システムは応答を返します。リクエストとレスポンスはどちらも、言語およびプラットフォームに依存しない Protocol Buffers 形式を使用してデータシリアル化を行い、XML よりもサイズが小さく、パフォーマンスが高速です。
クライアントは、リクエストメッセージ定義に基づいてリクエストメッセージをエンコードし、リクエストデータを取得します。
クライアントは、リクエストデータと署名を KMS に送信します。
KMS は署名を検証し、リクエストに応答します。
クライアントは、レスポンスメッセージ定義に基づいてレスポンスデータをデコードし、レスポンスメッセージを取得します。
統合方法
Secret SDK
Secret SDK は、インスタンス API の シークレット関連の操作 にのみ適用され、シークレット関連の操作を呼び出す際の複雑さを軽減します。 Secret SDK 呼び出しの例については、「専用ゲートウェイを介してシークレット値を取得する」をご参照ください。
カスタム API 呼び出し (非推奨)
ネイティブ HTTP 呼び出しを行うには、カスタムリクエストを作成し、リクエストに署名する必要があります。署名アルゴリズムについては、「リクエスト署名」をご参照ください。必要なビジネス パラメーターに加えて、共通リクエスト パラメーターも含める必要があります。詳細については、「共通リクエストヘッダー」をご参照ください。カスタム API 呼び出しの例については、「V3 リクエスト本文と署名メカニズム」をご参照ください。
KMS インスタンス SDK (非推奨)
KMS インスタンス SDK は、コーディングプロセスを簡素化し、複雑な署名プロセスをメソッドにカプセル化します。 API の説明に基づいて、必要なパラメーターと認証情報を入力するだけです。これにより、コードの可読性と保守性が向上します。インスタンス SDK 呼び出しの例については、「KMS インスタンス SDK (非推奨)」をご参照ください。