概要

Helix Coreバージョン2020.1よりストリーム仕様専用の権限管理ができるようになりました。
これにより、意図しないユーザによるストリーム仕様の編集を防ぐことができます。

ここでは、既存権限との違いについて説明します。

詳細

Helix Coreバージョン2020.1より前のバージョンでは、ストリーム仕様専用の権限は存在せず、ストリーム仕様の一覧表示権限・読み取り権限・編集権限は、対応するファイル仕様プロテクションモードをもとに、以下のように認識されていました。

・list権限(特定のディポに対する権限)の場合、"p4 streams"を実行して、そのディポ内のストリームを
 一覧表示することができる

・open権限またはwrite権限の場合(特定のファイル仕様に対する権限)、そのファイル仕様に一致する
 ストリームルートを持つ、任意のストリーム仕様を編集して保存することができる

Helix Coreバージョン2020.1では、ストリーム仕様専用のプロテクションモードが導入されました。

デフォルト設定では、新しいストリーム専用の権限を使用することができません。
使用するには、構成可能変数"dm.protects.streamspec"の値を"1"に設定する必要があります。

プロテクションテーブル内にストリーム仕様の権限が含まれている状態で、"dm.protects.streamspec"構成可能変数の値を"1"に設定した場合、リリース2020.1より前の権限は適用されなくなります。
また、adminユーザとsuperユーザを除くすべてのユーザについて、ストリーム仕様の権限を明示的に指定する必要があります。


新しく準備されたストリーム仕様専用の権限は以下のとおりです。

readstreamspecこの権限を持つユーザは、"p4 stream -o"コマンドを使用してストリーム仕様を表示することができます
=readstreamspecこの権限が拒否されているユーザは、"p4 stream -o"コマンドを実行することはできません
openstreamspecこの権限を持つユーザは、ストリーム仕様について、元に戻す・衝突を解決する・保留する・編集用に開く、という操作を実行することができます
=openstreamspecこの権限が拒否されているユーザは、ストリーム仕様について、元に戻す・衝突を解決する・保留する・編集用に開く、という操作を実行することはできません
writestreamspecこの権限を持つユーザは、ストリーム仕様のサブミットと変更を行うことができます
=writestreamspecこの権限が拒否されている場合ユーザは、ストリーム仕様のサブミットや変更を行うことはできません

上記権限を使用したストリーム仕様専用の権限設定例は以下のとおりです。

readstreamspec group readgroup * //...
writestreamspec group writegroup * //...

※ readgroupには、"readstreamspec"権限が付与され、このグループのユーザはストリーム仕様を
  参照できます。しかし、編集することはできません。

※writegroupには、"writestreamspec"権限が付与され、このグループのユーザはストリーム仕様を
 編集/サブミットすることができます。