SQL Server에 대한 Microsoft Entra 인증

적용 대상: SQL Server 2022(16.x)

SQL Server 2022(16.x)는 Windows 및 Linux 온-프레미스 모두에서 Microsoft Entra ID(이전의 Azure Active Directory)와 Azure Windows VM의 SQL Server를 사용하여 인증을 지원합니다.

개요

이제 다음 Microsoft Entra 인증 방법을 사용하여 SQL Server에 연결할 수 있습니다.

  • 기본 인증
  • 사용자 이름 및 암호
  • 통합:
  • 다단계 인증을 사용한 범용
  • 서비스 주체
  • 관리 ID
  • 액세스 토큰

기존 인증 모드, SQL 인증 및 Windows 인증 변경되지 기본.

Microsoft Entra ID는 Azure의 클라우드 기반 ID 및 액세스 관리 서비스입니다. Microsoft Entra ID는 Active Directory와 개념적으로 비슷하며 조직의 리소스에 대한 액세스를 관리하기 위한 중앙 집중식 리포지토리를 제공합니다. ID는 사용자, 그룹 또는 애플리케이션을 나타내는 Microsoft Entra ID의 개체입니다. 역할 기반 액세스 제어를 통해 권한을 할당하고 Azure 리소스에 대한 인증에 사용할 수 있습니다. Microsoft Entra 인증은 다음을 위해 지원됩니다.

  • Azure SQL Database
  • Azure SQL Managed Instance
  • Windows Azure VM의 SQL Server
  • Azure Synapse Analytics
  • SQL Server

자세한 내용은 Azure SQL에서 Microsoft Entra 인증 사용 및 Azure SQL로 Microsoft Entra 인증 구성 및 관리를 참조하세요.

Windows Server Active Directory가 Microsoft Entra ID와 페더레이션된 경우 사용자는 Windows 로그인 또는 Microsoft Entra 로그인으로 Windows 자격 증명을 사용하여 SQL Server로 인증할 수 있습니다. Microsoft Entra ID는 서비스 계정 또는 복잡한 네트워킹 포리스트 아키텍처와 같이 Windows Server Active Directory에서 지원하는 모든 AD 기능을 지원하지는 않습니다. Active Directory에서 사용할 수 없는 다단계 인증과 같은 Microsoft Entra ID의 다른 기능이 있습니다. 자세한 내용은 Microsoft Entra ID와 Active Directory 를 비교합니다.

Microsoft Entra ID를 사용하여 SQL Server를 Azure로 커넥트

SQL Server가 Azure와 통신하려면 SQL Server와 실행 중인 Windows 또는 Linux 호스트를 모두 Azure Arc등록해야 합니다. AZURE와 SQL Server의 통신을 사용하도록 설정하려면 SQL Server용 Azure Arc 에이전트Azure 확장을 설치해야 합니다.

시작하려면 Azure Arc에 SQL Server 연결을 참조하세요.

참고 항목

Azure VM에서 SQL Server를 실행하는 경우 Azure Arc에 VM을 등록할 필요가 없으며 대신 SQL IaaS 에이전트 확장에 VM을 등록해야 합니다. VM이 등록되면 자세한 내용은 Azure VM에서 SQL Server에 대한 Azure AD 인증 사용을 참조 하세요 .

기본 인증

관리 ID, Visual Studio, Visual Studio Code, Azure CLI 등을 비롯한 암호 없는 비대화형 메커니즘을 통해 인증을 사용하도록 설정하는 Microsoft Entra ID의 기본 인증 옵션입니다.

사용자 이름 및 암호

클라이언트 및 드라이버에 대한 사용자 이름 및 암호를 지정할 수 있습니다. 사용자 이름 및 암호 메서드는 일반적으로 보안상의 이유로 많은 테넌트에서 사용하지 않도록 설정됩니다. 연결은 암호화되어 있지만 네트워크를 통해 암호를 보내야 하므로 가능한 경우 사용자 이름 및 암호를 사용하지 않는 것이 좋습니다.

