Power BI 서비스에서 온-프레미스 데이터 원본으로 Kerberos 기반 SSO 구성Configure Kerberos-based SSO from Power BI service to on-premises data sources

SSO를 사용하도록 설정하면 Power BI 보고서 및 대시보드가 온-프레미스 원본에 구성된 사용자 수준 권한을 준수하면서 원본의 데이터를 손쉽게 새로 고칠 수 있습니다.Enabling SSO makes it easy for Power BI reports and dashboards to refresh data from on-premises sources while respecting user-level permissions configured on those sources. Kerberos 제한 위임을 사용하여 원활한 SSO 연결을 사용하도록 설정합니다.Use Kerberos constrained delegation to enable seamless SSO connectivity.

필수 조건Prerequisites

Kerberos 제한 위임이 제대로 작동하려면 ‘SPN(서비스 사용자 이름)’ 및 서비스 계정의 위임 설정을 포함한 여러 항목을 구성해야 합니다.Several items must be configured for Kerberos constrained delegation to work properly, including Service Principal Names (SPN) and delegation settings on service accounts.

Microsoft 온-프레미스 데이터 게이트웨이 설치 및 구성Install and configure the Microsoft on-premises data gateway

온-프레미스 데이터 게이트웨이는 현재 위치 업그레이드 및 기존 게이트웨이의 _설정 적용_을 지원합니다.The on-premises data gateway supports an in-place upgrade, and settings takeover of existing gateways.

도메인 계정으로 게이트웨이 Windows 서비스 실행Run the gateway Windows service as a domain account

표준 설치에서 게이트웨이는 머신-로컬 서비스 계정(NT Service\PBIEgwService)으로 실행됩니다.In a standard installation, the gateway runs as the machine-local service account, NT Service\PBIEgwService.

머신-로컬 서비스 계정

Kerberos 제한 위임을 사용하도록 설정하려면, Azure AD DirSync/Connect를 통해 Azure AD(Azure Active Directory) 인스턴스가 로컬 Active Directory 인스턴스와 동기화되지 않은 경우 게이트웨이가 도메인 계정으로 실행되어야 합니다.To enable Kerberos constrained delegation, the gateway must run as a domain account, unless your Azure Active Directory (Azure AD) instance is already synchronized with your local Active Directory instance (by using Azure AD DirSync/Connect). 도메인 계정으로 전환하려면 게이트웨이 서비스 계정 변경을 참조하세요.To switch to a domain account, see change the gateway service account.

참고

Azure AD Connect가 구성되고 사용자 계정이 동기화된 경우 게이트웨이 서비스는 런타임 시 로컬 Azure AD 조회를 수행하지 않아도 됩니다.If Azure AD Connect is configured and user accounts are synchronized, the gateway service doesn't need to perform local Azure AD lookups at runtime. 대신, 게이트웨이 서비스에 대해 로컬 서비스 SID를 사용하여 Azure AD에서 필요한 구성을 모두 완료할 수 있습니다.Instead, you can simply use the local service SID for the gateway service to complete all required configuration in Azure AD. 이 문서에서 간략하게 설명된 Kerberos 제한 위임 구성 단계는 Azure AD 컨텍스트에서 필요한 구성 단계와 동일합니다.The Kerberos constrained delegation configuration steps outlined in this article are the same as the configuration steps required in the Azure AD context. 단, 도메인 계정이 아니라 로컬 서비스 SID로 확인된 Azure AD의 게이트웨이 컴퓨터 개체에 적용됩니다.They are applied to the gateway's computer object (as identified by the local service SID) in Azure AD instead of the domain account.

SPN(SetSPN) 및 Kerberos 제한 위임 설정을 구성하기 위해 도메인 관리자 권한 얻기Obtain domain admin rights to configure SPNs (SetSPN) and Kerberos constrained delegation settings

SPN 및 Kerberos 위임 설정을 구성하기 위해 도메인 관리자가 도메인 관리자 권한이 없는 사용자에게 권한을 부여하면 안 됩니다.To configure SPNs and Kerberos delegation settings, a domain administrator should avoid granting rights to someone that doesn't have domain admin rights. 다음 섹션에서는 권장되는 구성 단계를 자세하게 다룹니다.In the following section, we cover the recommended configuration steps in more detail.

게이트웨이 및 데이터 원본에 대해 Kerberos 제한 위임 구성Configure Kerberos constrained delegation for the gateway and data source

필요한 경우 게이트웨이 서비스 도메인 계정의 SPN을 도메인 관리자로 구성하고 게이트웨이 서비스 도메인 계정에서 위임 설정을 구성합니다.If necessary, configure an SPN for the gateway service domain account as a domain administrator and configure delegation settings on the gateway service domain account.

