다음을 통해 공유


플러그 인의 가장

 

게시 날짜: 2016년 11월

적용 대상: Dynamics CRM 2015

가장은 Microsoft Dynamics 365 시스템 사용자 대신 비즈니스 논리(사용자 지정 코드)를 실행하여 해당 사용자에게 필요한 기능 또는 서비스를 제공하는 데 사용됩니다. 웹 서비스 메서드 호출 및 데이터 액세스를 포함하여 플러그 인 내 실행되는 비즈니스 논리는 가장된 사용자의 보안 권한으로 제어됩니다.

샌드박스 또는 비동기 서비스로 실행되지 않는 플러그 인은 CRMAppPool 속성 대화 상자의 ID 탭에 지정된 보안 계정으로 실행됩니다. 대화 상자는 IIS(인터넷 정보 서비스) 관리자의 CRMAppPool 응용 프로그램 풀을 마우스 오른쪽 단추로 클릭한 후 바로 가기 메뉴에서 속성을 클릭하여 액세스할 수 있습니다. 기본적으로 CRMAppPool은 네트워크 서비스 ID를 사용하지만 설치하는 동안 시스템 관리자가 변경할 수 있습니다.CRMAppPool ID가 네트워크 서비스를 제외한 시스템 계정으로 변경되면 새 ID 계정을 Active Directory의 PrivUserGroup 그룹에 추가해야 합니다.추가 정보:TechNet: 더욱 상세한 지침을 위해 Microsoft Dynamics CRM 서비스 계정 또는 AppPool ID를 변경하십시오.

사용자를 가장하는 데 사용할 수 있는 두 가지 방법이 아래 설명되어 있습니다.

플러그 인 등록 중 가장

플러그 인 내에서 시스템 사용자를 가장하는 한 가지 방법은 플러그 인 등록 중 가장된 사용자를 지정하는 것입니다. 플러그 인을 프로그래밍 방식으로 등록할 때 SdkMessageProcessingStep.ImpersonatingUserId 특성이 특정 Microsoft Dynamics 365 시스템 사용자로 설정되어 있으면 가장된 사용자 대신 플러그 인에서 만든 웹 서비스 호출이 실행됩니다. 플러그인 등록시 ImpersonatingUserId 또는 Guid.Empty 값으로 설정된 경우, 호출/로그인 사용자 또는 표준 "시스템" 사용자는 가장 사용자입니다.

호출/로그온 사용자 또는 "시스템" 사용자가 가장에 사용되는지 여부는 파이프라인에서 처리되는 요청에 따라 달라지면 이 부분은 SDK 설명서에서 다루지 않습니다. "시스템" 사용자에 대한 자세한 내용은 다음 항목을 참조하십시오.

참고

SDK 다운로드에서 제공되는 샘플 플러그 인 등록 도구를 사용하여 플러그 인을 등록하면 사용자의 컨텍스트 실행 드롭다운 메뉴에서 다른 사용자를 선택하지 않는 한 플러그 인에서 호출되는 서비스 메서드는 기본적으로 호출 또는 로그온한 사용자의 계정으로 실행됩니다. 도구 샘플 코드에 대한 자세한 내용은 SDK 패키지에서 SDK\Tools\PluginRegistration 폴더의 도구 코드를 참조하십시오.Microsoft Dynamics CRM SDK 패키지를 다운로드합니다.

플러그 인 실행 중 가장

플러그 인 등록 중 정의된 가장은 런타임에 플러그 인에서 변경될 수 있습니다. 플러그 인 등록에 가장이 정의되지 않은 경우에도 플러그 인 코드는 가장을 사용할 수 있습니다. 다음은 웹 서비스 메서드에서 플러그 인을 호출할 때 가장 역할을 하는 키 속성 및 메서드 식별에 대해 설명합니다.

플랫폼은 가장된 사용자 ID를 런타임에 UserId 속성을 통해 플러그 인에 전달합니다. 이 속성은 아래 표에 표시된 것처럼 세 가지 다른 값 중 하나일 수 있습니다.

UserId 값

조건

사용자 또는 "시스템" 사용자 시작

플러그인 등록시 SdkMessageProcessingStep.ImpersonatingUserId 특성은 또는 Guid.Empty 값으로 설정됩니다.

가장된 사용자

ImpersonatingUserId 속성은 플러그 인 등록에 유효한 시스템 사용자 ID로 설정됩니다.

"시스템" 사용자

현재 파이프라인은 서비스 메서드 호출에 대한 직접적인 응답이 아니라 플랫폼에서 실행되었습니다.

실행 컨텍스트의 InitiatingUserId 속성에는 플러그 인을 실행하도록 한 서비스 메서드를 호출한 시스템 사용자의 ID가 들어 있습니다.

중요

오프라인으로 실행되는 플러그 인의 경우 플러그 인에서 만든 모든 엔터티는 로그온한 사용자가 담당합니다. 플러그 인은 오프라인 모드에서 지원되지 않습니다.

참고 항목

플러그 인 개발
플러그 인 등록 및 배포
플러그 인에 전달된 데이터 컨텍스트 이해
다른 사용자 가장

© 2017 Microsoft. All rights reserved. 저작권 정보