통합:

IWA(통합 Windows 인증)를 통해 Microsoft Entra ID는 온-프레미스 및 클라우드 인프라를 모두 갖춘 조직에 솔루션을 제공합니다. 온-프레미스 Active Directory do기본s는 페더레이션을 통해 Microsoft Entra ID와 동기화할 수 있으므로 사용자 인증이 온-프레미스에서 다시 기본 동안 Microsoft Entra ID 내에서 관리 및 액세스 제어를 처리할 수 있습니다. IWA를 사용하면 사용자의 Windows 자격 증명이 Active Directory에 대해 인증되고 성공하면 Microsoft Entra ID에서 사용자의 인증 토큰이 SQL로 반환됩니다.

다단계 인증을 사용한 범용

Microsoft Entra 계정에 대한 다단계 인증 옵션을 사용하는 표준 대화형 방법입니다. 대부분의 시나리오에서 작동합니다.

서비스 사용자

서비스 주체는 자동화된 도구, 작업 및 애플리케이션에서 사용하기 위해 만들 수 있는 ID입니다. 서비스 주체 인증 방법을 사용하면 서비스 주체 ID의 클라이언트 ID 및 비밀을 사용하여 SQL Server 인스턴스에 연결할 수 있습니다.

관리 ID

관리 ID는 특별한 형태의 서비스 주체입니다. 관리 ID에는 시스템 할당 및 사용자 할당의 두 가지 유형이 있습니다. 시스템 할당 관리 ID는 Azure 리소스에서 직접 사용하도록 설정되지만 사용자 할당 관리 ID는 하나 이상의 Azure 리소스에 할당할 수 있는 독립 실행형 리소스입니다.

참고 항목

관리 ID를 사용하여 SSMS 및 ADS와 같은 GUI 클라이언트를 통해 SQL 리소스에 연결하려면 클라이언트 애플리케이션을 실행하는 컴퓨터에 ID의 인증서가 저장된 상태로 실행되는 Microsoft Entra 클라이언트가 있어야 합니다. 이 작업은 VM의 포털 창을 통해 컴퓨터에 ID를 쉽게 할당할 수 있으므로 Azure VM을 통해 가장 일반적으로 수행됩니다.

SSMS(SQL Server Management Studio)와 같은 Azure ID 라이브러리를 사용하는 도구의 경우 관리 ID와 연결할 때와 같은 abcd1234-abcd-1234-abcd-abcd1234abcd1234로그인에 GUID를 사용해야 합니다. 자세한 내용은 (ManagedIdentityCredential)을 참조하세요. 사용자 이름을 잘못 전달하면 다음과 같은 오류가 발생합니다.

ManagedIdentityCredential authentication unavailable. The requested identity has not been assigned to this resource.
Status: 400 (Bad Request)
Content:
{"error":"invalid_request","error_description":"Identity not found"}

액세스 토큰

Invoke-sqlcmd 같은 일부 비GUI 클라이언트에서는 액세스 토큰을 제공할 수 있습니다. 액세스 토큰의 범위 또는 대상 그룹은 https://database.windows.net/이어야 합니다.

설명

  • 지원되는 Windows 또는 Linux 운영 체제가 있는 SQL Server 2022(16.x) 온-프레미스 또는 Windows Azure VM의 SQL Server 2022만 Microsoft Entra 인증에 지원됩니다.
  • SQL Server를 Azure Arc에 연결하려면 Microsoft Entra 계정에 다음 권한이 필요합니다.
    • Azure Connected Machine 온보딩 그룹의 멤버 또는 리소스 그룹의 Contributor 역할.
    • 리소스 그룹의 Azure Connected Machine 리소스 관리자 역할의 멤버.
    • 리소스 그룹의 Reader 역할의 멤버.