게이트웨이 서비스 계정에 대해 SPN 구성Configure an SPN for the gateway service account

먼저 게이트웨이 서비스 계정으로 사용된 도메인 계정에 대해 SPN이 이미 생성되어 있는지 확인합니다.First, determine whether an SPN was already created for the domain account used as the gateway service account:

  1. 도메인 관리자로, Active Directory 사용자 및 컴퓨터 MMC(Microsoft Management Console) 스냅인을 시작합니다.As a domain administrator, launch the Active Directory Users and Computers Microsoft Management Console (MMC) snap-in.

  2. 왼쪽 창에서 도메인 이름을 마우스 오른쪽 단추로 클릭하고 찾기를 선택한 다음, 게이트웨이 서비스 계정의 계정 이름을 입력합니다.In the left pane, right-click the domain name, select Find, and then enter the account name of the gateway service account.

  3. 검색 결과에서 게이트웨이 서비스 계정을 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.In the search result, right-click the gateway service account and select Properties.

  4. 속성 대화 상자에 위임 탭이 표시되는 경우 SPN이 이미 생성된 것이므로 사용할 Kerberos 제한 위임 유형 결정으로 건너뛰어도 됩니다.If the Delegation tab is visible on the Properties dialog, then an SPN was already created and you can skip to Decide on the type of Kerberos constrained delegation to use.

  5. 속성 대화 상자에 위임 탭이 없는 경우, 계정에서 SPN을 수동으로 만들어 사용하도록 설정할 수 있습니다.If there isn't a Delegation tab on the Properties dialog box, you can manually create an SPN on the account to enable it. Windows와 함께 제공되는 setspn 도구를 사용합니다(SPN을 만드는 도메인 관리자 권한 필요).Use the setspn tool that comes with Windows (you need domain admin rights to create the SPN).

    예를 들어 게이트웨이 서비스 계정이 Contoso\GatewaySvc이고, 게이트웨이 서비스가 MyGatewayMachine이라는 머신에서 실행되고 있다고 가정합니다.For example, suppose the gateway service account is Contoso\GatewaySvc and the gateway service is running on the machine named MyGatewayMachine. 게이트웨이 서비스 계정의 SPN을 설정하려면 다음 명령을 실행합니다.To set the SPN for the gateway service account, run the following command:

    setspn -a gateway/MyGatewayMachine Contoso\GatewaySvc

    Active Directory 사용자 및 컴퓨터 MMC 스냅인을 사용하여 SPN을 설정할 수도 있습니다.You can also set the SPN by using the Active Directory Users and Computers MMC snap-in.

필요한 경우 Windows Authorization and Access Group 그룹에 게이트웨이 서비스 계정 추가Add gateway service account to Windows Authorization and Access Group if required

특정 시나리오에서는 Windows Authorization and Access Group에 게이트웨이 서비스 계정을 추가해야 합니다.In certain scenarios the gateway service account must be added to the Windows Authorization and Access Group. 이러한 시나리오에는 Active Directory 환경의 보안을 강화하는 경우, 게이트웨이 서비스 계정 및 게이트웨이에서 가장할 사용자 계정이 별도의 도메인이나 포리스트에 있는 경우가 포함됩니다.These scenarios include security hardening of the Active Directory environment, and when the gateway service account and the user accounts that the gateway will impersonate are in separate domains or forests. 도메인/포리스트가 강화되지 않은 상황에도 Windows Authorization and Access Group에 게이트웨이 서비스 계정을 추가할 수 있지만 반드시 필요한 것은 아닙니다.You can also add the gateway service account to Windows Authorization and Access Group in situations where the domain / forest has not been hardened, but it isn't required.

자세한 내용은 Windows Authorization and Access Group을 참조하세요.For more information, see Windows Authorization and Access Group.

이 구성 단계를 완료하려면 게이트웨이 서비스 계정이 가장할 수 있는 Active Directory 사용자를 포함하는 각 도메인에 대해 다음을 수행합니다.To complete this configuration step, for each domain that contains Active Directory users you want the gateway service account to be able to impersonate:

  1. 도메인의 컴퓨터에 로그인하고 Active Directory 사용자 및 컴퓨터 MMC 스냅인을 시작합니다.Sign in to a computer in the domain, and launch the Active Directory Users and Computers MMC snap-in.
  2. Windows Authorization and Access Group 그룹을 찾습니다(일반적으로 Builtin 컨테이너에 있음).Locate the group Windows Authorization and Access Group, which is typically found in the Builtin container.
  3. 그룹을 두 번 클릭하고 구성원 탭을 클릭합니다.Double click on the group, and click on the Members tab.
  4. 추가를 클릭하고 도메인 위치를 게이트웨이 서비스 계정이 있는 도메인으로 변경합니다.Click Add, and change the domain location to the domain that the gateway service account resides in.
  5. 게이트웨이 서비스 계정 이름을 입력하고 이름 확인을 클릭하여 이 게이트웨이 서비스 계정에 액세스할 수 있는지 확인합니다.Type in the gateway service account name and click Check Names to verify that the gateway service account is accessible.
  6. 확인을 클릭합니다.Click OK.
  7. 적용을 클릭합니다.Click Apply.
  8. 게이트웨이 서비스를 다시 시작합니다.Restart the gateway service.

