다음을 통해 공유


SQL 인증 대신 Microsoft Entra 인증

적용 대상:✅ Microsoft Fabric의 SQL 분석 엔드포인트 및 웨어하우스

이 문서에서는 사용자와 고객이 MICROSOFT Fabric 내에서 SQL 인증에서 Microsoft Entra 인증으로 전환하기 위해 사용할 수 있는 기술 방법을 설명합니다. Microsoft Entra 인증은 Lakehouse의 SQL 분석 엔드포인트 또는 Microsoft Fabric의 Warehouse에 로그인하기 위한 SQL 인증을 통한 사용자 이름 및 암호의 대안입니다. Microsoft Entra 인증은 보안 데이터 플랫폼을 만드는 데 권장되며 매우 중요합니다.

이 문서에서는 웨어하우스 또는 Lakehouse SQL 분석 엔드포인트와 같은 Microsoft Fabric 항목의 SQL 인증 대신 Microsoft Entra 인증에 중점을 둡니다.

Fabric에서 Microsoft Entra 인증의 이점

Microsoft Fabric의 핵심 원칙 중 하나는 설계에 따라 안전합니다. Microsoft Entra는 강력한 데이터 보호, 거버넌스 및 규정 준수를 보장하여 Microsoft Fabric의 보안에 필수적입니다.

Microsoft Entra는 다음과 같은 여러 가지 이유로 Microsoft Fabric의 보안에 중요한 역할을 합니다.

  • 인증: 패브릭 내에서 작업에 대한 액세스 토큰을 부여하는 Microsoft Entra ID를 사용하여 사용자 및 서비스 주체를 확인합니다.
  • 보안 액세스: 모든 디바이스 또는 네트워크에서 클라우드 앱에 안전하게 연결하여 패브릭에 대한 요청을 보호합니다.
  • 조건부 액세스: 관리자는 사용자 로그인 컨텍스트를 평가하거나 액세스를 제어하거나 추가 확인 단계를 적용하는 정책을 설정할 수 있습니다.
  • 통합: Microsoft Entra ID는 패브릭을 비롯한 모든 Microsoft SaaS 제품과 원활하게 작동하므로 디바이스 및 네트워크에서 쉽게 액세스할 수 있습니다.
  • 광범위한 플랫폼: 패브릭 포털, SQL 연결 문자열, REST API 또는 XMLA 엔드포인트를 통해 모든 방법을 통해 Microsoft Entra ID를 사용하여 Microsoft Fabric에 액세스할 수 있습니다.

Microsoft Entra는 완전한 제로 트러스트 정책을 채택하여 사용자 이름 및 암호로 제한되는 기존 SQL 인증에 대한 우수한 대안을 제공합니다. 이 방법은:

  • 사용자 가장을 방지합니다.
  • 사용자 ID, 환경, 디바이스 등을 고려하여 세분화된 액세스 제어를 사용하도록 설정합니다.
  • Microsoft Entra 다단계 인증과 같은 고급 보안을 지원합니다.

패브릭 구성

웨어하우스 또는 Lakehouse SQL 분석 엔드포인트에서 사용하기 위한 Microsoft Entra 인증에는 테넌트작업 영역 설정 모두에서 구성이 필요합니다.

테넌트 설정

테넌트에서 패브릭 관리자는 패브릭 API에 대한 SPN 액세스를 허용해야 하며, SPN이 패브릭 웨어하우스 또는 SQL 분석 엔드포인트 항목에 대한 SQL 연결 문자열 인터페이스하는 데 필요합니다.

이 설정은 개발자 설정 섹션에 있으며 ios 레이블이 지정된 서비스 주체는 패브릭 API를 사용할 수 있습니다. 사용 중인지 확인합니다.

테넌트 설정의 개발자 설정 페이지의 패브릭 포털 스크린샷

작업 영역 설정

작업 영역의 패브릭 관리자는 Fabric 항목에 액세스하려면 사용자/SPN에 대한 액세스 권한을 부여해야 합니다.

사용자/SPN에 액세스 권한을 부여할 수 있는 두 가지 방법이 있습니다.

  • 작업 영역 참가자 역할에 사용자/SPN 멤버 자격 부여: 작업 영역 기여자 역할을 사용하면 사용자/SPN ID가 SQL 연결 문자열 통해 모든 패브릭 항목에 액세스할 수 있습니다.

    1. 작업 영역의 액세스 관리 옵션에서 기여자 역할을 할당합니다. 자세한 내용은 서비스 역할을 참조 하세요.

    작업 영역의 액세스 관리 옵션에서 사용자에게 할당된 기여자 역할을 보여 주는 패브릭 포털의 스크린샷

  • 특정 항목에 사용자/SPN을 할당합니다. 특정 웨어하우스 또는 SQL 분석 엔드포인트에 대한 액세스 권한을 부여합니다. 패브릭 관리자는 다른 권한 수준에서 선택할 수 있습니다.

    1. 관련 웨어하우스 또는 SQL 분석 엔드포인트 항목으로 이동합니다.
    2. 추가 옵션을 선택한 다음, 사용 권한을 관리합니다. 사용자 추가를 선택합니다.
    3. 사용자 액세스 권한 부여 페이지에서 사용자/SPN을 추가합니다.
    4. 사용자/SPN에 필요한 권한을 할당합니다. 연결 권한만 부여하려면 추가 권한을 선택하지 않습니다.

    사용자에게 액세스 권한 부여 페이지의 패브릭 포털 스크린샷.

