次の方法で共有


MySQL での認証に Microsoft Entra ID を使用する

適用対象: Azure Database for MySQL - 単一サーバー

重要

Azure Database for MySQL シングル サーバーは廃止パスにあります。 Azure Database for MySQL フレキシブル サーバーにアップグレードすることを強くお勧めします。 Azure Database for MySQL フレキシブル サーバーへの移行の詳細については、Azure Database for MySQL シングル サーバーの現状に関するページを参照してください

Microsoft Entra 認証は、Microsoft Entra ID で定義された ID を使用して Azure Database for MySQL に接続する仕組みです。 Microsoft Entra 認証を使用すると、データベース ユーザーの ID や他の Microsoft サービスを一元管理でき、アクセス許可の管理が容易になります。

Microsoft Entra ID を使うと次のようなベネフィットがあります。

  • Azure サービス全体でのユーザー認証の一元化
  • パスワード ポリシーとパスワード ローテーションの一元管理
  • Microsoft Entra ID による複数の認証形式のサポート (パスワードを格納する必要がなくなる)
  • お客様は、外部の (Microsoft Entra ID) グループを使用してデータベースのアクセス許可を管理できます。
  • Microsoft Entra 認証では、MySQL データベース ユーザーを使用して、データベース レベルで ID を認証します
  • Azure Database for MySQL に接続するアプリケーションに対するトークンベースの認証のサポート

Microsoft Entra 認証を構成して使用するには、次のプロセスを使用します。

  1. 必要に応じて、Microsoft Entra ID を作成し、ユーザー ID を設定します。
  2. (省略可能) Active Directory を関連付けるか、現在 Azure サブスクリプションに関連付けられている Active Directory を変更します。
  3. Azure Database for MySQL サーバーの Microsoft Entra 管理者を作成します。
  4. Microsoft Entra の ID にマップされているデータベース ユーザーをデータベースに作成します。
  5. Microsoft Entra の ID 用のトークンを取得してログインし、自分のデータベースに接続します。

Note

Microsoft Entra ID を作成して設定し、Azure Database for MySQL で Microsoft Entra ID を構成する方法については、Azure Database for MySQL の Microsoft Entra ID を使用した構成およびサインインに関するページを参照してください。

アーキテクチャ

次の概要図は、Azure Database for MySQL で Microsoft Entra 認証を使用した場合の認証のしくみをまとめたものです。 矢印は通信経路を示します。

認証フロー

管理者の構造

Microsoft Entra 認証を使用すると、MySQL サーバーの管理者アカウントは、元の MySQL 管理者と Microsoft Entra 管理者の 2 つになります。 ユーザー データベースに最初の Microsoft Entra ID 包含データベース ユーザーを作成できるのは、Microsoft Entra アカウントに基づく管理者のみです。 Microsoft Entra ユーザーまたは Microsoft Entra グループを Microsoft Entra 管理者のログインにすることができます。 管理者がグループ アカウントの場合、どのグループ メンバーでもそのアカウントを使用できるため、MySQL サーバーに対して複数の Microsoft Entra 管理者が有効になります。 グループ アカウントを管理者として使用すると、MySQL サーバーでユーザーまたはアクセス許可を変更することなく、Microsoft Entra ID でグループ メンバーを一元的に追加および削除できるため、より管理しやすくなります。 構成できる Microsoft Entra 管理者 (ユーザーまたはグループ) は常に 1 つだけです。

admin structure

アクセス許可

Microsoft Entra ID で認証できる新しいユーザーを作成するには、指定された Microsoft Entra 管理者である必要があります。 このユーザーは、特定の Azure Database for MySQL サーバー用に Microsoft Entra 管理者アカウントを構成することで割り当てられます。

新しい Microsoft Entra データベース ユーザーを作成するには、Microsoft Entra 管理者として接続する必要があります。 これについては、Azure Database for MySQL 向けの Microsoft Entra ID を使用した構成とログインに関するページで説明されています。

Microsoft Entra 認証が可能なのは、Microsoft Entra 管理者が Azure Database for MySQL 用に作成された場合のみです。 Microsoft Entra 管理者がサーバーから削除された場合、以前に作成された既存の Microsoft Entra ユーザーは、Microsoft Entra 資格情報を使用してデータベースにアクセスできなくなります。

Microsoft Entra の ID を使用して接続する

Microsoft Entra 認証では、Microsoft Entra の ID を使用してデータベースに接続する場合、次の方法がサポートされています。

  • Microsoft Entra パスワード
  • Microsoft Entra 統合
  • MFA による Microsoft Entra ユニバーサル
  • Active Directory Application 証明書またはクライアント シークレットの使用
  • Managed Identity

Active Directory に対して認証された後、トークンを取得します。 このトークンはログイン用のパスワードです。

新しいユーザーの追加などの管理操作は、現時点では Microsoft Entra ユーザー ロールに対してのみサポートされることに注意してください。

Note

Active Directory トークンを使用して接続する方法の詳細については、Azure Database for MySQL の Microsoft Entra ID を使用した構成およびサインインに関するページを参照してください。

その他の注意点

  • Microsoft Entra 認証は、MySQL 5.7 以降でのみ使用できます。
  • Azure Database for MySQL サーバーに対して構成できる Microsoft Entra 管理者は、常に 1 人だけです。
  • Microsoft Entra アカウントを使用して Azure Database for MySQL に最初に接続できるのは、MySQL の Microsoft Entra 管理者だけです。 Active Directory 管理者は、それ以降の Microsoft Entra のデータベース ユーザーを構成できます。
  • Microsoft Entra ID からユーザーが削除されると、そのユーザーは Microsoft Entra ID で認証されることができなくなります。したがって、そのユーザーのアクセス トークンを取得できなくなります。 この場合、一致するユーザーがデータベースに残るものの、そのユーザーを使用してサーバーに接続することはできなくなります。

Note

削除された Microsoft Entra ユーザーによるログインは、トークンの有効期限 (トークンの発行から最大 60 分) が切れるまで、引き続き行うことができます。 Azure Database for MySQL からもユーザーを削除する場合は、そのアクセスはすぐに取り消されます。

  • サーバーから Microsoft Entra 管理者が削除されると、サーバーと Microsoft Entra テナントの関連付けが解消されます。したがって、サーバーへのすべての Microsoft Entra ログインは無効になります。 同じテナントから新しい Microsoft Entra を追加すると、Microsoft Entra ログインが再び有効になります。
  • Azure Database for MySQL では、ユーザー名ではなくユーザーの一意な Microsoft Entra ユーザー ID を使用して、アクセス トークンを Azure Database for MySQL ユーザーに一致させます。 つまり、Microsoft Entra ID で Microsoft Entra ユーザーが削除され、同じ名前で新しいユーザーが作成された場合、Azure Database for MySQL では、別のユーザーと見なされます。 このため、ユーザーを Microsoft Entra ID から削除した後、同じ名前で新しいユーザーを追加しても、その新しいユーザーは既存のユーザーに接続することはできません。

Note

Microsoft Entra 認証が有効になっている Azure MySQL のサブスクリプションは、別のテナントやディレクトリに転送できません。

次のステップ