사용할 Kerberos 제한 위임 유형 결정Decide on the type of Kerberos constrained delegation to use

표준 Kerberos 제한 위임 또는 리소스 기반 Kerberos 제한 위임의 위임 설정을 구성할 수 있습니다.You can configure delegation settings for either standard Kerberos constrained delegation or resource-based Kerberos constrained delegation. 데이터 원본이 게이트웨이와 다른 도메인에 속해 있는 경우 리소스 기반 위임을 사용합니다(Windows Server 2012 이상 필요).Use resource-based delegation (requires Windows Server 2012 or later) if your data source belongs to a different domain than your gateway. 두 가지 위임 방법의 차이점에 대한 자세한 내용은 Kerberos 제한 위임 개요를 참조하세요.For more information on the differences between the two approaches to delegation, see Kerberos constrained delegation overview.

사용하려는 방법에 따라 다음 섹션 중 하나를 진행합니다.Depending on which approach you want to use, proceed to one of the following sections. 두 섹션을 모두 완료하면 안 됩니다.Don't complete both sections:

표준 Kerberos 제한 위임에 대한 게이트웨이 서비스 계정 구성Configure the gateway service account for standard Kerberos constrained delegation

참고

표준 Kerberos 제한 위임을 사용하도록 설정하려는 경우 이 섹션의 단계를 완료합니다.Complete the steps in this section if you want to enable standard Kerberos constrained delegation. 리소스 기반 Kerberos 제한 위임을 사용하도록 설정하려는 경우 리소스 기반 Kerberos 제한 위임의 게이트웨이 서비스 계정 구성의 단계를 완료합니다.Otherwise, if you want to enable resource-based Kerberos constrained delegation, complete the steps in Configure the gateway service account for resource-based Kerberos constrained delegation.

이제 게이트웨이 서비스 계정에 대한 위임 설정을 설정하겠습니다.We'll now set the delegation settings for the gateway service account. 이러한 단계를 수행할 수 있는 여러 도구가 있습니다.There are multiple tools you can use to perform these steps. 여기서는 Active Directory 사용자 및 컴퓨터 MMC 스냅인을 사용하여 디렉터리의 정보를 관리하고 게시합니다.Here, we'll use the Active Directory Users and Computers MMC snap-in to administer and publish information in the directory. 도메인 컨트롤러에서는 이 스냅인을 기본적으로 사용할 수 있으며, 다른 머신에서는 Windows 기능 구성을 통해 사용하도록 설정할 수 있습니다.It's available on domain controllers by default; on other machines, you can enable it through Windows feature configuration.

프로토콜 전송을 사용하여 Kerberos 제한 위임을 구성해야 합니다.We need to configure Kerberos constrained delegation with protocol transiting. 제한된 위임을 사용하여 게이트웨이가 위임된 자격 증명을 제공할 수 있도록 허용할 서비스를 명시적으로 지정해야 합니다.With constrained delegation, you must be explicit about which services you allow the gateway to present delegated credentials to. 예를 들어, SQL Server 또는 SAP HANA 서버만 게이트웨이 서비스 계정에서 위임 호출을 수락합니다.For example, only SQL Server or your SAP HANA server accepts delegation calls from the gateway service account.

이 섹션에서는 기본 데이터 원본에 대해 이미 SPN을 구성했다고 가정합니다(예: SQL Server, SAP HANA, SAP BW, Teradata 또는 Spark).This section assumes you have already configured SPNs for your underlying data sources (such as SQL Server, SAP HANA, SAP BW, Teradata, or Spark). 이러한 데이터 원본 서버 SPN을 구성하는 방법을 알아보려면 해당 데이터베이스 서버에 대한 기술 설명서 및 My Kerberos Checklist(내 Kerberos 검사 목록) 블로그 게시물의 ‘앱에 필요한 SPN’ 섹션을 참조하세요. To learn how to configure those data source server SPNs, refer to the technical documentation for the respective database server and see the section What SPN does your app require? in the My Kerberos Checklist blog post.

