AWS Identity and Access Management 認証を使用した Amazon Neptune データベースへの接続 - Amazon Neptune

AWS Identity and Access Management 認証を使用した Amazon Neptune データベースへの接続

IAM DB 認証が有効になっている Amazon Neptune リソースでは、すべての HTTP リクエストが AWS 署名バージョン 4 を使用して署名されていることが必要です。AWS 署名バージョン 4 を使用したリクエストの署名に関する一般的な情報については、「AWS API リクエストの署名」を参照してください。

AWS 署名バージョン 4 は、 AWSリクエストに認証情報を追加するプロセスです。セキュリティ対策として、AWS へのほとんどのリクエストは、アクセスキーを使用して署名する必要があります。アクセスキーは、アクセスキー ID とシークレットアクセスキーで構成されます。

注記

一時的なセキュリティ認証情報を使用している場合は、セッショントークンを含めて、指定した期間が過ぎると失効します。

新しい認証情報をリクエストするときは、セッショントークンを更新する必要があります。詳細については、一時的なセキュリティ認証情報を使用して AWS リソースへのアクセスをリクエストするをご参照ください。

重要

IAM ベースの認証を使用して Neptune にアクセスするには、HTTP リクエストを作成してリクエストに自分で署名することが必要です。

署名バージョン 4 の仕組み
  1. 正規リクエストを作成します。

  2. 正規リクエストなどの情報を使用して署名文字列を作成します。

  3. AWS シークレットアクセスキーを使用して署名キーを取得し、次にその署名キーと署名する文字列を使用して署名を作成します。

  4. 作成した署名をヘッダーの HTTP リクエストに追加するか、クエリ文字列パラメータとして追加します。

Neptune は、リクエストを受信すると、お客様が行ったのと同じステップで署名を計算します。次に、Neptune は、計算した署名とリクエストで送信された署名を比較します。署名が一致すると、リクエストが処理されます。署名が一致しない場合、リクエストは拒否されます。

AWS 署名バージョン 4 を使用したリクエストの署名に関する一般的な情報については、「AWS 全般のリファレンス」の「署名バージョン 4 署名プロセス」を参照してください。

以下のセクションでは、 認証を有効にして Neptune DB インスタンスの Gremlin エンドポイントおよび SPARQL エンドポイントに署名付きリクエストを送信する方法について、例を挙げて説明します。