ユーザー ロールを追加する

フォーム テンプレートをデザインする場合は、ユーザー ロールを指定できます。ユーザー ロールとは、役職やその他の条件に基づいて、フォームのユーザーに割り当てることができる定義済みのカテゴリのことです。ユーザー ロールを使用して、さまざまな種類のユーザーにフォームのカスタマイズした表示を表示したり、ビュー内のさまざまなセクションを表示したり、フィールドまたはコントロールの既定値を計算したりすることができます。たとえば、許可申請書フォーム テンプレートをデザインしているとすると、そのフォーム テンプレートで契約社員用、申請書の受領者用、および管理者用に異なるビューを作成し、各ユーザー ロールを別々のビューに割り当てることができます。ユーザーがフォーム テンプレートに基づくフォームを開くと、Microsoft Office InfoPath によってユーザーの名前を基にユーザー ロールが判断され、そのユーザー ロールに基づいた適切なビューが開かれます。

セキュリティに関するお知らせ : フォーム内の機微なデータへのアクセスを制限する目的でユーザー ロールを使用するのは避けてください。フォーム テンプレートを読み取り専用に設定したり、ユーザー ロールに基づく特定のコントロールを非表示にしても、メモ帳などのテキスト編集プログラムを使用してユーザーがフォーム テンプレート (.xsn) ファイルを表示または修正し、そのデータにアクセスできる可能性があります。

このトピックの内容

概要

互換性に関する注意点

コースを始める前に

ユーザー ロールを追加する

ユーザー ロールに基づくビューを表示する

ユーザー ロールをテストする

概要

新しいユーザー ロールを作成するときには、以下の方法でロールにユーザーを割り当てることができます。

  • Microsoft Active Directory ディレクトリ サービスのユーザー名 (たとえば "sales¥andrew") を指定します。Active Directory ディレクトリ サービスのユーザー名を指定するには、Active Directory を使用する Microsoft Windows ネットワークでフォーム テンプレートが作成および発行されている必要があります。

  • Active Directory ディレクトリ サービスのグループを指定します。たとえば、マーケティング チームの全メンバーの名前が含まれる電子メール配布リストを指定します。Active Directory ディレクトリ サービスのグループを指定するには、Active Directory を使用する Microsoft Windows ネットワークでフォーム テンプレートが作成および発行されている必要があります。

  • フォームのフィールドから直接取得される値を指定します。フィールドのデータは、Active Directory から取得される場合と、このフィールドにバインドされているコントロールにユーザーがデータを入力する場合とがあります。たとえば、フォーム テンプレートに [管理者] というテキスト ボックスが含まれている場合、そのテキスト ボックスのバインド先のフィールドに特定のユーザー ロールを関連付けることができます。

追加したユーザー ロールは、次のいずれかに設定できます。

既定のロール     既存のユーザー ロールに割り当てられていないユーザーは、既定のロールとして指定されたユーザー ロールに自動的に割り当てられます。また、既定のロールは、グループに属しているがオフラインで作業中のユーザーにも使われます。1 つのユーザー ロールが、必ず既定として設定されます。

イニシエーター ロール     フォームを最初に開いたユーザーに特定のユーザー ロールを適用する場合は、イニシエーター ロールとして指定します。たとえば、"契約者" というイニシエーター ロールを定義して、新しい許可申請フォームを入力するユーザーに適用できます。別のユーザー ロールに割り当てられたユーザーは、新しい許可申請フォームを開いた時点で、契約者のロールに自動的に再割り当てされます。ただし、同じフォームを次に開いたときには、イニシエーター ロールではなく、その人に割り当てられていたユーザー ロールが使用されます。

