다음을 통해 공유


OLEDB 연결 관리자

적용 대상: SQL Server Azure Data Factory의 SSIS Integration Runtime

OLEDB 연결 관리자를 사용하면 패키지에서 OLEDB Provider를 사용하여 데이터 원본에 연결할 수 있습니다. 예를 들어 SQL Server에 연결하는 OLEDB 연결 관리자는 MICROSOFT OLEDB Provider for SQL Server를 사용할 수 있습니다.

참고 항목

SQL Server Native Client 11.0 OLEDB 공급자는 다중 서브넷 장애 조치(Failover) 클러스터링에 대한 새 연결 문자열 키워드(MultiSubnetFailover=True)를 지원하지 않습니다. 자세한 내용은 SQL Server 릴리스 정보를 참조하세요.

참고 항목

데이터 원본이 Microsoft Office Excel 2007 또는 Microsoft Office Access 2007인 경우 이 데이터 원본에는 이전 버전의 Excel 또는 Access와 다른 데이터 공급자가 필요합니다. 자세한 내용은 Excel 워크북에 연결 또는 Access 데이터베이스에 연결을 참조하세요.

여러 SQL Server 통합 서비스 작업 및 데이터 흐름 구성 요소에서 OLEDB 연결 관리자가 사용됩니다. 예를 들어 OLEDB 원본 및 OLEDB 대상은 이 연결 관리자를 사용하여 데이터를 추출하고 로드합니다. SQL 실행 태스크는 이 연결 관리자를 사용하여 SQL Server 데이터베이스에 연결하여 쿼리를 실행할 수 있습니다.

또한 OLEDB 연결 관리자를 사용하여 C++와 같은 언어를 사용하는 비관리 코드로 작성된 사용자 지정 작업의 OLEDB 데이터 원본에 액세스할 수 있습니다.

패키지에 OLEDB 연결 관리자를 추가하면 통합 서비스는 런타임에 OLEDB 연결로 해결하는 연결 관리자를 생성하고 연결 관리자 속성을 설정한 다음 패키지의 연결 컬렉션에 연결 관리자를 추가합니다.

연결 관리자의 ConnectionManagerType 속성이 OLEDB로 설정됩니다.

다음과 같은 방법으로 OLEDB 연결 관리자를 구성할 수 있습니다.

  • 선택된 공급자에 대한 요구 사항을 만족하도록 구성된 특정 연결 문자열을 제공합니다.

  • 공급자에 따라 연결할 데이터 원본의 이름을 포함시킵니다.

  • 선택한 공급자에 적절한 보안 자격 증명을 제공합니다.

  • 연결 관리자에서 만든 연결이 런타임에 유지되는지 여부를 나타냅니다.

참고 항목

Microsoft Entra ID는 이전에 Azure Active Directory(Azure AD)로 알려졌습니다.

호출 로그 및 연결 문제 해결

OLEDB 연결 관리자가 외부 데이터 공급자에 대해 수행하는 호출을 로깅할 수 있습니다. 그런 다음 OLEDB 연결 관리자가 수행하는 외부 데이터 원본에 대한 연결 문제를 해결할 수 있습니다. OLEDB 연결 관리자가 외부 데이터 공급자에게 거는 호출을 기록하려면 패키지 기록을 활성화하고 패키지 수준에서 진단 이벤트를 선택합니다. 자세한 내용은 패키지 실행을 위한 문제 해결 도구를 참조하세요.

OLEDB 연결 관리자 구성

SSIS 디자이너를 사용하거나 프로그래밍 방식으로 속성을 설정할 수 있습니다. SSIS 디자이너에서 설정할 수 있는 속성에 대한 자세한 내용은 OLEDB 연결 관리자 구성을 참조하세요. 연결 관리자를 프로그래밍 방식으로 구성하는 방법에 대한 자세한 내용은 개발자 안내서의 T:Microsoft.SqlServer.Dts.Runtime.ConnectionManager 클래스 설명서를 참조하십시오.

OLEDB 연결 관리자 구성

OLEDB 연결 관리자 구성 대화 상자를 사용하여 데이터 원본에 대한 연결을 추가할 수 있습니다. 이 연결은 새 연결이거나 기존 연결의 복사본일 수 있습니다.

참고 항목

