組織での表示
表示は、アクセス制御の 1 つの形式です。エンティティが組織単位のメンバーに対して表示される場合、これらのメンバーにはそのエンティティに対する読み取りアクセス権限があります。基礎になる詳細なセキュリティモデルによって、その組織単位のメンバーであるユーザーが特定の資産に対して行うことができる具体的な相互作用が決まります。システムのユーザーに表示が付与されていない場合、その資産はそのユーザーのドメイン内に存在しません。そのユーザーは資産を見ることも、資産のリストを表示することも、その資産のネームスペースを照会することもできません。
ThingWorx では、表示規則を定義して、特定の Thing を単一の組織のみが表示できるようにしたり、複数の組織が同じ資産を表示できるようにしたりできます。組織は組織単位で構成されます。
デフォルト表示
デフォルトでは、管理者以外のユーザーには、自分が作成したエンティティの表示権限のみが付与されます。
表示権限の付与
管理者以外のユーザーにエンティティの表示権限を付与するには、そのユーザーを格納する組織または組織単位を作成します。組織を作成した後、組織または組織単位に表示アクセス許可を付与する必要があります。
これは、以下のレベルで実行できます。
• コレクションレベル (コレクションのすべてのメンバーに表示設定が適用される)。
• 個々のエンティティのレベル (例: VM101 自動販売機)。
• インスタンスレベル (Thing Template にのみ適用)。インスタンスの表示設定は、その Thing Template から派生した Thing に対しては元の状態のままになります。
ユーザーインタフェースまたは REST API サービスを使用して、表示を追加できます (次のセクションで説明するように、ThingPackages コレクションは例外となります)。
組織階層の下位レベルで資産の表示権限が付与されると、上位レベルにも自動的に付与されます。たとえば、ラインオペレータに自分のラインに対する表示権限が付与されている場合、組織階層内のすべてのラインに対する監督には、下位のオペレータに付与された資産への表示権限が自動的に付与されます。
ロールアップモデルには例外が 1 つあります。これは、組織全体に資産の表示権限を割り当てる場合です。組織全体が追加されると、組織とそのすべてのサブユニットに、そのエンティティの表示権限が割り当てられます。
組織単位への表示権限の付与
次の例では、組織単位とユーザーが関連付けられている組織が新規作成されます。その後、表示権限が組織単位に適用されます。
1. 新規組織を作成します。この例では、J W Power Company Fleet という名前を付けます。「保存」をクリックします。
2. 「組織」ビューをクリックします。デフォルトのルートレベル名は「Unit 1」です。組織単位以外にユーザーを追加できないので、この単位にユーザーを追加します。
3. 「Unit 1」を名前変更します。この例では、RootLevelDefault という名前を付けます。
4. RootLevelDefault の子組織単位を作成します。この例では、SubLevel という名前を付けます。
5. RootLevelDefault に表示権限を割り当てます。
| この例の組織名 J W Power Company Fleet に表示権限を割り当てると、組織全体に表示アクセス許可が付与されます (コレクションレベルのアクセス許可と同様)。下の図は、両方のオプションを示しています。1 行目は、組織全体に表示アクセス許可があることを示しています。2 行目は、組織単位に表示アクセス許可があることを示しています。 |
ThingPackages コレクションの表示権限の付与
ThingPackages コレクションの表示権限は、REST API を使用してのみ付与できます。ユーザーインタフェースオプションはありません。
CollectionFunctions リソースからの AddCollectionVisibilityPermissions サービスを使用します。入力パラメータは、表示権限を付与する対象のプリンシパルを指定します。
たとえば、Everyone 組織に表示権限を付与するには、入力パラメータ principal = Everyone、principalType = Organization、および collectionName = ThingPackages を使用します。
デフォルトでは、管理者ユーザーだけが、データベース Thing Template を実装する Thing に SQL クエリーサービスおよび SQL コマンドサービスを作成できます。非管理者ユーザーがこの機能を実行できるようにするには、ThingPackages コレクションに対する追加のアクセス許可を付与しなければなりません。これらのアクセス許可を付与するには、以下の手順に従います。
1. Composer で、「システム」 > 「リソース」に移動します。
2. CollectionFunctions リソースを選択します。
3. 「サービス」を選択します。
4. AddCollectionRunTimePermission サービスを選択します。
5. 以下のパラメータを指定してこのサービスを実行します。
▪ collectionName - ThingPackages
▪ type - ServiceInvoke
▪ resource - * または特定のリソース
▪ principal - User または Group の名前
▪ principalType - User または Group
▪ Allow - True
資産の表示の設定
組織を設定する前に、ユーザーおよびグループを定義する必要があります。
1. エクスプローラで、Thing またはエンティティを開きます。
2. 「アクセス許可」をクリックします。
3. 「表示」で、適切な組織を選択します。
4. 「保存」をクリックします。
| 組織から組織単位を削除するには、単位の横にある削除アイコン をクリックします。 表示権限を削除するには、組織を選択し、チェックボックスをオンにして、「除去」をクリックします。 ランタイムとデザインタイムのアクセス許可セットはページの上部でもアクセス可能で、そこでは表示アクセス許可を制御します。 |
インスタンスの表示の設定
インスタンスの表示は Thing テンプレートにのみ適用され、このレベルで設定された表示は、その Thing Template を使用するエンティティによって継承されます。
1. エクスプローラで、「Thing Template」セクションを開きます。
2. 目的のテンプレートを検索して選択します。
3. メニューバーの「アクセス許可」をクリックします。
4. 「表示」で、「組織をサーチ」をクリックします。
5. マジックピッカーをクリックし、適切な組織を選択します。
6. 「保存」をクリックします。