サーバー、サイト、アプリケーション、または仮想ディレクトリの WCF と WF の構成: [ワークフロー永続化] タブ

このタブでは、サーバー、サイト、またはアプリケーション レベルで既定のワークフロー永続化を構成できます。このタブは、[サーバーの WCF と WF の構成]、[サイトの WCF と WF の構成]、[アプリケーションの WCF と WF の構成]、および [ディレクトリの WCF と WF の構成] ダイアログ ボックスに表示されます。構成ダイアログ ボックスは、次のいずれかの方法で開くことができます。

  1. サーバー、サイト、アプリケーション、または仮想ディレクトリを右クリックし、[WCF サービスと WF サービスの管理] をポイントし、[構成] をクリックします。

  2. サーバー、サイト、アプリケーション、または仮想ディレクトリをクリックし、[操作] ウィンドウで [構成] をクリックします。

[SQL Server ワークフロー永続化] オプションを選択し、SQL Server データベースに対するサービス インスタンスの保持を有効にします。SQL Server データベース以外のインスタンス ストアを使用するか、永続化機能をまったく使用しないようにするには、[カスタムまたはなし] オプションを選択します。SQL Server 永続化プロバイダーをサービスに関連付けるときは、プロバイダーを SQL Server 2008 または 2005 永続化データベースに接続するための接続文字列を指定する必要があります。[永続化の詳細設定] ダイアログ ボックス ([詳細] ボタンをクリックして表示) を使用して、インスタンスの完了後にインスタンスを永続化ストアに保持したり、GZip アルゴリズムを使用してインスタンス状態情報をエンコードするなど、詳細な SQL 永続化機能を構成することができます。

ダイアログ ボックスのフィールド

フィールド

説明

カスタムまたはなし

SQL Server データベース以外のインスタンス ストアをサービスに関連付けるか、永続化機能をまったく使用しないようにするには、このオプションを選択します。

SQL Server ワークフロー永続化

インスタンス状態情報を SQL Server 2008 または 2005 永続化データベースに保持できるようにするには、このチェック ボックスをオンにします。このチェック ボックスをオンにした場合は、"SQL Server ストア" フィールドの値を指定する必要があります。

サービスが含まれるアプリケーションで net.pipe プロトコルを有効にしておらず、[カスタムまたはなし] オプションから [SQL Server ワークフロー永続化] オプションに切り替えて、構成ダイアログ ボックスがアプリケーション、仮想ディレクトリ、またはサービス レベル用である場合は、次の警告メッセージがメッセージ ボックスに表示されます。

警告

ワークフロー永続化には、アプリケーションで net.pipe プロトコルが有効になっている必要があります。変更の適用時に net.pipe を有効にしますか?

メッセージ ボックスで [OK] をクリックし、ドロップダウン リストからインスタンス ストアを選択し、[サービスの構成] ダイアログ ボックスで [OK] または [適用] をクリックすると、そのアプリケーションで net.pipe プロトコルが有効になります。net.pipe プロトコルがアプリケーションで有効であることを確認するには、アプリケーション名を右クリックし、[アプリケーションの管理] をポイントし、[詳細設定] をクリックし、net.pipe プロトコルが "有効なプロトコル" フィールドに表示されていることを確認します。

また、前述のシナリオでは、タブの上部に次の警告メッセージが表示されます。

警告

アプリケーションで有効なプロトコルの一覧に net.pipe プロトコルが含まれていないので、ワークフロー永続化は完全には機能しません。

また、サービスで SQL 永続化を有効にした後、アプリケーションで net.pipe プロトコルを無効にし、[サービスの構成] ダイアログ ボックスを開き、[ワークフロー永続化] タブを表示した場合も、この警告メッセージが表示されます。

サービスが含まれる Web サイトで net.pipe バインドを有効にしておらず、[カスタムまたはなし] オプションから [SQL Server ワークフロー永続化] オプションに切り替えて、構成ダイアログ ボックスがサイト レベル用である場合は、タブの上部に次の警告メッセージが表示されます。

警告

この Web サイトでは net.pipe バインドが有効になっていないので、ワークフロー永続化は機能しません。

Web サイトで net.pipe バインドを有効にするには、次の手順を実行します。

  1. サイト名を右クリックし、[バインドの編集] をクリックします。

  2. [サイト バインド] ダイアログ ボックスの [追加] をクリックします。

  3. [サイト バインドの追加] ダイアログ ボックスで、[種類] に [net.pipe] を選択し、[バインド情報] に「*」と入力し、[OK] をクリックします。

  4. [OK] をクリックして、[サイト バインド] ダイアログ ボックスを閉じます。

また、サーバー レベルで次の警告メッセージが常に表示されます。サイト レベルでは、このメッセージは表示されません。ただし、このトピックで前に説明したように、サイトで net.pipe バインドが有効になっていない場合はサイト レベルで警告メッセージが表示されます。

警告