데이터 원본이 Microsoft Office Excel 2007인 경우 데이터 원본에는 이전 버전의 Excel과 다른 연결 관리자가 필요합니다. 자세한 내용은 Excel 통합 문서에 연결을 참조하세요.

데이터 원본이 Microsoft Office Access 2007인 경우 이 데이터 원본에는 이전 버전의 Access와 다른 OLEDB 공급자가 필요합니다. 자세한 내용은 Access 데이터베이스에 연결을 참조하세요.

OLEDB 연결 관리자에 대한 자세한 내용은 OLEDB 연결 관리자를 참조하세요.

옵션

데이터 연결
목록에서 기존 OLEDB 데이터 연결을 선택합니다.

데이터 연결 속성
선택한 OLEDB 데이터 연결에 대한 속성 및 값을 봅니다.

New
연결 관리자 대화 상자를 사용하여 OLEDB 데이터 연결을 만듭니다.

Delete
데이터 연결을 선택한 다음 삭제를 선택하여 삭제합니다.

Azure 리소스 인증용 관리 ID

ADF(Azure Data Factory)의 IR(Azure-SSIS Integration Runtime)에서 SSIS 패키지를 실행할 때 ADF에 대해 시스템 할당 또는 사용자 할당 관리 ID와 함께 Microsoft Entra 인증을 사용하여 Azure SQL 데이터베이스 또는 SQL Managed Instance에 액세스할 수 있습니다. Azure-SSIS IR은 이 관리 ID를 사용하여 데이터베이스로부터 또는 데이터베이스로 데이터에 액세스하고 복사할 수 있습니다.

참고 항목

ADF의 관리 ID로 Microsoft Entra 인증을 사용하여 Azure SQL Database server에 액세스하려면 다음 단계를 수행합니다.

  1. 아직 수행하지 않은 경우 Azure Portal에서 논리 서버에 대해 Microsoft Entra 관리자를 프로비전합니다. Microsoft Entra 관리자는 Microsoft Entra 사용자 또는 그룹일 수 있습니다. 그룹을 관리자로 할당하는 경우 그룹에 ADF의 관리 ID를 추가하고 2단계와 3단계를 건너뛸 수 있습니다. 관리자는 Azure SQL Database용 논리 서버에 대한 모든 권한을 줍니다.

  2. ADF의 관리 ID에 대한 포함된 데이터베이스 사용자를 만듭니다. SQL Server Management Studio(SSMS)를 사용하여 최소한 사용자 권한을 가진 Microsoft Entra 사용자와 데이터베이스에 연결합니다. 다음 T-SQL 문을 실행합니다.

    CREATE USER [your managed identity name] FROM EXTERNAL PROVIDER;
    

    ADF에 대한 시스템-할당 관리 ID를 사용하는 경우 관리 ID 이름은 ADF 이름이어야 합니다. ADF에 대한 사용자 할당 관리 ID를 사용하는 경우 관리 ID 이름은 지정된 사용자 할당 관리 ID 이름이어야 합니다.

  3. 일반적으로 SQL 사용자에 대해 수행하는 것처럼 ADF에 대해 관리 ID에 필요한 권한을 부여합니다. 적절한 역할은 데이터베이스 수준 역할을 참조하세요. 다음 T-SQL 문을 실행합니다. 다른 옵션은 이 문서를 참조하세요.

    EXEC sp_addrolemember [role name], [your managed identity name];
    

