この機能によって、KB の管理者 (KBAdmin ロールまたは Admin ロールのユーザー) が、KB の一部のバージョンへのコミットを制限することができます。バージョンでこの機能が有効になっている場合、特定のユーザー (KnowledgeBase CommitToProtectedVersions 権限のあるユーザー) のみが変更をコミットできます。
GXserver Web 内にあるナレッジベースのバージョンツリー内の 1 つのプロパティを設定し、ユーザーロールを設定することで、CommitToProtectedVersions を有効化できます。
簡単な例を使用して、この機能の仕組みを説明します。
1.GXserver に次のようなナレッジベースがあります。
2.「Upgrades 2 for Version 1」には、特定のユーザーのみがコミットできる必要があります。
そのためには、これらのバージョンのいずれかのバージョンツリー上でクリックし、バージョンを保護オプションを選択します。
3.バージョンを保護を有効化したら、権限を持つロールを設定します。
注:既定では、Admin および KBAdmin ロールは既に権限を持っています。既定では、KBUser、Guest および Unkown ロールには権限がありません。
権限を変更するには、 [ バージョンを保護 ] を有効にしたバージョンをアクティブに設定し、 [ セキュリティ ] タブへ移動して権限を変更します。
注: [ バージョンを保護 ] を無効にするには、バージョンのコンテクストメニューから [ バージョンの保護を解除 ] オプションを選択します。
これで、CommitToProtectedVersions の権限を持つように対応付けられたロールのユーザーのみが、そのナレッジベースのバージョンにコミットできます。
コミットしたユーザーがそのロールに対応付けられた権限を持っていない場合は、次のようなメッセージが表示されます。
========== Commit started ==========
Contacting GeneXus Server at 'http://localhost/gxservertilo'... done!
Exporting Web Panel 'WPV1'...
Compressing output file...
Export File Created At: 'C:\Users\rleira\AppData\Local\Temp\tmpFFD7.xpz'
GeneXus Server: Commit to version Upgrades for Version 1 of KB 'KBDemo' sent by GXTechnical\rodrigol
GeneXus Server: Comments:Comment
GeneXus Server: Checking security permissions
error:GeneXus Server: srv016:You are not authorized to perform this action (KnowledgeBase.Protected Version) on 'KBDemo'
Commit Failed
使用可能バージョン
GeneXus Server X Evolution 1 Upgrade 8 以降
注: GeneXus Server X Evolution 2 Upgrade 4 以降のバージョンから "コミットの制限" という名称が "バージョンを保護" に変更されました。次の表は名称変更前と変更後を示しています:
GeneXus Server X Evolution 1 Upgrade 8 以降 |
Genexus Server X Evolution 2 Upgrade 4 以降 |
コミットの制限 |
バージョンを保護 |
コミットの制限を有効にする |
バージョンを保護 |
コミットの制限を無効にする |
バージョンの保護を解除 |
RestrictedCommits (permission) |
CommitToProtectedVersions |
|