8.3.1.6 ステップ5: Azure App Configurationストアの値を含む接続識別子の使用

データベース・クライアントの接続識別子で、Azure App Configuration名、キー・パスおよびAzure認証パラメータを使用します。

構文:
config-azure://{appconfig-name}[?key=prefix&label=value&option1=value1&option2=value2...]

構文の詳細は次のとおりです:

構文要素 説明

config-azure:// {appconfig-name}

Azure App Configurationストアの名前。

key=prefix

Azure App Configurationでconnect_descriptor接尾辞を使用しないキーの接頭辞。

label=value

接続記述子に使用されるラベル。

ラベルは、同じキーが設定されたキー値を区別するために使用します。詳細は、Microsoft Azureのドキュメントを参照してください。

option=value

集中化された構成プロバイダにアクセスするための認証方法および対応する認証パラメータ。

認証方式:

AUTHENTICATIONパラメータを使用して次のいずれかの認証方式を設定します:

  • Azureサービス・プリンシパル(またはOAuth 2.0クライアント資格証明)の場合: AUTHENTICATION=AZURE_DEFAULT

    ノート: これはデフォルト設定です。つまり、OAuth 2.0クライアント資格証明の認証方式はデフォルトで暗黙的に指定されるため、AUTHENTICATIONパラメータを明示的に指定する必要はありません。この場合は、この設定を省略できます。

  • Azureサービス・プリンシパルの場合: AUTHENTICATION=AZURE_SERVICE_PRINCIPAL

  • Azure Managed Identity (またはAzure Managed User Identity)の場合: AUTHENTICATION=AZURE_MANAGED_IDENTITY

認証パラメータ:

AUTHENTICATIONでの説明に従って、選択した認証方式に対応する認証パラメータを設定します。

たとえば、デフォルトのOAuth 2.0クライアント資格証明の認証方式を使用する場合は、AZURE_TENANT_IDAZURE_CLIENT_IDAZURE_CLIENT_SECRETなどの認証パラメータを設定します。

すべての認証パラメータの詳細は、Azure App Configurationストアの認証パラメータを参照してください。

:

異なる値で接続識別子文字列を指定する方法の例をいくつか見てみましょう:

  • デフォルトのOAuth 2.0クライアント資格証明認証を使用する場合:

    saleshrなどの複数のアプリケーションがある場合、salesの接続記述子をdatabase/sales接頭辞の下に、hrの接続記述子をdatabase/hr接頭辞の下に格納できます。

    次のネーミングの使用方法では、database/sales接頭辞の下のconnect_descriptorが参照されます:ここでは、AUTHENTICATION=AZURE_DEFAULT設定は省略されています。デフォルト・フローの認証方式は暗黙的であるため、AZURE_CLIENT_IDAZURE_CLIENT_SECRETおよびAZURE_TENANT_ID認証パラメータを使用してクライアント資格証明のみが指定されます。
    • 文字列に指定したデータベース資格証明を使用する場合:
      sqlplus dbuser@"config-azure://dbclient-appconfig?key=database/sales/&azure_client_id=a1abc12-ab12-1ab1-a1b1-123a&azure_client_secret=A123B~AB123a~AB1234_abab&azure_tenant_id=123ab-12a12-1a2b1-a1b2"
    • Azure Key Vaultに保存したデータベース資格証明を使用する場合:
      sqlplus /@"config-azure://dbclient-appconfig?key=database/sales/&azure_client_id=a1abc12-ab12-1ab1-a1b1-123a&azure_client_secret=A123B~AB123a~AB1234_abab&azure_tenant_id=123ab-12a12-1a2b1-a1b2"
    同様に、次のネーミングの使用方法では、database/hr接頭辞の下のconnect_descriptorが参照されます:
    • 文字列に指定したデータベース資格証明を使用する場合:
      sqlplus dbuser@"config-azure://dbclient-appconfig?key=database/hr/&azure_client_id=a1abc12-ab12-1ab1-a1b1-123a&azure_client_secret=A123B~AB123a~AB1234_abab&azure_tenant_id=123ab-12a12-1a2b1-a1b2"
    • Azure Key Vaultに保存したデータベース資格証明を使用する場合:
      sqlplus /@"config-azure://dbclient-appconfig?key=database/hr/&azure_client_id=a1abc12-ab12-1ab1-a1b1-123a&azure_client_secret=A123B~AB123a~AB1234_abab&azure_tenant_id=123ab-12a12-1a2b1-a1b2"
  • Azureサービス・プリンシパル認証を使用する場合:
    • 文字列に指定したデータベース資格証明を使用する場合:
      sqlplus dbuser@"config-azure://dbclient-appconfig?key=database/sales/&authentication=azure_service_principal&azure_client_id=a1abc12-ab12-1ab1-a1b1-123a&azure_client_secret=A123B~AB123a~AB1234_abab&azure_client_certificate_path=/app/dbclient/certificate_for_authenticaion.txt&azure_tenant_id=123ab-12a12-1a2b1-a1b2"
    • Azure Key Vaultに保存したデータベース資格証明を使用する場合:
      sqlplus /@"config-azure://dbclient-appconfig?key=database/sales/&authentication=azure_service_principal&azure_client_id=a1abc12-ab12-1ab1-a1b1-123a&azure_client_secret=A123B~AB123a~AB1234_abab&azure_client_certificate_path=/app/dbclient/certificate_for_authenticaion.txt&azure_tenant_id=123ab-12a12-1a2b1-a1b2"
  • Azure Managed Identity認証を使用する場合:
    • 文字列に指定したデータベース資格証明を使用する場合:
      sqlplus dbuser@"config-azure://dbclient-appconfig?key=database/sales/&authentication=azure_managed_identity"
    • Azure Key Vaultに保存したデータベース資格証明を使用する場合:
      sqlplus /@"config-azure://dbclient-appconfig?key=database/sales/&authentication=azure_managed_identity"