ADO.NET 연결 관리자

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

ADO.NET 연결 관리자를 사용하면 패키지가 .NET 공급자를 사용하여 데이터 원본에 액세스할 수 있습니다. 일반적으로 이 연결 관리자를 사용하여 Microsoft SQL Server와 같은 데이터 원본에 액세스합니다. C#과 같은 언어를 사용하여 관리 코드로 작성된 사용자 지정 작업에서 OLE DB 및 XML을 통해 노출된 데이터 원본에 액세스할 수도 있습니다.

패키지에 ADO.NET 연결 관리자를 추가하면 SQL Server Integration Services는 런타임에 ADO.NET 연결로 확인되는 연결 관리자를 만듭니다. 연결 관리자 속성을 설정하고 패키지의 커넥트ions 컬렉션에 연결 관리자를 추가합니다.

ConnectionManagerType 연결 관리자의 속성이 .로 ADO.NET설정됩니다. ConnectionManagerType 값은 연결 관리자가 사용하는 .NET 공급자의 이름을 포함하도록 한정됩니다.

참고 항목

Microsoft Entra ID 는 이전에 Azure AD(Azure Active Directory)라고 했습니다.

ADO.NET 연결 관리자 문제 해결

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

ADO.NET 연결 관리자가 읽을 때 특정 SQL Server 날짜 데이터 형식의 데이터는 다음 표에 표시된 결과를 생성합니다.

SQL Server 데이터 형식 결과
time, datetimeoffset 매개 변수가 있는 SQL 명령이 패키지에 사용되지 않을 경우 패키지가 실패합니다. 매개 변수가 있는 SQL 명령을 사용하려면 패키지에서 SQL 실행 태스크를 사용하십시오. 자세한 내용은 SQL 실행 태스크 및 매개 변수 실행 및 SQL 실행 태스크의 코드 반환을 참조하세요.
datetime2 ADO.NET 연결 관리자는 밀리초 값을 자립니다.

참고 항목

SQL Server 데이터 형식 및 Integration Services 데이터 형식에 매핑하는 방법에 대한 자세한 내용은 데이터 형식(Transact-SQL)Integration Services 데이터 형식을 참조하세요.

ADO.NET 연결 관리자 구성

SSIS 디자이너를 통해 또는 프로그래밍 방식으로 속성을 설정할 수 있습니다.

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

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

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

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

ADO.NET 연결 관리자의 많은 구성 옵션은 연결 관리자가 사용하는 .NET 공급자에 따라 달라집니다.

SSIS 디자이너에서 설정할 수 있는 속성에 대한 자세한 내용은 ADO.NET 연결 관리자 구성을 참조하세요.

프로그래밍 방식으로 연결 관리자를 구성하는 방법에 대한 자세한 내용은 프로그래밍 방식으로 커넥트ions 추가를 참조 ConnectionManager 하세요.

ADO.NET 연결 관리자 구성

ADO.NET 연결 관리자 구성 대화 상자를 사용하면 .NET Framework 데이터 공급자를 사용하여 액세스할 수 있는 데이터 원본에 연결을 추가할 수 있습니다. 예를 들어 이러한 공급자 중 하나는 SqlClient 공급자입니다. 연결 관리자는 기존 연결을 사용하거나 새 연결을 만들 수 있습니다.

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

옵션

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

데이터 연결 속성
선택한 ADO.NET 데이터 연결의 속성과 값을 봅니다.

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

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

Azure 리소스 인증용 관리 ID

ADF(Azure Data Factory)의 Azure-SSIS IR(통합 런타임)에서 SSIS 패키지를 실행하는 경우 ADF에 대한 관리 ID로 Microsoft Entra 인증을 사용하여 Azure SQL Database 또는 SQL Managed Instance에 액세스할 수 있습니다. Azure-SSIS IR은 이 관리 ID를 사용하여 데이터베이스에서 또는 데이터베이스로 데이터에 액세스하고 복사할 수 있습니다.

참고 항목

  • 사용자 할당 관리 ID로 인증하는 경우 동일한 ID로 SSIS 통합 런타임을 사용하도록 설정해야 합니다. 자세한 내용은 Azure-SSIS 통합 런타임에 대한 Microsoft Entra 인증 사용을 참조 하세요.

  • Microsoft Entra 인증을 사용하여 Azure SQL Database 또는 Azure SQL Managed Instance에 액세스하는 경우 패키지 실행 실패 또는 예기치 않은 동작 변경과 관련된 문제가 발생할 수 있습니다. 자세한 내용은 Microsoft Entra 기능 및 제한 사항을 참조 하세요.

ADF가 관리 ID를 사용하여 Azure SQL Database에 액세스할 수 있도록 하려면 다음 단계를 수행합니다.

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

  2. ADF에 할당된 관리 ID를 나타내는 포함된 데이터베이스 사용자를 만듭니다. 적어도 ALTER ANY USER 권한이 있는 Microsoft Entra 사용자와 함께 SSMS(SQL Server Management Studio)를 사용하여 데이터를 복사하려는 데이터베이스에 커넥트. 다음 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를 사용하여 Azure SQL Managed Instance에 액세스하려면 다음 단계를 수행합니다.

  1. 아직 수행하지 않은 경우 Azure Portal에서 Azure SQL Managed Instance에 대한 Microsoft Entra 관리자 를 프로비전합니다. Microsoft Entra 관리자는 사용자 또는 그룹일 수 있습니다. 그룹을 관리자로 할당하고 관리 ID가 해당 그룹의 구성원인 경우 2-4단계를 건너뛸 수 있습니다. 관리자는 관리되는 인스턴스에 대한 모든 권한을 줍니다.

  2. ADF의 관리 ID에 대한 로그인 을 만듭니다. SSMS에서 sysadmin 권한이 있는 계정 또는 Microsoft Entra 관리자를 사용하여 관리되는 인스턴스에 연결합니다. 데이터베이스에서 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];
    

마지막으로, ADO.NET 연결 관리자에서 ADF의 관리 ID를 사용하여 Microsoft Entra 인증을 구성할 수 있습니다. 이 작업을 수행하는 옵션은 다음과 같습니다.

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

    참고 항목

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

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

    참고 항목

    Azure-SSIS IR에서는 ADF의 관리 ID로 Microsoft Entra 인증을 사용할 때 ADO.NET 연결 관리자에 미리 구성된 다른 모든 인증 방법(예: 통합 보안 및 암호)이 재정의됩니다.

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

참고 항목