ユーザー名、グループ、またはフィールド値の組み合わせに基づいてユーザーにロールを割り当てた場合、フォーム テンプレートに基づくフォームをユーザーが開いたときには、そのユーザーに割り当てるロールは次の順序で判断されます。

  1. ユーザーの名前がフォーム テンプレートのフィールドの値に含まれている。

  2. ユーザーの名前が Active Directory に含まれている。

  3. ユーザーが Active Directory グループのメンバーである。

    注: ユーザーが複数のグループのメンバーで、グループに基づくユーザー ロールを割り当てる場合には、[ユーザー ロールの管理] ダイアログ ボックスでグループが表示されている順序に応じて、各グループのメンバー リストがチェックされます。たとえば、ユーザーが受信エージェント グループと管理者グループの両方のメンバーで、管理者グループの方が受信エージェント グループより先に示されている場合、そのユーザーには管理者グループのユーザー ロールが割り当てられます。

  4. 以上のいずれも当てはまらない場合、既定のロールが使用される。

フォーム テンプレートのユーザー ロールを定義した後で、ユーザーのロールに基づいてビューを自動的に切り替えるルールを設定できます。たとえば、管理者のユーザー ロールを作成した後で、管理者のロールが割り当てられたユーザーがフォームを開いたときに管理者のビューに自動的に切り替える動作規則を作成できます。また、まず動作規則を作成し、動作規則の作成プロセスの中でユーザー ロールを定義することもできます。

ページの先頭へ

互換性に関する注意点

ユーザー ロールは、ブラウザー互換フォーム テンプレートでは作成できません。ユーザー ロールは、フォームが InfoPath で入力されるフォーム テンプレートでのみ作成できます。

ページの先頭へ

コースを始める前に

ユーザー ロールをフォーム テンプレートに追加する前に、以下のものが必要です。

  • 各ユーザー ロールのメンバと共に追加するユーザー ロール一覧。メンバには、Microsoft Active Directory ディレクトリ サービスのユーザー名またはグループを指定することも、フォーム テンプレートのデータ ソースの特定のフィールドにバインドされているコントロールにユーザーによって入力された値を指定することもできます。

  • フォーム テンプレートに基づくフォームを開くユーザーがユーザー ロールのメンバではない場合に、そのユーザーに割り当てる既定のユーザー ロール。

ページの先頭へ

ユーザー ロールを追加する

  1. [ツール] メニューの [ユーザー ロール] をクリックします。

  2. [ユーザー ロールの管理] ダイアログ ボックスで、[追加] をクリックします。

  3. [ロール名] ボックスに、新しいユーザー ロールの名前を入力します。

  4. ユーザーまたはユーザーのグループをロールに割り当てるには、次の操作のいずれか、または複数の操作を行います。

    Active Directory ディレクトリ サービスを使用するネットワークに属しているユーザーを 1 人以上指定します。

    1. [ユーザー名] チェック ボックスをオンにして、 ボタンの画像 (1 人以上のユーザーを選択する) をクリックします。

      注: ドメインおよびユーザー名が既にわかっている場合は、[ユーザー名] ボックスに入力します。ドメイン\ユーザー名の形式で入力してください。ユーザー名が複数ある場合は、セミコロン (;) で区切ります。

    2. [選択するオブジェクト名を入力してください] ボックスに、1 人以上のユーザー名を、セミコロン (;) で区切って入力します。

      注: ユーザー名を書式設定する方法の詳細については、ダイアログ ボックスの [] リンクをクリックします。

    3. 入力したユーザー名を Active Directory の名前と照らして確認するには、[名前の確認] をクリックします。

    4. [OK] をクリックします。

    Active Directory ディレクトリ サービスを使用するネットワークに属しているグループを 1 つ以上指定します。

    1. [グループ名] チェック ボックスをオンにして、 Button image (1 つ以上のグループを選択する) をクリックします。

      注: グループ名が既にわかっている場合は、[グループ名] ボックスに入力します。ドメイン\グループ名の形式で入力してください。グループ名が複数ある場合は、セミコロン (;) で区切ります。

    2. [選択するオブジェクト名を入力してください] ボックスに、1 つ以上のグループ名を、セミコロン (;) で区切って入力します。

      注: グループ名を書式設定する方法の詳細については、ダイアログ ボックスの [] リンクをクリックします。

    3. 入力したグループ名を Active Directory の名前と照らして確認するには、[名前の確認] をクリックします。

    4. [OK] をクリックします。

    フォーム内のフィールドから直接取得したユーザー名を指定します。

    1. [フォームからのユーザー名] チェック ボックスをオンにして、 [データ ソース] ボタン (データ ソース内のフィールドを選択する) をクリックします。

    2. [フィールドまたはグループの選択] ダイアログ ボックスで、ユーザー ロールに必要な値の取得先のフィールドをクリックし、[OK] をクリックします。

  5. ユーザー ロールをイニシエータ ロールとして設定するには、[イニシエータとして設定する] チェック ボックスをオンにし、[OK] をクリックします。

    注: ユーザー ロールがイニシエータとして指定されると、イニシエータ ロールが [ユーザー ロールの管理] ダイアログ ボックスの先頭以外に位置する場合でも、このロールが他のすべてのロール割り当てよりも優先されます。

  6. ユーザー ロールのメンバではないユーザー用に対する既定のユーザー ロールを指定するには、[ユーザー ロールの管理] ダイアログ ボックスのロールを選択して、[既定値として設定] をクリックします。

    注: [既定値として設定] をクリックするためには、複数のユーザー ロールが表示されている必要があります。

ページの先頭へ

ユーザー ロールに基づくビューを表示する

ユーザー ロールを含み複数のビューを持つフォーム テンプレートをデザインする場合、ユーザーに割り当てられたユーザー ロールに応じたビューを表示すると便利です。たとえば、そのフォーム テンプレートに基づくフォームを、特定のユーザー ロールが割り当てられているユーザーが開いたときに、特定のビューが開かれるように動作規則を設定できます。

  1. [ツール] メニューの [フォームのオプション] をクリックします。

  2. [フォームのオプション] ダイアログ ボックスの [カテゴリ] ボックスの一覧で、[開く/保存] をクリックします。

  3. [開くときの動作] の [動作規則] をクリックします。

  4. [追加] をクリックします。

  5. [名前] ボックスで、動作規則の名前を入力します。

  6. [条件の設定] をクリックします。

  7. 最初のボックスで、[ユーザーの現在のロール] をクリックします。

  8. 2 番目のボックスで、[が次の値に等しい] をクリックします。

  9. 3 番目のボックスで、ユーザー ロールの名前をクリックし、[OK] をクリックします。

  10. [動作規則] ダイアログ ボックスで、[動作の追加] をクリックします。

  11. [動作] ボックスの一覧で、[ビューを切り替える] をクリックし、[ビュー] ボックスの一覧のビューをクリックします。

ページの先頭へ

ユーザー ロールをテストする

フォームに複数のユーザー ロールがある場合、各ロールの外観と動作を個別にテストすることをお勧めします。フォーム テンプレートをプレビュー表示して、ユーザー ロールについて予想どおりにビューが動作することは確認できますが、ユーザーをそのユーザーに指定されたロール割り当てに照らして評価するプロセスをシミュレートすることはできません。これは、InfoPath でユーザー ロールが確認されるのは、フォームをプレビュー表示するときではなく、フォームに入力するときであるためです。フォーム テンプレートのユーザー ロールを十分にテストするには、テストする各ユーザー ロールに自分自身を一時的に割り当て、入力する場合と同じようにフォームを開きます。

  1. [ツール] メニューの [フォームのオプション] をクリックします。

  2. [カテゴリ] ボックスの一覧で、[プレビュー] をクリックします。

  3. [ユーザー ロール] の [プレビューのロール] ボックスの一覧で プレビュー表示するロールをクリックし、[OK] をクリックします。

  4. 変更内容をテストするには、[標準] ツールバーの [プレビュー] をクリックするか、Ctrl キーと Shift キーを押しながら B キーを押します。

    現在のユーザー ロールの名前が、プレビュー ウィンドウの右下隅にあるステータス バーに表示されます。

ページの先頭へ

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×