ワークフロー永続化は機能しない可能性があります。永続化を必要とするアプリケーションについて、有効なプロトコルの一覧に net.pipe プロトコルが含まれていること、およびサイトのバインドの一覧に net.pipe バインドが含まれていることを確認してください。

SQL Server ストア

SQL 永続化プロバイダーで使用するインスタンス ストアを選択します。ドロップダウン リストのインスタンス ストアは、選択したレベルでローカルに定義されるか、IIS 構成階層の高いレベル (アプリケーション、サイト、ルート Web.config、または machine.config) から継承されます。構成ファイルで定義されたインスタンス ストアは、SQL 永続化プロバイダーが SQL Server 2008 または 2005 永続化データベースへの接続に使用する接続文字列を参照します。

ヒント

ドロップダウン リストに SQL インスタンス ストアがまったく表示されない場合は、後で SQL インスタンス ストアを作成する必要があります。「永続化ストアの構成」セクションで説明されている手順に従って、SQL インスタンス ストアを作成し、初期化することができます。

詳細

このボタンをクリックして、[永続化の詳細設定] ダイアログ ボックスを開き、永続化に関連する詳細な設定を構成することができます。

永続化ストアの構成

セットアップ ウィザードを正常に実行した直後に AppFabric 構成ウィザードを実行するか、初期インストール後に [スタート] メニューから構成ウィザードを実行することで、永続化ストアを構成することができます。構成ウィザードを使用してインスタンス ストアを構成するには、次の手順に従います。

ヒント

構成ウィザードで実行する手順の多くは、アプリケーション サーバー拡張機能構成コマンドレットを実行することにより、手動でも実行できます。関連項目

  1. [スタート] ボタンをクリックし、[すべてのプログラム]、[AppFabric for Windows Server]、[AppFabric の構成] の順にクリックして、Microsoft AppFabric 1.1 for Windows Server 構成ウィザードを開きます。

  2. [開始する前に] ページで、[次へ] をクリックします。

  3. [カスタマー エクスペリエンス向上プログラム] ページで、[次へ] をクリックします。

  4. [ホスティング サービスの構成] ページで、次の表を使用して永続化ストアを構成し、[次へ] をクリックします。

    コントロール 説明

    永続化構成を設定

    ワークフロー管理サービス アカウントを選択したり、永続化プロバイダーを選択して構成したりするときに選択します。

    AppFabric ワークフロー管理サービス アカウント

    ワークフロー管理サービスの Windows ログオン アカウントが表示されます。既定値は、NT Authority\Local Service です。このテキスト ボックスにサービス アカウントを入力することはできません。サービス アカウントの入力は、[参照] をクリックして表示される [ユーザーの選択] ダイアログ ボックスで行う必要があります。

    ヒント

    ワークフロー管理サービスのセキュリティ識別子 (SID) は管理者グループのメンバーです。このため、WMS は永続化データベースへの管理アクセス権を保持しています。

    変更

    ワークフロー管理サービス アカウントの [参照] ボタンをクリックすると、システム サービスのユーザー資格情報を選択することができます。ビルトイン アカウントを選択するか、カスタム ユーザー名とパスワードを入力することができます。[ユーザーの選択] ダイアログ ボックスで、サービスに使用するアカウントを選択し、[OK] をクリックします。

    永続化プロバイダー

    永続化ストアへのアクセスを許可するプロバイダーを選択します。この一覧には、ローカルの machine.config ファイルに登録されているすべての有効なデータ プロバイダーが表示されます。

    重要

    このリリースでは、選択できる永続化データ プロバイダーは sqlStoreProvider のみです。

    構成

    クリックして、永続化プロバイダーの構成を設定します。

    追加の永続化プロバイダーをインストールする方法

    永続化プロバイダーを [永続化プロバイダー] ドロップダウン ボックスで選択できるプロバイダーのリストに追加できます。このリンクをクリックすると、プロバイダーを追加する方法についてのヘルプが表示されます。

  5. [ホスティング サービスの構成] ページで SQL 永続化プロバイダー (sqlStoreProvider) の [構成] をクリックすると、[Microsoft AppFabric 1.1 for Windows Server 永続化ストア構成] ダイアログ ボックスが表示されます。次の表は、このダイアログ ボックスのコントロールについての説明です。この表を使用して永続化プロバイダーを構成し、[OK] をクリックして [ホスティング サービスの構成] ページに戻ります。ストアが正常に初期化され、登録されたことを確認します。

    コントロール 説明

    永続化ストアをルート web.config に登録する

    オンにすると、構成をルート Web.config ファイルに追加または更新することにより、接続文字列で識別される永続化ストアを登録します。これには、ApplicationServerWorkflowInstanceStoreConnectionString および関連する SQL ストア インスタンスのエントリが含まれます。

    [永続化ストアを初期化する] がオフになっている場合でもこのチェック ボックスをオンにすることができます。データベースが既に作成され、初期化されている場合、またはデータベースが初期化されていなくても参照先になっている場合はこのチェック ボックスをオンにします。

    ヒント

    ホスティング管理ツールがインストールされているが、ホスティング サービス機能がインストールされていない場合、このチェック ボックスは無効です。

    永続化ストアを初期化する

    オンにすると、接続文字列で識別される永続化データベースを初期化します (使用する前に初期化する必要があります)。初期化によりデータベース スキーマが作成され、そのスキーマに基づいて構造が作成されます。データベースが存在しない場合は、データベースが作成され、初期化されます。

    このチェック ボックスをオンにし、[永続化ストアをルート web.config に登録する] をオンにしなかった場合、必要に応じてデータベースが作成され、初期化されますが、このコンピューターから使用することはできません。

    ヒント

    データベースを作成する場合、作成先のサーバーでデータベースを作成する権限を持っている必要があります。

    接続文字列

    永続化イベントの保存に使用するサーバーおよびデータベースを指定する文字列です。

    データベースが存在するコンピューターの名前を "サーバー" フィールドに入力します。

    永続化データ用に作成するデータベースの名前を "データベース" フィールドに入力するか、一覧から既存のデータベースを選択します。

    ヒント

    このリリースでは、SQL 永続化プロバイダーの接続文字列のみを選択できます。既定の名前は ApplicationServerWorkflowInstanceStoreConnectionString です。これを変更することはできません。接続文字列名は、ルート Web.config ファイルに登録されます。このダイアログ ボックスではサーバーおよびデータベースを変更できます。

    セキュリティ構成

    [Windows 認証] または [SQL Server 認証] を選択します。既定では、[Windows 統合セキュリティ] が選択されています。また、既定のビルトイン グループがグループに表示されています。

    Windows 認証の場合、管理者、閲覧者、またはユーザーを変更するには、[参照] をクリックし、標準の [ユーザーまたはグループの選択] ダイアログ ボックスを使用して別の値を入力します。[永続化ストアを初期化する] がオンの場合のみ、管理者、オブザーバー、またはライターの値を変更することができます。

  6. [SQL 永続化ストアの構成] ダイアログ ボックスで [OK] をクリックすると、ワークフロー管理サービス ID が永続化データベース管理者ロールのメンバーであることを確認するように求めるポップアップが表示されます。詳細については、「ホスティングと永続化のセキュリティ保護」を参照してください。

  7. 永続化構成を設定したら、[ホスティング サービスの構成] ページで [次へ] をクリックして [キャッシュ サービスの構成] ページを表示し、このトピックの「キャッシュ サービスの構成」セクションに進みます。

  8. [キャッシュ サービスの構成] ページで、[次へ] をクリックします。

  9. [AppFabric キャッシュ ノードの構成] ページで、[次へ] をクリックします。

  10. [アプリケーションの構成] ページで、[インターネット インフォメーション サービス (IIS) マネージャーの開始] をオフにしてから、[終了] をクリックして構成ウィザードを終了します。

関連する構成

[ワークフロー永続化] タブのフィールドは、sqlWorkflowInstanceStore 要素、および sqlWorkflowInstanceStore 要素の connectionStringName 属性に対応しています。[SQL Server ワークフロー永続化] オプションをオンにした場合、sqlWorkflowInstanceStore 要素は、構成ファイル内のサービスに関連付けられたサービスの <behavior> 要素に追加されます。sqlWorkflowInstanceStore 要素の connectionStringName 属性は、[SQL Server ストア] ドロップダウン リストで選択されたインスタンス ストアの参照先の接続文字列に設定されます。[SQL Server ワークフロー永続化] から [カスタムまたはなし] に設定を変更すると、sqlWorkflowInstanceStore 要素は構成ファイルから削除されます。

次のサンプル構成では、サービス s1 に関連付けられた behavior 要素内に sqlWorkflowInstanceStore 要素があるので、サービス s1 の永続化機能が有効になります。

<behaviors>
    <serviceBehaviors>
        <behavior name="TutorialServiceConfiguration">
            <sqlWorkflowInstanceStore connectionStringName="DefaultSqlWorkflowInstanceStoreConnectionString" hostLockRenewalPeriod="00:00:30" instanceEncodingOption="None" instanceCompletionAction="DeleteAll" instanceLockedExceptionAction="NoRetry" />        </behavior>
   </serviceBehaviors>
</behaviors>

AppFabric をインストールするときに作成するインスタンス ストアは、ルート Web.config ファイルで定義されます。同様に、構成ファイル内にカスタム インスタンス ストア用のエントリを作成することもできます。このタブは "SQL Server ストア" フィールドで選択したインスタンス ストアが参照する接続文字列の名前を取得し、追加した sqlWorkflowInstanceStore 要素でその接続文字列を使用します。

    <microsoft.applicationServer>
        <persistence>
            <instanceStores>
                <add name="defaultSqlPersistenceStore" provider="SqlPersistenceStoreProvider" connectionStringName="DefaultSqlWorkflowInstanceStoreConnectionString" />
            </instanceStores>
        </persistence>
    </microsoft.applicationServer>

このセクションの内容

  1. [永続化の詳細設定] ダイアログ ボックス

  2012-03-05