パッケージのアクセス制御のカスタマイズ
目的
あらゆるコンテキストでパッケージに関連するデフォルトの役割、ドメイン構造、またはアクセス制御ポリシー規則をカスタマイズする場合に使用します。
バックグラウンド
コンテキスト内でパッケージを使用する前に、あらかじめそのコンテキストに対してパッケージを有効にしておく必要があります。有るコンテキストでパッケージを有効にすると、サイト単位のパッケージテンプレート XML ファイルがロードされます。パッケージテンプレートファイルには、コンテナチーム、パッケージのデフォルトドメイン構造、およびパッケージ関連のポリシーに適用されるパッケージ固有の役割が含まれます。
デフォルトのドメイン構造は現在のコンテキストに固有のパッケージドメインを作成します。コンテキスト内で作成されたすべてのパッケージとパッケージ内で作成されたすべてのオブジェクト (コレクション、フォルダ、ドキュメント、リンク、送信) が、デフォルトでこのパッケージドメインを使用します。デフォルトのパッケージドメインは、Private です。つまり、コンテナのデフォルトのドメインからポリシーを継承しません。
範囲/適用可能性/前提条件
このガイドでは、あらゆるコンテキストでパッケージに関連するデフォルトの役割、ドメイン構造、またはアクセス制御ポリシー規則をカスタマイズすることを目的としています。パッケージとチームの管理、Windchill ビジネスオブジェクトのアクセス制御の管理について理解していることを前提とします。
予測される結果
あらゆるコンテキストでパッケージに関連するデフォルトの役割、ドメイン構造、またはアクセス制御ポリシー規則をカスタマイズします。
ソリューション
パッケージテンプレート XML ファイルを使用して、あらゆるコンテキストでパッケージに関連するデフォルトの役割、ドメイン構造、およびアクセス制御ポリシー規則をカスタマイズします。
前提となる知識
この目的を達成するには、次のことを理解している必要があります。
• パッケージの管理
• テンプレート用ビジネス XML ファイルの作成
• Windchill チームの概念
• ドメインとポリシーの管理
• アクセス制御
ソリューションエレメント
エレメント
|
タイプ
|
説明
|
packageTemplate.xml
|
XML
|
パッケージに関連する役割、ドメイン構造、およびポリシーを含む XML ファイル。このファイルはそのコンテキストのパッケージを有効にしたときにロードされます。
ランタイム場所: <Windchill>/loadXMLFiles
|
packageSharedTeamTemplate
|
XML
|
共有チーム役割を含む XML ファイル。このファイルは、拡張されていない共有チームを使用するコンテキストのパッケージを有効にしたときに、packageTemplate.xml ファイルとともにロードされます。
ランタイム場所: <Windchill>/loadXMLFiles
|
手順 - ドメイン構造の修正
packageTemplate.xml ファイルは、役割、ドメイン構造、およびアクセス制御ポリシー規則のカスタマイズをサポートします。
役割の修正方法については、各コンテキストの
コンテキストテンプレート用ビジネス XML ファイルの作成に記載されている
projectMember エレメントを参照してください。ドメイン構造の修正方法については、DomainStructure エレメントのセクションを参照してください。アクセス制御ポリシー規則の修正方法については、共通 AccessControlRule エレメントのセクションを参照してください。
packageTemplate.xml ファイルでドメイン構造を修正した場合は、パッケージのサイトレベルプリファレンスのデフォルトのドメインパスを更新する必要があります。これは、両方のドメインパスを一致させる必要があるためです。プリファレンスで指定されたドメインの有無は、対象となるコンテキストでパッケージが有効になっているかどうかの判断に使用されます。また、パッケージの作成時に関連付けられたデフォルトのドメインの判断にも使用されます。
制限事項
packageTemplate.xml はサイト全体に適用されます。つまり、特定のコンテキストや特定のパッケージについてカスタマイズすることはできません。
デフォルトのドメインパスを変更する場合は、再度パッケージの有効化が必要な場合があります。コンテキストにすでにドメインが存在する場合は、再度パッケージの有効化を求める画面は表示されません。
拡張されていない共有チームをコンテキストが使用している場合は、packagedSharedTeamTemplate.xml の役割が使用され、packageTeam.xml の役割は無視されます。
サンプルコード
Windchill コードでの使用例
ファイル名: <Windchill>/loadXMLfiles/packageTemplate.xml
パッケージチーム役割:
<projectMember>
<Role roleType="PACKAGE MANAGER"/>
</projectMember>
パッケージドメイン構造:
<OrgStructure>
<DomainStructure>
<domainLevel>
<parentDomain>private</parentDomain>
<domainName>package</domainName>
<description>The default domain for packages.</description>
</domainLevel>
</DomainStructure>
</OrgStructure>
パッケージアクセス制御ポリシー規則:
<AccessControlRule>
<domainName>package</domainName>
<externalTypeId>WCTYPE|wt.fc.WTObject</externalTypeId>
<lifecycleState>ALL</lifecycleState>
<WTPrincipleReference isInternal="true">
<groupName>PACKAGE MANAGER<groupName>
<groupType>ALL</groudType>
</WTPrincipleReference>
<grantPermissionSet>
<AccessPermissionSet>
<permissionField name="ALL"/>
</AccessPermissionSet>
</grantPermissionSet>
</AccessControlRule>
その他のリソース
その他の関連 Windchill ドキュメント