다음 단계에서는 이미 Kerberos 기반 SSO에 대해 구성된 SQL Server를 실행 중인 데이터베이스 서버와 게이트웨이 컴퓨터라는 두 컴퓨터가 동일한 도메인에 있는 온-프레미스 환경을 가정합니다.In the following steps, we assume an on-premises environment with two machines in the same domain: a gateway machine and a database server running SQL Server that has already been configured for Kerberos-based SSO. 데이터 원본이 이미 Kerberos 기반 Single Sign-On에 대해 구성된 경우에는 지원되는 다른 데이터 원본 중 하나에 대해 이 단계를 채택할 수 있습니다.The steps can be adopted for one of the other supported data sources, so long as the data source has already been configured for Kerberos-based single sign-on. 이 예제에서는 다음 설정을 사용합니다.For this example, we'll use the following settings:

  • Active Directory 도메인(Netbios): ContosoActive Directory Domain (Netbios): Contoso
  • 게이트웨이 머신 이름: MyGatewayMachineGateway machine name: MyGatewayMachine
  • 게이트웨이 서비스 계정: Contoso\GatewaySvcGateway service account: Contoso\GatewaySvc
  • SQL Server 데이터 원본 머신 이름: TestSQLServerSQL Server data source machine name: TestSQLServer
  • SQL Server 데이터 원본 서비스 계정: Contoso\SQLServiceSQL Server data source service account: Contoso\SQLService

위임 설정을 구성하는 방법은 다음과 같습니다.Here's how to configure the delegation settings:

  1. 도메인 관리자 권한으로 Active Directory 사용자 및 컴퓨터 MMC 스냅인을 엽니다.With domain administrator rights, open the Active Directory Users and Computers MMC snap-in.

  2. 게이트웨이 서비스 계정(Contoso\GatewaySvc)을 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.Right-click the gateway service account (Contoso\GatewaySvc), and select Properties.

  3. 위임 탭을 선택합니다.Select the Delegation tab.

  4. 지정한 서비스에 대한 위임용으로만 이 컴퓨터 신뢰 > 모든 인증 프로토콜 사용을 차례로 선택합니다.Select Trust this computer for delegation to specified services only > Use any authentication protocol.

  5. 이 계정이 위임된 자격 증명을 표시할 수 있는 서비스에서 추가를 선택합니다.Under Services to which this account can present delegated credentials, select Add.

  6. 새 대화 상자에서 사용자 또는 컴퓨터를 선택합니다.In the new dialog box, select Users or Computers.

  7. 데이터 원본의 서비스 계정을 입력하고 확인을 선택합니다.Enter the service account for the data source, and then select OK.

    예를 들어 SQL Server 데이터 원본에는 Contoso\SQLService와 같은 서비스 계정이 있을 수 있습니다.For example, a SQL Server data source can have a service account like Contoso\SQLService. 이 계정에는 데이터 원본에 적절한 SPN이 이미 설정되어 있어야 합니다.An appropriate SPN for the data source should have already been set on this account.

  8. 데이터베이스 서버에 대해 만든 SPN을 선택합니다.Select the SPN that you created for the database server.

    예제에서 SPN은 MSSQLSvc로 시작합니다.In our example, the SPN begins with MSSQLSvc. 데이터베이스 서비스에 대해 FQDN 및 NetBIOS SPN 모두를 추가한 경우 둘 다 선택합니다.If you added both the FQDN and the NetBIOS SPN for your database service, select both. 하나만 표시될 수도 있습니다.You might see only one.

  9. 확인을 선택합니다.Select OK.

    이제 게이트웨이 서비스 계정에서 위임된 자격 증명을 제공할 수 있는 서비스 목록에 SPN이 표시됩니다.You should now see the SPN in the list of services to which the gateway service account can present delegated credentials.

    게이트웨이 커넥터 속성 대화 상자

  10. 설정 프로세스를 계속하려면 게이트웨이 서비스 계정에 게이트웨이 머신에 대한 로컬 정책 권한 부여를 계속 진행합니다.To continue the setup process, proceed to Grant the gateway service account local policy rights on the gateway machine.

리소스 기반 Kerberos 제한 위임에 대한 게이트웨이 서비스 계정 구성Configure the gateway service account for resource-based Kerberos constrained delegation

참고

리소스 기반 Kerberos 제한 위임을 사용하도록 설정하려는 경우 이 섹션의 단계를 완료합니다.Complete the steps in this section if you want to enable resource-based Kerberos constrained delegation. 표준 Kerberos 제한 위임을 사용하도록 설정하려는 경우 표준 Kerberos 제한 위임의 게이트웨이 서비스 계정 구성의 단계를 완료합니다.Otherwise, if you want to enable standard Kerberos constrained delegation, complete the steps in Configure the gateway service account for standard Kerberos constrained delegation.

