機械翻訳について

Base DatabaseサービスでのAzure Active Directory認証の使用

Microsoft Azure Active Databaseの認証および認可を使用するようにBase Database ServiceでOracle Databaseを構成し、Azure ADユーザーがAzure AD資格証明を使用してデータベースにアクセスできるようにします。

Azure ADとBase Databaseサービスの統合について

ベース・データベース・サービス・インスタンスのOracle Databaseは、Microsoft Azure Active Directory (Azure AD)ユーザーがAzure OAuth2アクセス・トークンを使用して接続するように構成できます。

Azure ADユーザー、アーキテクチャ、ユーザー・マッピング、ユース・ケースおよび統合プロセスの認可の詳細は、Oracle Databaseセキュリティ・ガイドの「Oracle Databaseに対するMicrosoft Azure ADユーザーの認可の概要」の項を参照してください。

前提条件

Base Database ServiceでのAzure AD認証には、次の前提条件が必要です。

これらのそれぞれについて、次のトピックで詳しく説明します。

ネットワーク設定

データベースでAzure AD認証を使用する前に、ネットワーキング・サービスを使用して、サービス・ゲートウェイ、ルート・ルールおよびエグレス・セキュリティ・ルールを、データベース・リソースが存在するVirtual Cloud Network (VCN)およびサブネットに追加する必要があります。 NATゲートウェイを使用してAzure ADへのアウトバウンド接続を構成するには、次のステップを実行します。

  1. 「サービス・ゲートウェイの作成」の手順に従って、データベース・リソースが存在するVCNにNATゲートウェイを作成します。
  2. サービス・ゲートウェイを作成した後、データベース・リソースが存在するルート・ルールおよびエグレス・セキュリティ・ルール「各サブネット」 (VCN内)を追加して、これらのリソースがゲートウェイを使用してAzure AD認証を使用するためにAzure ADインスタンスから公開キーを取得できるようにします:
    1. サブネットの「サブネットの詳細」ページに移動します。
    2. 「サブネット情報」タブで、サブネット「ルート表」の名前をクリックしてその「ルート表詳細」ページを表示します。
    3. 既存の「ルート・ルール」の表で、次の特性を持つルールがすでに存在するかどうかを確認します:
      • 宛先: 0.0.0.0/0
      • ターゲット・タイプ: NAT Gateway
      • ターゲット: VCNで作成したサービス・ゲートウェイの名前

      このようなルールが存在しない場合は、「ルート・ルールの追加」をクリックし、これらの特性を持つルート・ルールを追加します。

    4. サブネットの「サブネットの詳細」ページに戻ります。
    5. サブネット「セキュリティ・リスト」表で、サブネット・セキュリティ・リストの名前をクリックして、その「セキュリティ・リストの詳細」ページを表示します。
    6. サイド・メニューの「リソース」で、「エグレス・ルール」をクリックします。
    7. 既存の「エグレス・ルール」の表で、次の特性を持つルールがすでに存在するかどうかを確認します:
      • 宛先タイプ: CIDR
      • 宛先: 0.0.0.0/0
      • IPプロトコル: TCP
      • ソース・ポート範囲: 443
      • 宛先ポート範囲: すべて
    8. このようなルールが存在しない場合は、「エグレス・ルールの追加」をクリックし、これらの特性を持つエグレス・ルールを追加します。

TLS構成

データベース・クライアントからデータベース・サーバーにAzure ADトークンを送信する場合は、TLS接続を確立する必要があります。 Base Database Serviceインスタンスのデータベース証明書を含むTLSウォレットは、WALLET_ROOTのロケーションに格納する必要があります。 tlsディレクトリを作成: WALLET_ROOT/<PDB GUID>/tls

データベース・クライアントとサーバー間のTLSを構成する場合、考慮すべきオプションがいくつかあります。

  • 一般的に知られている認証局によって署名された、自己署名データベース・サーバー証明書とデータベース・サーバー証明書の使用。
  • 一方向TLS (TLS)と相互または双方向TLS (mTLS)。
  • ウォレットの有無にかかわらずクライアント。

自己署名証明書: 自己署名証明書の使用は、自分で作成でき、無料であるため、内部的にITリソースに直面する一般的な方法です。 リソース(この場合、データベース・サーバー)には、データベース・クライアントに対して自身を認証するための自己署名証明書があります。 自己署名証明書およびルート証明書は、データベース・サーバー・ウォレットに格納されます。 データベース・クライアントがデータベース・サーバー証明書を認識できるようにするには、クライアントでルート証明書のコピーも必要です。 この自動作成されたルート証明書は、クライアント側のウォレットに格納することも、クライアント・システムのデフォルトの証明書ストアにインストールすることもできます(WindowsおよびLinuxのみ)。 セッションが確立されると、データベース・クライアントは、データベース・サーバーによって送信された証明書が同じルート証明書によって署名されていることを確認します。

