Web サービスを発行するには、インターネット インフォメーション サービス (IIS)、BizTalk 分離ホスト、および Windows ユーザーアカウントとグループ アカウントを構成する必要があります。 このセクションでは、IIS で Web サービスを有効にする方法について説明します。 Web サービスの有効化の詳細については、IIS のドキュメントを参照してください。
インターネット インフォメーション サービス
IIS が ASP.NET で構成されている Windows システムに Web サービスを発行できます。 サーバーごとに、すべての Web サービスが ASP.NET ワーカー プロセス内で実行されます。
ASP.NET ワーカー プロセスでは、既定でローカル ASPNET アカウントが使用されます。 IIS は、Web サービス要求の処理にアプリケーション プールを使用します。
BizTalk 分離ホスト
Web サービスを有効にするには、BizTalk Server で少なくとも 1 つの分離ホストを作成する必要があります。 分離ホストは、ISAPI 拡張機能や BizTalk Server で作成または制御されない ASP.NET プロセスなどの外部プロセスを表します。 これらの種類の外部プロセスでは、HTTP/S や SOAP などの特定のアダプターをホストする必要があります。
BizTalk Server 構成マネージャーは、BizTalk が既定の分離ホストとして使用する BizTalkServerIsolatedHost を作成します。 BizTalk 分離ホスト ユーザー グループは、既定でこのホストに関連付けられている Windows グループの名前です。 ホストとホスト インスタンスの詳細については、「 BizTalk ホストとホスト インスタンスの管理」を参照してください。
分離ホスト インスタンスで実行できるアダプターは 1 つだけです。 1 つの分離されたホストを使用して HTTP アダプターと SOAP アダプターの受信ハンドラーを構成する場合は、アダプターごとに 1 つのアプリケーション プールである 2 つのアプリケーション プールを作成する必要があります。
たとえば、次のように 2 つの分離ホストを構成する場合は、次のようになります。
孤立したホスト名 | 受け取り場所 |
---|---|
分離ホスト 1 | HTTP_ReceiveLocation1A HTTP_ReceiveLocation1B SOAP_ReceiveLocation1 注:分離ホスト 1 は、SOAP アダプターと HTTP アダプターの両方の受信ハンドラーに使用されます。 |
分離ホスト 2 | HTTP_ReceiveLocation2 |
次のように、受信場所ごとに 1 つずつ、4 つの仮想ディレクトリを作成できます。
受信場所 | 仮想ディレクトリ |
---|---|
HTTP_ReceiveLocation1A | IIS_Virtual_Directory1A |
HTTP_ReceiveLocation1B | IIS_Virtual_Directory1B |
SOAP_ReceiveLocation1 | IIS_Virtual_Directory1C |
HTTP_ReceiveLocation2 | IIS_Virtual_Directory2 |
次に、次のように、仮想ディレクトリ用に少なくとも 3 つのアプリケーション プールを作成する必要があります。
注
分離されたホストごとに、少なくとも 1 つのアプリケーション プールを作成する必要があります。
仮想ディレクトリ | アプリケーション プール | 説明 |
---|---|---|
IIS_Virtual_Directory1A IIS_Virtual_Directory1B |
AppPool_Host1_HTTP | すべての受信場所に同じ分離ホスト (分離ホスト 1) と同じプロトコルがあるため、個別のアプリケーション プールは必要ありません。 |
IIS_Virtual_Directory1C | AppPool_Host1_SOAP | 受信場所が同じホスト (分離ホスト 1) 内の他の受信場所とは異なるプロトコル (SOAP) を使用するため、別のアプリケーション プールが必要です。 |
IIS_Virtual_Directory2 | AppPool_Host2_HTTP | 分離ホスト 1 とは異なるホストで受信場所が実行されるため、別のアプリケーション プールが必要です。 |
注
アプリケーション プールのユーザー アカウントを、分離されたホストの適切なローカル グループまたはドメイン グループに追加する必要があります。 詳細については、「 BizTalk Server の Windows グループとユーザー アカウント」を参照してください。
注
前の表に従って、分離されたホスト インスタンスと対応するアプリケーション プールの間でユーザー アカウントを照合する必要があります。 分離されたホスト インスタンスとアプリケーション プールのユーザー アカウント間の関係の詳細については、「 サービス アカウントとパスワードを変更する方法」を参照してください。
単一サーバー インストールのデータベース アクセス
BizTalk Server と BizTalk Management データベースが同じサーバー上にある場合は、ASP.NET ワーカー プロセスまたは IIS アプリケーション プールのユーザー コンテキストをローカル ASPNET ユーザー アカウント、または最小限の特権を持つローカルまたはドメイン ユーザー アカウントに設定する必要があります。
複数のサーバー インストールのデータベース アクセス
BizTalk Server と BizTalk Management データベースが異なるサーバー上にある場合は、ASP.NET ワーカー プロセスまたは IIS アプリケーション プールのユーザー コンテキストをドメイン ユーザー アカウントに変更する必要があります。
マルチサーバー展開を実装する場合、分離ホスト Windows グループは、BizTalk データベース サーバーが属するドメイン上に存在する必要があります。
アカウント特権とユーザー権限の最小化
分離ホストを使用して、外部プロセスで実行されるアダプターに、BizTalk Server との対話に必要な最小限のリソースにアクセスできるようにします。 セキュリティで保護されたデプロイの場合は、外部プロセスのユーザー コンテキストに最小限の特権を付与する必要があります。
BizTalk Web Services 発行ウィザードのセキュリティに関する推奨事項
BizTalk Web サービス発行ウィザードによって作成された仮想ディレクトリは、親仮想ディレクトリまたは Web サイトからアクセス制御リスト (ACL) と認証要件を継承します。 親仮想ディレクトリまたは Web サイトで匿名アクセスが許可されている場合、BizTalk Web サービス発行ウィザードは仮想ディレクトリの作成時にその機能を削除します。
Windows のセキュリティに関する注意事項と推奨事項を次に示します。