리소스 기반 Kerberos 제한 위임을 사용하여 Windows Server 2012 이상 버전에 대해 Single Sign-On 연결을 사용하도록 설정합니다.You use resource-based Kerberos constrained delegation to enable single sign-on connectivity for Windows Server 2012 and later versions. 이 위임 유형을 사용하면 프런트 엔드 서비스와 백 엔드 서비스가 서로 다른 도메인에 있을 수 있습니다.This type of delegation permits front-end and back-end services to be in different domains. 제대로 작동하려면 백 엔드 서비스 도메인이 프런트 엔드 서비스 도메인을 신뢰해야 합니다.For it to work, the back-end service domain needs to trust the front-end service domain.

다음 단계에서는 이미 Kerberos 기반 SSO에 대해 구성된 SQL Server를 실행 중인 데이터베이스 서버와 게이트웨이 머신이라는 두 머신이 서로 다른 도메인에 있는 온-프레미스 환경을 가정합니다.In the following steps, we assume an on-premises environment with two machines in different domains: a gateway machine and a database server running SQL Server that has already been configured for Kerberos-based SSO. 데이터 원본에 Kerberos 기반 Single Sign-On이 이미 구성되어 있기만 하면, 다른 지원되는 데이터 원본 중 하나에서 이 단계를 수행할 수 있습니다.These steps can be adopted for one of the other supported data sources, so long as the data source has already been configured for Kerberos-based single sign-on. 이 예제에서는 다음 설정을 사용합니다.For this example, we'll use the following settings:

  • Active Directory 프런트 엔드 도메인(Netbios): ContosoFrontEndActive Directory frontend Domain (Netbios): ContosoFrontEnd
  • Active Directory 백 엔드 도메인(Netbios): ContosoBackEndActive Directory backend Domain (Netbios): ContosoBackEnd
  • 게이트웨이 머신 이름: MyGatewayMachineGateway machine name: MyGatewayMachine
  • 게이트웨이 서비스 계정: ContosoFrontEnd\GatewaySvcGateway service account: ContosoFrontEnd\GatewaySvc
  • SQL Server 데이터 원본 머신 이름: TestSQLServerSQL Server data source machine name: TestSQLServer
  • SQL Server 데이터 원본 서비스 계정: ContosoBackEnd\SQLServiceSQL Server data source service account: ContosoBackEnd\SQLService

다음 구성 단계를 완료합니다.Complete the following configuration steps:

  1. ContosoFrontEnd 도메인의 도메인 컨트롤러에서 Active Directory 사용자 및 컴퓨터 MMC 스냅인을 사용하고 게이트웨이 서비스 계정에 대해 위임 설정이 적용되지 않았는지 확인합니다.Use the Active Directory Users and Computers MMC snap-in on the domain controller for the ContosoFrontEnd domain and verify no delegation settings are applied for the gateway service account.

    게이트웨이 커넥터 속성

  2. ContosoBackEnd 도메인의 도메인 컨트롤러에서 Active Directory 사용자 및 컴퓨터를 사용하고 백 엔드 서비스 계정에 대해 위임 설정이 적용되지 않았는지 확인합니다.Use Active Directory Users and Computers on the domain controller for the ContosoBackEnd domain and verify no delegation settings are applied for the back-end service account.

    SQL 서비스 속성

  3. 계정 속성의 특성 편집기 탭에서 msDS-AllowedToActOnBehalfOfOtherIdentity 특성이 설정되지 않았는지 확인합니다.In the Attribute Editor tab of the account properties, verify that the msDS-AllowedToActOnBehalfOfOtherIdentity attribute isn't set.

    SQL 서비스 특성

  4. Active Directory 사용자 및 컴퓨터에서 ContosoBackEnd 도메인의 도메인 컨트롤러에 그룹을 만듭니다.In Active Directory Users and Computers, create a group on the domain controller for the ContosoBackEnd domain. GatewaySvc 게이트웨이 서비스 계정을 ResourceDelGroup 그룹에 추가합니다.Add the GatewaySvc gateway service account to the ResourceDelGroup group.

    그룹 속성

  5. 명령 프롬프트를 열고 ContosoBackEnd 도메인의 도메인 컨트롤러에서 다음 명령을 실행하여 백 엔드 서비스 계정의 msDS-AllowedToActOnBehalfOfOtherIdentity 특성을 업데이트합니다.Open a command prompt and run the following commands in the domain controller for the ContosoBackEnd domain to update the msDS-AllowedToActOnBehalfOfOtherIdentity attribute of the back-end service account:

    $c = Get-ADGroup ResourceDelGroup
    Set-ADUser SQLService -PrincipalsAllowedToDelegateToAccount $c
    
  6. Active Directory 사용자 및 컴퓨터에서 백 엔드 서비스 계정 속성의 특성 편집기 탭에 업데이트가 반영되었는지 확인합니다.In Active Directory Users and Computers, verify that the update is reflected in the Attribute Editor tab in the properties for the back-end service account.

