다음을 통해 공유


송신 어댑터에 대한 SSO 지원

Enterprise SSO(Single Sign-On)는 로컬, 네트워크 및 도메인 간에 암호화된 사용자 자격 증명을 저장 및 전송하기 위한 서비스를 제공합니다. 전송 어댑터를 만들 때 SSO API를 사용하여 전송 어댑터가 백 엔드 응용 프로그램에 액세스하는 데 사용하는 사용자 자격 증명을 처리할 수 있습니다.

SSO를 지원하지 않는 전송 어댑터는 대개 백 엔드 응용 프로그램에 액세스하기 위해 사용하는 단일 자격 증명 집합으로 구성해야 합니다. 대부분의 백 엔드 시스템의 경우 단일 계정 인증은 일부 보안 사항을 만족하지 않을 수 있습니다. 많은 응용 프로그램에서는 액세스하는 사용자에 따라 각기 다른 액세스 권한을 제공합니다. SSO를 사용하면 액세스하는 사용자에 따라 어댑터가 엔드포인트에 사용할 자격 증명을 동적으로 선택할 수 있습니다.

SSO에서의 송신 어댑터 작동 방법

SSO를 지원하는 어댑터를 보내 티켓의 유효성을 검사하고 사용하고 ISSOTicket.ValidateAndRedeemTicket API를 사용하여 SSO 시스템에서 사용자 자격 증명을 가져옵니다. 어댑터는 가져온 자격 증명을 사용하여 대상 엔드포인트를 인증합니다.

다음 코드 조각은 송신 어댑터가 SSO 시스템에서 사용자 자격 증명을 가져오는 방법을 보여 줍니다.

public class MyAdapter : IBTTransport,   
                         IBTTransportConfig,   
                         IBTTransportControl,  
                        IPersistPropertyBag,   
                         IBaseComponent  
{  
...  
     private string m_UserName = null;  
     private string m_UserPassword = null;  
  
 // Get user credentials from SSO  
 // AffiliateAppVal is the name of SSO affiliate   
 // application for the specific destination endpoint  
     private void GetUserCredentials(  
 IBaseMessage message,   
 string AffiliateAppVal )  
     {  
 string creds[] = null;  
 string externalUserName = null;  
  
 ISSOTicket ssoTicket = new ISSOTicket();  
 creds = ssoTicket.ValidateAndRedeemTicket(  
 message,   
 AffiliateAppVal,   
 0,   
 out externalUserName);  
  
 m_UserName = externalUserName;  
 m_UserPassword = creds[0];  
     }  
...  
}  

Party Resolution

Party Resolution 파이프라인 구성 요소는 보낸 사람 인증서 또는 보낸 사람의 SID(보안 식별자)를 구성된 해당 BizTalk Server 파티에 매핑합니다. 이 정보를 사용할 수 있는 어댑터는 구성된 경우 다운스트림 파티 확인 구성 요소 에서 사용할 WindowsUserSignatureCertificate라는 두 가지 시스템 메시지 컨텍스트 속성을 설정해야 합니다.

WindowsUser 속성은 보낸 사람의 도메인 사용자(예: redmond\myBtsUser)로 채워집니다. SignatureCertificate 속성은 클라이언트 인증 인증서의 지문으로 채워집니다.

암호 관리

엔드포인트의 속성에 직접 자격 증명을 입력하면 바인딩 파일을 내보내야 하는 경우 암호 필드가 비게 됩니다. 따라서 사용자는 관리자로 암호를 다시 입력해야 합니다. 자격 증명에 SSO를 사용하면 이러한 불편함을 덜 수 있습니다.