Azure SQL을 사용한 Microsoft Entra 전용 인증

적용 대상:Azure SQL Database Azure SQL Managed InstanceAzure Synapse Analytics(전용 SQL 풀만 해당)

Microsoft Entra 전용 인증은 서비스가 Microsoft Entra 인증만 지원할 수 있도록 하는 Azure SQL 내의 기능이며 Azure SQL DatabaseAzure SQL Managed Instance에 대해 지원됩니다.

참고 항목

Microsoft Entra ID는 이전의 Azure AD(Azure Active Directory)입니다.

Microsoft Entra 전용 인증은 독립 실행형 서버의 전용 SQL 풀(이전의 SQL DW)에도 사용할 수 있습니다. Azure Synapse 작업 영역에 대해 Microsoft Entra 전용 인증을 사용하도록 설정할 수 있습니다. 자세한 내용은 Azure Synapse 작업 영역을 사용한 Microsoft Entra 전용 인증을 참조하세요.

SQL Server 관리자, 로그인 및 사용자의 연결을 포함하여 Azure SQL 환경에서 Microsoft Entra 전용 인증을 사용하는 경우 SQL 인증을 사용할 수 없습니다. Microsoft Entra 인증을 사용하는 사용자만 서버 또는 데이터베이스에 연결할 수 있는 권한이 부여됩니다.

Azure Portal, Azure CLI, PowerShell 또는 REST API를 사용하여 Microsoft Entra 전용 인증을 사용하거나 사용하지 않도록 설정할 수 있습니다. Azure ARM(Azure Resource Manager) 템플릿을 사용하여 서버를 만드는 동안 Microsoft Entra 전용 인증을 구성할 수도 있습니다.

Azure SQL 인증에 대한 자세한 내용은 인증 및 권한 부여를 참조하세요.

기능 설명

Microsoft Entra 전용 인증을 사용하는 경우 SQL 인증이 서버 또는 관리형 인스턴스 수준에서 사용하지 않도록 설정되므로 SQL 인증 자격 증명을 기준으로 하는 모든 인증이 방지됩니다. SQL 인증 사용자는 모든 관련 데이터베이스를 포함하여 Azure SQL Database 또는 관리형 인스턴스에 대한 논리 서버에 연결할 수 없습니다. SQL 인증을 사용할 수 없더라도 적절한 권한이 있는 Microsoft Entra 계정에서 새 SQL 인증 로그인 및 사용자를 만들 수 있습니다. 새로 만든 SQL 인증 계정은 서버에 연결할 수 없습니다. Microsoft Entra 전용 인증을 사용하도록 설정해도 기존 SQL 인증 로그인 및 사용자 계정이 제거되지는 않습니다. 이 기능은 이러한 계정만 서버에 연결하지 못하게 하고 이 서버에 대해 생성된 모든 데이터베이스를 차단합니다.

Azure Policy를 사용하여 Microsoft Entra 전용 인증을 사용하도록 설정하고 서버를 강제로 만들 수도 있습니다. 자세한 내용은 Microsoft Entra 전용 인증에 대한 Azure Policy를 참조하세요.

사용 권한

Microsoft Entra 전용 인증은 Azure 구독 소유자, 기여자전역 관리자와 같은 높은 권한의 Microsoft Entra 기본 제공 역할 멤버인 Microsoft Entra 사용자가 사용하거나 사용하지 않도록 설정할 수 있습니다. 또한 SQL Security Manager 역할은 Microsoft Entra 전용 인증 기능을 사용하거나 사용하지 않도록 설정할 수도 있습니다.

SQL Server 기여자SQL Managed Instance 기여자 역할에는 Microsoft Entra 전용 인증 기능을 사용하거나 사용하지 않도록 설정할 수 있는 권한이 없습니다. 이는 Azure SQL Server를 만들거나 Microsoft Entra 관리자를 만들 수 있는 사용자가 보안 기능을 사용하거나 사용하지 않도록 설정할 수 없는 의무 분리 접근 방식과 일치합니다.