게이트웨이 서비스 계정에 게이트웨이 머신에 대한 로컬 정책 권한 부여Grant the gateway service account local policy rights on the gateway machine

마지막으로, 게이트웨이 서비스를 실행 중인 머신(예제에서는 MyGatewayMachine)에서 게이트웨이 서비스 계정에 로컬 정책 인증 후 클라이언트 가장운영 체제의 일부로 작동(SeTcbPrivilege) 을 부여합니다.Finally, on the machine running the gateway service (MyGatewayMachine in our example), grant the gateway service account the local policies Impersonate a client after authentication and Act as part of the operating system (SeTcbPrivilege). 로컬 그룹 정책 편집기(gpedit.msc)를 사용하여 이 구성을 수행합니다.Perform this configuration with the Local Group Policy Editor (gpedit.msc).

  1. 게이트웨이 머신에서 gpedit.msc를 실행합니다.On the gateway machine, run gpedit.msc.

  2. 로컬 컴퓨터 정책 > 컴퓨터 구성 > Windows 설정 > 보안 설정 > 로컬 정책 > 사용자 권한 할당으로 이동합니다.Go to Local Computer Policy > Computer Configuration > Windows Settings > Security Settings > Local Policies > User Rights Assignment.

    로컬 컴퓨터 정책 폴더 구조

  3. 사용자 권한 할당의 정책 목록에서 인증 후 클라이언트 가장을 선택합니다.Under User Rights Assignment, from the list of policies, select Impersonate a client after authentication.

    클라이언트 정책 가장

  4. 정책을 마우스 오른쪽 단추로 클릭하고 속성을 연 다음, 계정 목록을 봅니다.Right-click the policy, open Properties, and then view the list of accounts.

    목록에는 게이트웨이 서비스 계정(제한된 위임 유형에 따라 Contoso\GatewaySvc 또는 ContosoFrontEnd\GatewaySvc)이 포함되어 있어야 합니다.The list must include the gateway service account (Contoso\GatewaySvc or ContosoFrontEnd\GatewaySvc depending on the type of constrained delegation).

  5. 사용자 권한 할당 아래의 정책 목록에서 운영 체제의 일부로 작동(SeTcbPrivilege) 을 선택합니다.Under User Rights Assignment, select Act as part of the operating system (SeTcbPrivilege) from the list of policies. 게이트웨이 서비스 계정이 계정 목록에 포함되어 있는지 확인합니다.Ensure that the gateway service account is included in the list of accounts.

  6. 온-프레미스 데이터 게이트웨이 서비스 프로세스를 다시 시작합니다.Restart the On-premises data gateway service process.

게이트웨이 머신에서 사용자 매핑 구성 매개 변수 설정(필요한 경우)Set user-mapping configuration parameters on the gateway machine (if necessary)