ADF의 관리 ID로 Microsoft Entra 인증을 사용하여 Azure SQL 관리 인스턴스에 액세스하려면 다음 단계를 수행합니다.

  1. 아직 수행하지 않은 경우 Azure Portal에서 Azure SQL 관리 인스턴스에 대해 Microsoft Entra 관리자를 프로비전합니다. Microsoft Entra 관리자는 Microsoft Entra 사용자 또는 그룹일 수 있습니다. 그룹을 관리자로 할당하는 경우 그룹에 ADF의 관리 ID를 추가하고 2단계와 3단계를 건너뛸 수 있습니다. 관리자는 Azure SQL Managed Instance에 대한 전체 액세스 권한을 가집니다.

  2. ADF에 대해 관리 ID에 할당된 로그인을 만듭니다. SSMS에서 sysadmin인 SQL Server 계정을 사용하여 Azure SQL Managed Instance에 연결합니다. master 데이터베이스에서 다음 T-SQL 문을 실행합니다.

    CREATE LOGIN [your managed identity name] FROM EXTERNAL PROVIDER;
    

    ADF에 대한 시스템 관리 ID를 사용하는 경우 관리 ID 이름은 ADF 이름이어야 합니다. ADF에 대한 사용자 할당 관리 ID를 사용하는 경우 관리 ID 이름은 지정된 사용자 할당 관리 ID 이름이어야 합니다.

  3. ADF 관리 ID를 나타내는 포함된 데이터베이스 사용자를 만듭니다. SSMS를 사용하여 데이터를 복사할 데이터베이스에 연결하고 다음 T-SQL 문을 실행합니다.

    CREATE USER [your managed identity name] FROM EXTERNAL PROVIDER;
    
  4. 일반적으로 SQL 사용자에 대해 수행하는 것처럼 ADF에 대해 관리 ID에 필요한 권한을 부여합니다. 다음 T-SQL 문을 실행합니다. 다른 옵션은 이 문서를 참조하세요.

    ALTER ROLE [role name e.g., db_owner] ADD MEMBER [your managed identity name];
    

그런 다음 OLEDB 연결 관리자에서 OLEDB 공급자를 구성할 수 있습니다. 이 작업을 수행하는 두 가지 옵션이 있습니다.

  • 디자인 타임에 구성합니다. SSIS 디자이너에서 OLEDB 연결 관리자를 더블클릭하여 연결 관리자 창을 엽니다. 공급자 드롭다운 목록에서 Microsoft OLEDB Driver for SQL Server를 선택합니다.

    참고 항목

    드롭다운 목록의 다른 공급자는 ADF의 관리 ID로 Microsoft Entra 인증을 지원하지 않을 수 있습니다.

  • 런타임 시 구성합니다. SSMS를 통해 패키지를 실행하거나 ADF 파이프라인에서 SSIS 패키지 작업을 실행할 때 연결 관리자 속성 ConnectionString for OLEDB 연결 관리자를 찾습니다. 연결 속성을 Provider에서 MSOLEDBSQL로 업데이트합니다. (SQL Server용 Microsoft OLEDB 드라이버)

    Data Source=serverName;Initial Catalog=databaseName;Provider=MSOLEDBSQL;...
    

이제 OLEDB 연결 관리자에서 ADF의 관리 ID를 사용하는 Microsoft Entra 인증을 구성할 수 있습니다. 이 작업을 수행하는 두 가지 옵션이 있습니다.

  • 디자인 타임에 구성합니다. SSIS 디자이너에서 OLEDB 연결 관리자를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다. ConnectUsingManagedIdentity 속성을 True로 업데이트합니다.

    참고 항목

    현재 SSIS 디자이너 또는 SQL Server에서 패키지를 실행할 때 ADF의 관리 ID를 사용한 인증이 작동하지 않음을 나타내는 연결 관리자 속성 ConnectUsingManagedIdentity이(가) 적용되지 않습니다.

  • 런타임 시 구성합니다. SSMS 또는 ADF 파이프라인에서 SSIS 패키지 작업 실행을 통해 패키지를 실행하는 경우 OLEDB 연결 관리자에서 ConnectUsingManagedIdentity 속성을 True로 업데이트합니다.

    참고 항목

    Azure-SSIS IR에서 OLEDB 연결 관리자에 미리 구성된 다른 인증 방법(예: 통합 보안 및 암호)은 Microsoft Entra 인증을 관리 ID와 함께 사용할 때 모두 재정의됩니다.

기존 패키지에서 ADF의 관리 ID로 Microsoft Entra 인증을 구성하려면 최신 SSIS 디자이너를 사용하여 SSIS 프로젝트를 한 번 이상 다시 빌드하는 것이 좋습니다. SSIS 프로젝트를 Azure-SSIS IR에서 실행되도록 다시 배포하여 새 연결 관리자 속성 ConnectUsingManagedIdentity이(가) 프로젝트의 모든 OLEDB 연결 관리자에 자동으로 추가되도록 합니다. 또 다른 방법은 런타임 시 True에 할당된 속성 경로 \Package.Connections[{연결 관리자의 이름}].Properties[ConnectUsingManagedIdentity]에 속성 재정의를 직접 사용하는 것입니다.

참고 항목