よく知られた認証局: 一般的に知られているルート認証局を使用すると、ルート証明書がすでにクライアント・システムのデフォルトの証明書ストアに格納されている可能性が高いという点で、いくつかの利点があります。 共通のルート証明書であれば、クライアントがルート証明書を格納するための追加のステップはありません。 不利な点は、通常はコストが関連付けられていることです。

一方向TLS: 標準のTLSセッションでは、サーバーのみがクライアントに証明書を提供して自身を認証します。 クライアントは、サーバーに対して自身を認証するために個別のクライアント証明書を必要としません(HTTPSセッションの確立方法と同様)。 データベースにはサーバー証明書を格納するためのウォレットが必要ですが、クライアントに必要なのは、サーバー証明書の署名に使用されるルート証明書のみです。

双方向TLS (相互TLS、mTLSとも呼ばれる): mTLSでは、クライアントとサーバーの両方に、相互に表示されるアイデンティティ証明書があります。 ほとんどの場合、同じルート証明書がこれらの証明書の両方に署名されているため、データベース・サーバーとクライアントで同じルート証明書を使用してほかの証明書を認証できます。ユーザー・アイデンティティは証明書によってデータベース・サーバーによって認証されるため、mTLSを使用してユーザーを認証することがあります。 これは、Azure ADトークンを渡すには必要ありませんが、Azure ADトークンを渡すときに使用できます。

ウォレットを持つクライアント: クライアント証明書を格納するためにmTLSを使用する場合、クライアント・ウォレットは必須です。 ただし、ルート証明書は、同じウォレットまたはシステムのデフォルトの証明書ストアに格納できます。

ウォレットのないクライアント : 次の条件でTLSを使用すると、クライアントをウォレットなしで構成できます:
  1. クライアントが独自の証明書を持たない一方向TLSが構成されています
  2. データベース・サーバーの証明書に署名したルート証明書は、システムのデフォルトの証明書ストアに格納されます。 サーバー証明書が共通認証局によって署名されている場合、おそらくすでにルート証明書が存在することになります。 自己署名証明書の場合は、クライアント・ウォレットの使用を回避するために、システムのデフォルトの証明書ストアにルート証明書をインストールする必要があります。

前述のオプションを含むデータベース・クライアントとデータベース・サーバー間のTLSの構成方法の詳細は、「トランスポート層のセキュリティ認証の構成」を参照してください。

自己署名証明書の使用およびウォレット関連の追加タスクを選択する場合は、データベース・セキュリティ・ガイドのorapkiコマンドライン・インタフェース(CLI)リファレンス・ガイドを参照してください。 「公開キー・インフラストラクチャ(PKI)要素の管理」を参照してください。

Azure ADとの統合のためのBase Databaseサービスの構成

Azure ADとのBase Database Serviceの統合では、データベースがAzure AD公開キーをリクエストできるように、データベースをAzure ADに登録する必要があります。

ベース・データベース・サービスをAzure ADと統合するように構成するには、まず「前提条件」セクションの前提条件を完了してから、Oracle Databaseセキュリティ・ガイドの「Microsoft Azure AD IntegrationのOracle Databaseの構成」の項の手順に従う必要があります。

Oracle Databaseスキーマおよびロールのマップ

Azure ADユーザーは、1つのデータベース・スキーマにマップされ、オプションで1つ以上のデータベース・ロールにマップされます。

Oracle DatabaseスキーマおよびロールをAzure ADユーザーにマッピングするオプションの詳細は、Oracle Databaseセキュリティ・ガイドの「Oracle Databaseスキーマおよびロールのマッピング」の項を参照してください。

Azure ADへのクライアント接続の構成

Azure ADトークンを使用してベース・データベース・サービス・インスタンスに接続するようにクライアントを構成するには、様々な方法があります。

Azure ADクライアント接続の構成の詳細は、Oracle Databaseセキュリティ・ガイドの「Oracle DatabaseへのAzure ADクライアント接続の構成」の項を参照してください。

Azureエンドポイントのアクセシビリティのテスト

接続テストを実行して、ベース・データベース・インスタンスがAzure ADエンドポイントにアクセスできることを確認できます。

接続のテストの詳細は、Oracle Databaseセキュリティ・ガイドの「Azureエンドポイントのアクセシビリティのテスト」の項を参照してください。

接続のトラブルシューティングに使用するトレース・ファイル

トレース・ファイルを使用して、Azure AD接続を使用したBase Database Serviceクライアント接続のトラブルシューティングを行うことができます。

トレース・ファイルおよびトークン認証用のクライアント・トレースの設定の詳細は、Oracle Databaseセキュリティ・ガイドの「Azure ADを使用したOracle Databaseクライアント接続のトラブルシューティング用のトレース・ファイル」の項を参照してください。