Azure AD Connect가 구성되지 않은 경우 다음 단계에 따라 Power BI 서비스 사용자를 로컬 Active Directory 사용자에 매핑합니다.If you don't have Azure AD Connect configured, follow these steps to map a Power BI service user to a local Active Directory user. 이러한 방식으로 매핑된 각 Active Directory 사용자는 데이터 원본에 대한 SSO 권한이 있어야 합니다.Each Active Directory user mapped in this way needs to have SSO permissions for your data source. 자세한 내용은 Guy in a Cube 동영상을 참조하세요.For more information, see Guy in a Cube video.

  1. 기본 게이트웨이 구성 파일 Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll을 엽니다.Open the main gateway configuration file, Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll. 이 파일은 기본적으로 C:\Program Files\On-premises data gateway에 저장되어 있습니다.By default, this file is stored at C:\Program Files\On-premises data gateway.

  2. ADUserNameLookupProperty를 사용하지 않는 Active Directory 특성으로 설정합니다.Set ADUserNameLookupProperty to an unused Active Directory attribute. 이후 단계에서는 msDS-cloudExtensionAttribute1을 사용합니다.We'll use msDS-cloudExtensionAttribute1 in the steps that follow. 이 특성은 Windows Server 2012 이상에서만 사용할 수 있습니다.This attribute is available only in Windows Server 2012 and later.

  3. ADUserNameReplacementPropertySAMAccountName으로 설정하고 구성 파일을 저장합니다.Set ADUserNameReplacementProperty to SAMAccountName and then save the configuration file.

  4. 작업 관리자의 서비스 탭에서 게이트웨이 서비스를 마우스 오른쪽 단추로 클릭하고 다시 시작을 선택합니다.From the Services tab of Task Manager, right-click the gateway service and select Restart.

    작업 관리자 서비스 탭의 스크린샷

  5. Kerberos SSO를 사용하도록 설정할 각 Power BI 서비스 사용자에 대해 로컬 Active Directory 사용자(데이터 원본에 대한 SSO 권한 포함)의 msDS-cloudExtensionAttribute1 속성을 Power BI 서비스 사용자의 전체 사용자 이름(UPN)으로 설정합니다.For each Power BI service user you want to enable Kerberos SSO for, set the msDS-cloudExtensionAttribute1 property of a local Active Directory user (with SSO permission to your data source) to the full username (UPN) of the Power BI service user. 예를 들어 Power BI 서비스에 test@contoso.com으로 로그인하고 이 사용자를 SSO 권한이 있는 로컬 Active Directory 사용자(예: test@LOCALDOMAIN.COM)로 매핑하려면, 이 사용자의 msDS-cloudExtensionAttribute1 특성을 test@contoso.com으로 설정합니다.For example, if you sign in to Power BI service as test@contoso.com and you want to map this user to a local Active Directory user with SSO permissions, say, test@LOCALDOMAIN.COM, set this user's msDS-cloudExtensionAttribute1 attribute to test@contoso.com.

    Active Directory 사용자 및 컴퓨터 MMC 스냅인을 사용하여 msDS-cloudExtensionAttribute1 속성을 설정할 수 있습니다.You can set the msDS-cloudExtensionAttribute1 property with the Active Directory Users and Computers MMC snap-in:

    1. 도메인 관리자로 Active Directory 사용자 및 컴퓨터를 시작합니다.As a domain administrator, launch Active Directory Users and Computers.

    2. 도메인 이름을 마우스 오른쪽 단추로 클릭하고 찾기를 선택한 다음, 매핑할 로컬 Active Directory 사용자의 계정 이름을 입력합니다.Right-click the domain name, select Find, and then enter the account name of the local Active Directory user to map.

    3. 특성 편집기 탭을 선택합니다.Select the Attribute Editor tab.

      msDS-cloudExtensionAttribute1 속성을 찾아 두 번 클릭합니다.Locate the msDS-cloudExtensionAttribute1 property, and double-click it. Power BI 서비스에 로그인하는 데 사용할 사용자의 전체 사용자 이름(UPN)으로 값을 설정합니다.Set the value to the full username (UPN) of the user you use to sign in to the Power BI service.

    4. 확인을 선택합니다.Select OK.

      문자열 특성 편집기 창

    5. 적용을 선택합니다.Select Apply. 열에 올바른 값이 설정되었는지 확인합니다.Verify that the correct value has been set in the Value column.

데이터 원본 관련 구성 단계 완료Complete data source-specific configuration steps

SAP HANA 및 SAP BW에는 이러한 데이터 원본에 대한 게이트웨이를 통해 SSO 연결을 설정하기 전에 충족해야 하는 추가 데이터 원본 관련 구성 요구 사항 및 필수 구성 요소가 있습니다.SAP HANA and SAP BW have additional data-source specific configuration requirements and prerequisites that you need to meet before you can establish an SSO connection through the gateway to these data sources. 자세한 내용은 SAP HANA 구성SAP BW - CommonCryptoLib(sapcrypto.dll) 구성 페이지를 참조하세요.For more information, see SAP HANA configuration and the SAP BW - CommonCryptoLib (sapcrypto.dll) configuration page. SAP BW에서 gx64krb5 SNC 라이브러리를 사용하도록 구성할 수도 있지만, 이 라이브러리는 SAP에서 더 이상 지원되지 않으므로 권장되지 않습니다.Although it's possible to configure SAP BW for use with the gx64krb5 SNC library, this library isn't recommended because it's no longer supported by SAP. CommonCryptoLib 또는 gx64krb5를 SNC 라이브러리로 사용해야 합니다.You should use CommonCryptoLib or gx64krb5 as your SNC library. 두 라이브러리에 대해 구성 단계를 모두 완료하면 안 됩니다.Don't complete the configuration steps for both libraries.

참고

다른 SNC 라이브러리도 BW SSO에 사용할 수 있지만 Microsoft에서 공식적으로 지원하지는 않습니다.Although other SNC libraries might also work for BW SSO, they aren't officially supported by Microsoft.