시스템에서 사용자/SPN에 지정된 기본 권한을 변경할 수 있습니다. T-SQL GRANTDENY 명령을 사용하여 필요에 따라 권한을 변경하거나 ALTER ROLE 을 사용하여 역할에 멤버 자격을 추가합니다.

현재 SPN에는 .를 사용한 자세한 권한 구성 GRANT/DENY에 대한 사용자 계정으로 기능이 없습니다.

사용자 ID 및 SPN(서비스 사용자 이름) 지원

Fabric은 기본적으로 웨어하우스 및 SQL 분석 엔드포인트 항목에 대한 SQL 연결에서 Microsoft Entra 사용자 및 SPN(서비스 사용자 이름)에 대한 인증 및 권한 부여를 지원합니다.

  • 사용자 ID는 조직 내의 각 사용자에 대한 고유한 자격 증명입니다.
  • SPN은 테넌트 내의 애플리케이션 개체를 나타내며 애플리케이션 인스턴스의 ID 역할을 하며 해당 애플리케이션을 인증하고 권한을 부여하는 역할을 합니다.

TDS(테이블 형식 데이터 스트림) 지원

패브릭은 기본적으로 TDS(테이블 형식 데이터 스트림) 프로토콜(SQL 연결 문자열이라고도 함)을 지원합니다. 따라서 패브릭은 SQL 데이터베이스 엔진 사용하여 제품에 연결할 수 있는 모든 애플리케이션 또는 도구와 호환됩니다. SQL Server 인스턴스 연결과 마찬가지로 TDS는 TCP 포트 1433에서 작동합니다. 패브릭 SQL 연결에 대한 자세한 내용은 연결을 참조 하세요.

연결 문자열 가져오려면 패브릭 웨어하우스 또는 SQL 분석 엔드포인트 항목에서 추가 옵션을 선택합니다.

기타 옵션 상황에 맞는 메뉴의 패브릭 포털 스크린샷 SQL 연결 문자열 복사 옵션이 강조 표시됩니다.

샘플 SQL 연결 문자열 다음과 <guid_unique_your_item>.datawarehouse.fabric.microsoft.com같습니다.

애플리케이션 및 클라이언트 도구는 연결 문자열 연결 속성을 설정 Authentication 하여 Microsoft Entra 인증 모드를 선택할 수 있습니다. 다음 표에서는 Microsoft Entra MFA(다단계 인증) 지원을 포함하여 다양한 Entra 인증 모드에 대해 자세히 설명합니다.

인증 모드 시나리오 설명
Microsoft Entra Interactive 사용자 인증이 대화형으로 발생할 수 있거나 자격 증명 확인을 위한 수동 개입이 허용되는 경우 애플리케이션 또는 도구에서 활용됩니다. MFAMicrosoft Entra 조건부 액세스 정책을 활성화하여 조직 규칙을 적용합니다.
Microsoft Entra 서비스 주체 애플리케이션 통합에 가장 적합한 사용자 개입 없이 보안 인증을 위해 앱에서 사용됩니다. Microsoft Entra 조건부 액세스 정책을 사용하도록 설정하는 것이 좋습니다.
Microsoft Entra 암호 애플리케이션이 비호환성으로 인해 SPN 기반 인증을 사용할 수 없거나 많은 사용자에 대한 일반 사용자 이름과 암호가 필요하거나 다른 방법이 불가능한 경우 MFA는 꺼져 있어야 하며 조건부 액세스 정책을 설정할 수 없습니다. 이 솔루션을 선택하기 전에 고객의 보안 팀에 유효성을 검사하는 것이 좋습니다.

Microsoft Entra 인증 모드 및 의사 결정 지점을 보여 주는 순서도입니다.

Microsoft Entra 인증에 대한 드라이버 지원

대부분의 SQL 드라이버는 처음에는 Microsoft Entra 인증을 지원하지만, 최근 업데이트는 SPN 기반 인증을 포함하도록 호환성을 확장했습니다. 이 향상된 기능은 드라이버 업그레이드를 통해 다양한 애플리케이션 및 도구에 대한 Microsoft Entra 인증으로의 전환을 간소화하고 Microsoft Entra 인증에 대한 지원을 추가합니다.

그러나 호스트 컴퓨터에서 Microsoft Entra 인증을 용이하게 하기 위해 특정 포트 또는 방화벽을 사용하도록 설정하는 등의 추가 설정을 조정해야 하는 경우도 있습니다.

애플리케이션 및 도구는 엔트라 인증을 지원하는 버전으로 드라이버를 업그레이드하고 SQL 연결 문자열(예ActiveDirectoryInteractiveActiveDirectoryServicePrincipal: ) 또는 ActiveDirectoryPassword인증 모드 키워드를 추가해야 합니다.

패브릭은 OLE DB Microsoft.Data.SqlClient를 비롯한 Microsoft의 네이티브 드라이버 및 ODBC 및 JDBC와 같은 일반 드라이버와 호환됩니다. 애플리케이션이 Fabric과 함께 작동하도록 하는 전환은 재구성을 통해 Microsoft Entra ID 기반 인증을 사용하도록 관리할 수 있습니다.

자세한 내용은 Microsoft Fabric의 데이터 웨어하우징에 대한 연결을 참조 하세요.

Microsoft OLE DB

OLE DB Driver for SQL Server는 OLE DB용으로 설계되었으며 SQL Server 2005(9.x)로 처음 릴리스된 독립 실행형 데이터 액세스 API입니다. 이후 확장된 기능에는 버전 18.5.0을 사용하는 SPN 기반 인증이 포함되며, 이전 버전의 기존 인증 방법에 추가됩니다.

인증 모드 SQL 연결 문자열
Microsoft Entra Interactive Microsoft Entra 대화형 인증
Microsoft Entra 서비스 주체 Microsoft Entra 서비스 주체 인증
Microsoft Entra 암호 Microsoft Entra 사용자 이름 및 암호 인증

SPN 기반 인증에서 OLE DB를 사용하는 C# 코드 조각은 System.Data.OLEDB.Connect.cs 참조하세요.

Microsoft ODBC 드라이버

Microsoft ODBC Driver for SQL Server는 네이티브 코드 API를 사용하여 SQL Server에 연결하는 애플리케이션에 대한 런타임 지원을 포함하는 단일 DLL(동적 연결 라이브러리)입니다. 애플리케이션이 패브릭과 통합되도록 최신 버전을 사용하는 것이 좋습니다.

ODBC를 사용한 Microsoft Entra 인증에 대한 자세한 내용은 ODBC 드라이버 샘플 코드와 함께 Microsoft Entra ID 사용을 참조하세요.

인증 모드 SQL 연결 문자열
Microsoft Entra Interactive DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DB Name>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryInteractive
Microsoft Entra 서비스 주체 DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryServicePrincipal
Microsoft Entra 암호 DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryPassword

SPN 기반 인증에서 ODBC를 사용하는 Python 코드 조각은 pyodbc-dw-connectivity.py 참조하세요.

Microsoft JDBC 드라이버

Microsoft JDBC Driver for SQL Server는 Java 플랫폼에서 사용할 수 있는 표준 JDBC API(애플리케이션 프로그램 인터페이스)를 통해 데이터베이스 연결을 제공하는 Type 4 JDBC 드라이버입니다.

버전 9.2 mssql-jdbc 부터 버전 12.2 이상에서 지원되는 지원을 도입 ActiveDirectoryPassword ActiveDirectoryInteractive ActiveDirectoryServicePrincipal합니다. 이 드라이버에는 애플리케이션에서 사용되는 버전과 호환되어야 하는 종속성으로 추가 jar가 mssql-driver 필요합니다. 자세한 내용은 JDBC 드라이버클라이언트 설정 요구 사항의 기능 종속성을 참조하세요.

인증 모드 자세한 정보
Microsoft Entra Interactive ActiveDirectoryInteractive 인증 모드를 사용하여 연결
Microsoft Entra 서비스 주체 ActiveDirectoryServicePrincipal 인증 모드를 사용하여 연결
Microsoft Entra 암호 ActiveDirectoryPassword 인증 모드를 사용하여 연결

SPN 기반 인증과 함께 JDBC를 사용하는 Java 코드 조각은 fabrictoolbox/dw_connect.java샘플 pom 파일 pom.xml 참조하세요.

.NET Core의 Microsoft.Data.SqlClient(C#)

Microsoft.Data.SqlClient는 Microsoft SQL Server 및 Azure SQL Database용 데이터 공급자입니다. .NET Framework 및 .NET Core에 독립적으로 있는 두 System.Data.SqlClient 구성 요소의 통합으로, Microsoft SQL Server 데이터베이스에 액세스하기 위한 클래스 집합을 제공합니다. Microsoft.Data.SqlClient 는 모든 신규 및 향후 개발에 권장됩니다.

인증 모드 자세한 정보
Microsoft Entra Interactive 대화형 인증 사용
Microsoft Entra 서비스 주체 서비스 주체 인증 사용
Microsoft Entra 암호 암호 인증 사용

SPN을 사용하는 코드 조각: