다음을 통해 공유


MySQL 인증을 위해 Microsoft Entra ID 사용

적용 대상: Azure Database for MySQL - 단일 서버

Important

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. 선택적으로 현재 Azure 구독과 연결된 Active Directory를 연결하거나 변경합니다.
  3. Azure Database for MySQL 서버에 대한 Microsoft Entra 관리자를 만듭니다.
  4. Microsoft Entra ID에 매핑된 데이터베이스에 데이터베이스 사용자를 만듭니다.
  5. Microsoft Entra ID에 대한 토큰을 검색하고 로그인하여 데이터베이스에 연결합니다.

참고 항목

Microsoft Entra ID를 만들고 채우는 방법과 Azure Database for MySQL을 사용하여 Microsoft Entra ID를 구성하는 방법을 알아보려면 Azure Database for MySQL에 대한 Microsoft Entra ID 구성 및 로그인을 참조하세요.

관리자 구조

Microsoft Entra 인증을 사용할 때 MySQL 서버에는 두 개의 관리자(원래 MySQL 관리자와 Microsoft Entra 관리자) 계정이 있습니다. Microsoft Entra 계정을 기반으로 하는 관리자만이 사용자 데이터베이스에 첫 번째 Microsoft Entra ID가 포함된 데이터베이스 사용자를 만들 수 있습니다. Microsoft Entra 관리자 로그인은 Microsoft Entra 사용자 또는 Microsoft Entra 그룹일 수 있습니다. 관리자가 그룹 계정인 경우 모든 그룹 멤버가 이를 사용할 수 있으므로 MySQL 서버에 대해 여러 Microsoft Entra 관리자가 사용하도록 설정됩니다. 그룹 계정을 관리자 권한으로 사용하면 MySQL 서버의 사용자나 권한을 변경하지 않고도 Microsoft Entra ID에서 그룹 멤버를 중앙에서 추가 및 제거할 수 있으므로 관리 효율성이 향상됩니다. 언제든지 한 명의 Microsoft Entra 관리자(사용자 또는 그룹)만 구성할 수 있습니다.

사용 권한

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 애플리케이션 인증서 또는 클라이언트 암호 사용
  • 관리 ID

Active Directory에 대해 인증을 수행한 후 토큰을 검색합니다. 이 토큰은 로그인에 사용되는 암호입니다.

새 사용자 추가와 같은 관리 작업은 현재 Microsoft Entra 사용자 역할에 대해서만 지원됩니다.

참고 항목

Active Directory 토큰으로 연결하는 방법에 대한 자세한 내용은 Azure Database for MySQL에 대한 Microsoft Entra ID 구성 및 로그인을 참조하세요.

추가 고려 사항

  • Microsoft Entra 인증은 MySQL 5.7 이상에서만 사용할 수 있습니다.
  • Azure Database for MySQL 서버에는 언제든지 한 명의 Microsoft Entra 관리자만 구성할 수 있습니다.
  • 처음에는 MySQL용 Microsoft Entra 관리자만 Microsoft Entra 계정을 사용하여 Azure Database for MySQL에 연결할 수 있습니다. Active Directory 관리자가 이후의 Microsoft Entra 데이터베이스 사용자를 구성할 수 있습니다.
  • Microsoft Entra ID에서 사용자가 삭제되면 해당 사용자는 더 이상 Microsoft Entra ID로 인증할 수 없으므로 더 이상 해당 사용자에 대한 액세스 토큰을 얻을 수 없습니다. 이 경우 일치하는 사용자가 데이터베이스에 있더라도 해당 사용자를 사용해서 서버에 연결하는 것이 불가능합니다.

참고 항목

삭제된 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에서 사용자를 삭제한 후, 동일한 이름의 새로운 사용자가 추가되면 해당 사용자는 기존 사용자와 연결할 수 없게 됩니다.

참고 항목

Microsoft Entra 인증이 사용하도록 설정된 Azure MySQL의 구독은 다른 테넌트 또는 디렉터리로 전송할 수 없습니다.

다음 단계