필요한 동작

다음 작업은 Microsoft Entra 전용 인증 기능을 관리할 수 있도록 SQL Security Manager 역할에 추가됩니다.

  • Microsoft.Sql/servers/azureADOnlyAuthentications/*
  • Microsoft .Sql/servers/administrators/read - Azure Portal Microsoft Entra ID 메뉴에 액세스 하는 사용자에게만 필요합니다.
  • Microsoft.Sql/managedInstances/azureADOnlyAuthentications/*
  • Microsoft.Sql/managedInstances/read

위의 작업을 사용자 지정 역할에 추가하여 Microsoft Entra 전용 인증을 관리할 수도 있습니다. 자세한 내용은 Microsoft Entra ID에서 사용자 지정 역할 만들기 및 할당을 참조하세요.

API를 사용하여 Microsoft Entra 인증 관리하기

Important

Microsoft Entra 전용 인증을 사용하도록 설정하기 전에 Microsoft Entra 관리자를 설정해야 합니다.

Azure CLI 버전 2.14.2 이상이 필요합니다.

name은 서버 또는 인스턴스 이름(예: myserver)의 접두사에 해당하고 resource-group은 서버가 속한 리소스 (예: myresource)에 해당합니다.

Azure SQL Database

자세한 내용은 az sql server ad-only-auth를 참조하세요.

SQL Database에서 활성화 또는 비활성화

사용

az sql server ad-only-auth enable --resource-group myresource --name myserver

사용 안 함

az sql server ad-only-auth disable --resource-group myresource --name myserver

SQL Database에서 상태 확인

az sql server ad-only-auth get --resource-group myresource --name myserver

Azure SQL Managed Instance

자세한 내용은 az sql mi ad-only-auth를 참조하세요.

사용

az sql mi ad-only-auth enable --resource-group myresource --name myserver

사용 안 함

az sql mi ad-only-auth disable --resource-group myresource --name myserver

SQL Managed Instance에서 상태 확인

az sql mi ad-only-auth get --resource-group myresource --name myserver

T-SQL을 사용하여 Azure AD 전용 인증 확인하는 법

서버 또는 관리형 인스턴스에 대해 Microsoft Entra 전용 인증이 사용되는지 확인하기 위해 SEVERPROPERTYIsExternalAuthenticationOnly가 추가되었습니다. 1은 해당 기능이 사용하도록 설정되어 있음을 나타내고 0은 해당 기능이 사용하지 않도록 설정되어 있음을 나타냅니다.

SELECT SERVERPROPERTY('IsExternalAuthenticationOnly') 

설명

  • SQL Server 기여자는 Microsoft Entra 관리자를 설정하거나 제거할 수 있지만 Microsoft Entra 인증만 설정할 수는 없습니다. SQL Security Manager는 Microsoft Entra 관리자를 설정하거나 제거할 수 없지만 Microsoft Entra 인증만 설정할 수 있습니다. Azure RBAC 역할이 더 높은 계정 또는 두 권한이 모두 포함된 사용자 지정 역할만 Microsoft Entra 관리자를 설정하거나 제거하고 Microsoft Entra 인증만 설정할 수 있습니다. 이러한 역할 중 하나는 기여자 역할입니다.
  • Azure Portal에서만 Microsoft Entra 인증을 사용하거나 사용하지 않도록 설정한 후에 SQL Server 메뉴에서 활동 로그 항목을 볼 수 있습니다. Activity log entry in the Azure portal
  • Microsoft Entra 인증 전용 설정은 Microsoft Entra 관리자가 지정된 경우, 올바른 권한이 있는 사용자만 사용하거나 사용하지 않도록 설정할 수 있습니다. Microsoft Entra 관리자가 설정되지 않은 경우, Microsoft Entra 인증은 비활성으로 유지되며, 사용하거나 사용하지 않도록 설정할 수 없습니다. Microsoft Entra 관리자가 설정되지 않은 경우에도 API를 사용하여 Microsoft Entra 전용 인증을 사용하도록 설정할 수 없습니다.
  • 적절한 권한이 있는 사용자는 Microsoft Entra 전용 인증을 사용하도록 설정한 경우 Microsoft Entra 관리자를 변경할 수 있습니다.
  • Microsoft Entra 관리자를 변경하고 적절한 권한이 있는 사용자를 위해 Azure Portal에서 Microsoft Entra 전용 인증을 사용하거나 사용하지 않도록 설정할 수 있습니다. 두 작업은 모두 Azure Portal에서 한 번의 저장으로 완료할 수 있습니다. Microsoft Entra 전용 인증을 사용하도록 설정하려면 Microsoft Entra 관리자를 설정해야 합니다.
  • Microsoft Entra 전용 인증 기능이 사용하도록 설정된 경우 Microsoft Entra 관리자를 제거하는 것은 지원되지 않습니다. Microsoft Entra 전용 인증을 사용하는 경우 API를 사용하여 Microsoft Entra 관리자를 제거하면 실패합니다.
    • Microsoft Entra 인증만 사용을 설정하면 Azure Portal에서 관리자 제거 버튼이 비활성화됩니다.
  • Microsoft Entra 관리자를 제거하고 Microsoft Entra 인증만 사용 설정을 사용하지 않도록 설정하는 것은 허용되지만 작업을 완료하려면 적절한 사용자 권한이 필요합니다. 두 작업은 모두 Azure Portal에서 한 번의 저장으로 완료할 수 있습니다.
  • 적절한 권한이 있는 Microsoft Entra 사용자는 기존 SQL 사용자를 가장할 수 있습니다.
    • Microsoft Entra 전용 인증 기능을 사용하도록 설정한 경우에도 SQL 인증 사용자 간에 가장이 계속 작동합니다.

SQL Database의 Microsoft Entra 전용 인증에 대한 제한 사항

SQL Database에 대해 Microsoft Entra 전용 인증이 사용되는 경우에는 다음 기능이 지원되지 않습니다.

  • Azure SQL Database 서버 역할은 Microsoft Entra 서버 주체에 대해 지원되지만 Microsoft Entra 로그인이 그룹인 경우에는 지원되지 않습니다.
  • 탄력적 작업
  • SQL 데이터 동기화
  • CDC(변경 데이터 캡처) - Azure SQL Database에서 Microsoft Entra 사용자로 데이터베이스를 만들고 해당 데이터베이스에서 변경 데이터 캡처를 사용하도록 설정하는 경우 SQL 사용자는 CDC 아티팩트를 사용하지 않도록 설정하거나 변경할 수 없습니다. 그러나 다른 Microsoft Entra 사용자는 같은 데이터베이스에서 CDC를 사용하거나 사용하지 않을 수 있습니다. 마찬가지로, SQL 사용자로 Azure SQL Database를 만들면 CDC를 Microsoft Entra 사용자로 사용/사용하지 않습니다.
  • 트랜잭션 복제 - 복제 참가자 간에 연결하려면 SQL 인증이 필요하므로, Azure SQL Managed Instance, 온-프레미스 SQL Server 또는 Azure VM SQL Server 인스턴스에서 Azure SQL Database의 데이터베이스에 대해 변경된 내용을 푸시하는 데 트랜잭션 복제가 사용되는 시나리오에서는 Microsoft Entra 전용 인증이 사용되는 경우 SQL Database에 대해 트랜잭션 복제가 지원되지 않습니다.
  • SQL 인사이트(미리 보기)
  • Microsoft Entra 그룹 멤버 계정 EXEC AS 문

Managed Instance의 Microsoft Entra 전용 인증의 제한

Managed Instance에 Microsoft Entra 전용 인증이 사용되는 경우, 다음 기능이 지원되지 않습니다.

추가 제한 사항은 SQL Server와 Azure SQL Managed Instance 간의 T-SQL 차이점을 참조하세요.

다음 단계