SOAP 수신 위치를 구성하는 방법
프로그래밍 방식으로 또는 BizTalk Server 관리 콘솔을 사용하여 SOAP 수신 위치를 구성할 수 있습니다.
프로그래밍 방식으로 SOAP 수신 위치를 구성하는 방법
BizTalk 탐색기 개체 모델을 사용하면 수신 위치를 프로그래밍 방식으로 만들고 구성할 수 있습니다. BizTalk Explorer 개체 모델은 TransportTypeData 읽기/쓰기 속성이 있는IReceiveLocation 수신 위치 구성 인터페이스를 노출합니다. 이 속성은 이름-값 쌍 XML 문자열 형식의 SOAP 수신 위치 구성 PropertyBag을 허용합니다. BizTalk Explorer 개체 모델에서 이 속성을 설정하려면 IReceiveLocation 인터페이스의 InboundTransportLocation 속성을 설정해야 합니다.
IReceiveLocation 인터페이스의 TransportTypeData 속성을 설정할 필요가 없습니다. 이 속성을 설정하지 않으면 SOAP 어댑터에서는 다음 표에 표시된 SOAP 수신 위치 구성에 대한 기본값을 사용합니다.
다음 표에는 SOAP 수신 위치에 대해 BizTalk 탐색기 개체 모델에서 설정할 수 있는 구성 속성이 나열되어 있습니다.
속성 이름 | Type | Description |
---|---|---|
URI | 문자열 | 배포 서버에 있는 웹 서비스를 포함한 가상 디렉터리입니다. |
AddressableURI | 문자열 | 호출할 수 있는 전체 URL을 포함한 공용 주소 필드입니다. 기본값: 공백 |
UseSSO | 부울 | SOAP 어댑터가 이 수신 위치에 도착한 메시지에 Single Sign-On 티켓을 발급할지 여부를 지정합니다. 기본값: False |
다음 형식을 사용하여 속성을 설정합니다.
receiveLocation.TransportTypeData = "<CustomProps><UseSSO vt=\"11\">-1</UseSSO></CustomProps>";
URI 및 AddressableURI 속성은 수신 위치 개체의 Address 및 PublicAddress 속성을 사용하여 설정됩니다.
다음 코드 조각은 SOAP 수신 위치를 만드는 방법을 보여 줍니다.
// Use BizTalk Explorer object model to create new SOAP receive location.
string server = System.Environment.MachineName;
string database = "BizTalkMgmtDb";
string connectionString = string.Format("Server={0};Database={1};Integrated Security=true", server, database);
//requires project reference to \Program Files\Microsoft BizTalk Server 2009\Developer Tools\Microsoft.BizTalk.ExplorerOM.dll
BtsCatalogExplorer explorer = new Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer();
explorer.ConnectionString = connectionString;
// Add a new Request-Response port
ReceivePort receivePort = explorer.AddNewReceivePort(true);
receivePort.Name = "SampleReceivePort";
receivePort.SendPipeline = explorer.Pipelines["Microsoft.BizTalk.DefaultPipelines.PassThruTransmit"];
// Add primary SOAP receive location
ReceiveLocation receiveLocation = receivePort.AddNewReceiveLocation();
receiveLocation.Name = "SampleReceiveLocation";
receiveLocation.Address = "/PurchaseOrder/POOrchestration.asmx";
receiveLocation.TransportType = explorer.ProtocolTypes["SOAP"];
receiveLocation.TransportTypeData = "<CustomProps><UseSSO vt=\"11\">-1</UseSSO></CustomProps>";
receiveLocation.ReceivePipeline = explorer.Pipelines["Microsoft.BizTalk.DefaultPipelines.PassThruReceive"];
foreach (ReceiveHandler receiveHandler in explorer.ReceiveHandlers)
{
if (receiveHandler.TransportType.Name == receiveLocation.TransportType.Name)
{
receiveLocation.ReceiveHandler = receiveHandler;
}
}
// Save
explorer.SaveChanges();
BizTalk Server 관리 콘솔을 사용하여 SOAP 수신 위치를 구성하는 방법
BizTalk Server 관리 콘솔에서 SOAP 수신 위치 어댑터 변수를 설정할 수 있습니다. 수신 위치에서 속성을 설정하지 않은 경우에는 BizTalk Server 관리 콘솔에 설정된 기본 수신 핸들러 값이 사용됩니다.
참고
다음 절차를 완료하기 전에 수신 포트를 이미 추가한 상태여야 합니다. 자세한 내용은 수신 포트를 만드는 방법을 참조하세요.
SOAP 수신 위치에 대한 변수를 구성하려면
BizTalk Server 관리 콘솔에서 BizTalk Server 관리, BizTalk 그룹, 애플리케이션, 수신 위치를 만들려는 애플리케이션을 차례로 확장합니다.
BizTalk Server 관리 콘솔의 왼쪽 창에서 수신 포트 노드를 클릭합니다. 그런 다음 오른쪽 창에서 기존 수신 위치와 연결되어 있거나 새 수신 위치와 연결하려는 수신 포트를 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.
수신 포트 속성 대화 상자의 왼쪽 창에서 수신 위치를 선택한 다음 오른쪽 창에서 기존 수신 위치를 두 번 클릭하거나 새로만들기를 클릭하여 새 수신 위치를 만듭니다.
수신 위치 속성 대화 상자의 형식 옆의 전송 섹션에서 드롭다운 목록에서 SOAP를 선택한 다음 구성을 클릭합니다.
SOAP 전송 속성 대화 상자에서 다음을 수행합니다.
사용 항목 원하는 작업 가상 디렉터리 및 웹 서비스 .asmx 파일 BizTalk 웹 서비스 게시 마법사로 생성한 .asmx 파일을 나타냅니다.
이 메시지의 형식은 다음과 유사합니다.
/PurchaseOrder/POOrchestration.asmx
.asmx 파일의 전체 위치가 있는 위치 http://localhost/PurchaseOrder/POOrchestration.asmx. 참고: 송신 포트 또는 수신 위치의 URI는 256자를 초과할 수 없습니다.공용 주소 이 수신 위치의 정규화된 URI를 지정합니다. 이 속성 값은 서버 이름과 가상 디렉터리의 조합입니다. 지정한 URI는 BizTalk Server로 메시지를 보낼 때 거래 업체에서 연결할 공용 웹 사이트 URL을 지정해야 합니다.
이 정보는 선택적이며 BizTalk Server에서 사용되지 않습니다. 이 매개 변수는 관리자가 수신 위치에서 연결할 공용 URL을 문서화하는 데 사용할 수 있습니다.Single Sign-On 사용 SOAP 어댑터에서 Enterprise Single Sign-On을 사용할지 여부를 나타냅니다. 참고: BizTalk Web Services 게시 마법사를 사용하면 SharePoint Portal Server Single Sign-On을 사용할 수 있습니다. 이 속성은 Enterprise Single Sign-On만 사용하도록 설정합니다. 확인을 클릭합니다.
수신 위치 속성 대화 상자에서 적절한 값을 입력하여 수신 위치의 구성을 완료한 다음 확인을 클릭하여 설정을 저장합니다. 수신 위치 속성 대화 상자에 대한 자세한 내용은 수신 위치를 만드는 방법을 참조하세요.
SOAP 수신 위치에서 사용되는 보안 설정은 IIS에 설정되어 있습니다. 기본적으로 SOAP 수신 위치는 익명 인증을 사용하도록 설정되지 않습니다.
SOAP 클라이언트가 웹 서비스를 호출하는 동안 SOAP 어댑터는 익명, 기본, 다이제스트 또는 Windows 통합 인증을 사용하여 SOAP 클라이언트를 인증합니다. 사용자가 확인되면 사용자 컨텍스트가 수신 핸들러에 전달됩니다.
참고
SOAP와 HTTP가 동일한 프로세스를 공유하도록 하는 IIS 구성은 잘못되었습니다. 프로세스당 하나의 격리된 수신기만 사용할 수 있습니다.
ASP.NET 4.0을 사용하도록 가상 디렉터리를 업데이트하려면
IIS(인터넷 정보 서비스) 관리자를 시작합니다. 시작을 클릭하고 모든 프로그램을 클릭한 다음 IIS(인터넷 정보 서비스) 관리자를 클릭합니다.
원격 IIS 서버에 연결해야 하는 경우 인터넷 정보 서비스 노드를 마우스 오른쪽 단추로 클릭한 다음 연결을 클릭합니다.
필요한 경우 원격 IIS 서버의 컴퓨터 이름과 및 자격 증명을 입력합니다.
업데이트할 웹 사이트 또는 가상 디렉터리를 포함한 서버 이름을 확장합니다.
사이트를 확장합니다.
기본 웹 사이트를 확장합니다.
기본 웹 사이트를 확장하여 웹 사이트 아래에 가상 디렉터리를 표시합니다.
ASP.NET 4.0을 사용하도록 업데이트하려는 가상 디렉터리를 마우스 오른쪽 단추로 클릭하고 애플리케이션 관리를 클릭한 다음 고급 설정을 클릭합니다. 애플리케이션 풀 필드에는 선택한 가상 디렉터리에 대한 애플리케이션 풀 집합이 표시됩니다. 확인을 클릭합니다.
IIS(인터넷 정보 서비스) 관리자 창에서 애플리케이션 풀을 클릭합니다. 세부 정보 창에는 서버의 애플리케이션 풀 목록이 표시됩니다.
8단계에서 애플리케이션 풀 집합을 마우스 오른쪽 단추로 클릭한 다음 기본 설정을 클릭합니다.
애플리케이션 풀 편집 대화 상자에서 다음을 변경합니다.
.NET Framework 버전을4.0으로
관리형 파이프라인 모드에서 클래식으로
확인을 클릭하여 변경 내용을 적용합니다.