Power BI 보고서 실행Run a Power BI report

모든 구성 단계를 완료한 후에는 Power BI의 게이트웨이 관리 페이지를 사용하여 SSO에 사용할 데이터 원본을 구성할 수 있습니다.After you complete all the configuration steps, use the Manage Gateway page in Power BI to configure the data source to use for SSO. 게이트웨이가 여러 개인 경우 Kerberos SSO에 대해 구성한 게이트웨이를 선택해야 합니다.If you have multiple gateways, ensure that you select the gateway you've configured for Kerberos SSO. 그런 다음, 데이터 원본의 고급 설정에서 DirectQuery 기반 보고서의 경우 DirectQuery 쿼리에 Kerberos를 통한 SSO 사용 또는 DirectQuery를 위해 Kerberos를 통한 SSO 사용 및 쿼리 가져오기가 선택되고 새로 고침 기반 보고서의 경우 DirectQuery를 위해 Kerberos를 통한 SSO 사용 및 쿼리 가져오기가 선택되어 있는지 확인합니다.Then, under Advanced Settings for the data source, ensure Use SSO via Kerberos for DirectQuery queries or Use SSO via Kerberos for DirectQuery And Import queries is checked for DirectQuery based Reports and Use SSO via Kerberos for DirectQuery And Import queries is checked for Refresh based Reports.

고급 설정 옵션

Power BI Desktop에서 DirectQuery 기반 보고서를 게시하고 DirectQuery 쿼리에 Kerberos를 통한 SSO 사용 또는 DirectQuery를 위해 Kerberos를 통한 SSO 사용 및 쿼리 가져오기를 선택한 데이터 원본에 매핑한 경우 Power BI 서비스에 로그인하는 (Azure) Active Directory 사용자에 매핑된 사용자가 액세스할 수 있는 데이터를 이 보고서에서 사용합니다.If you publish a DirectQuery-based report from Power BI Desktop and map it to a data source having the Use SSO via Kerberos for DirectQuery queries or the Use SSO via Kerberos for DirectQuery And Import queries checked, this report would use data that is accessible to the user that's mapped to the (Azure) Active Directory user that signs in to the Power BI service.

마찬가지로 Power BI Desktop에서 새로 고침 기반 보고서를 게시하고 DirectQuery를 위해 Kerberos를 통한 SSO 사용 및 쿼리 가져오기가 선택된 데이터 원본에 매핑한 경우에는 자격 증명을 제공할 필요가 없습니다.Similarly if you publish a Refresh-based report from Power BI desktop and map it to a data source having the Use SSO via Kerberos for DirectQuery And Import queries checked, you do not need to provide any credentials. 새로 고침은 데이터 세트 소유자의 Active Directory 컨텍스트에서 실행됩니다.The refresh is executed under the the dataset owner's active directory context.

그러나 DirectQuery를 위해 Kerberos를 통한 SSO 사용 및 쿼리 가져오기가 선택되지 않은 데이터 원본에 매핑하는 경우에는 데이터 원본을 만들 때 사용자 이름암호 필드에 입력한 자격 증명이 새로 고침에 사용됩니다.If however, you map it to a data source where Use SSO via Kerberos for DirectQuery And Import queries isn't checked, the refresh uses the credentials that you entered in the Username and Password fields when you created the data source. 즉, Kerberos SSO가 사용되지 않습니다.In other words, Kerberos SSO is not used.

게시할 때 여러 게이트웨이가 있는 경우 SSO에 대해 구성한 게이트웨이를 선택합니다.When you publish, select the gateway you've configured for SSO if you have multiple gateways.

이 구성은 대부분의 경우에서 작동합니다.This configuration works in most cases. 그러나 Kerberos를 사용하는 경우 환경에 따라 서로 다른 구성이 있을 수 있습니다.However, with Kerberos there can be different configurations depending on your environment. 보고서가 로드되지 않는 경우, 도메인 관리자에게 자세히 조사하도록 요청해야 합니다.If the report won't load, contact your domain administrator to investigate further. 데이터 원본이 SAP BW인 경우, 선택한 SNC 라이브러리에 따라 CommonCryptoLibgx64krb5/gsskrb5의 데이터 원본 관련 구성 페이지에서 문제 해결 섹션을 참조하세요.If your data source is SAP BW, refer to the troubleshooting sections of the data source-specific configuration pages for CommonCryptoLib and gx64krb5/gsskrb5, depending on which SNC library you've chosen.

다음 단계Next steps

온-프레미스 데이터 게이트웨이 및 DirectQuery에 대한 자세한 내용은 다음 리소스를 참조하세요.For more information about the on-premises data gateway and DirectQuery, see the following resources: