GitLabは、Ultimateプランにカスタマイズ可能なロールを追加し、現在のゲストロールを基にロールを定義できるようになった。今回の変更によりUltimateユーザーはゲストロールに1つの権限を追加できるようになり、ユーザーがコードを表示できる機能を付与されたロールは"ゲスト+1"と呼ばれる。
GitLab のシニアプロダクトマネージャーである Hannah Sutor氏 は、ブログ記事 で今回のリリースに至るまでの経緯を説明した。Sutor氏によると、GitLabに付属している6つの事前定義されたロールは、ユーザーの要求を満たせていなかった。あるロールは緩すぎる一方、他のロールはタスクを実行するための権限が不足して居る、といった具合である。GitLab Ultimateプランには無料のゲストユーザーが含まれていたが、プライベートリポジトリへの十分なアクセスがないため、ユーザーからのフィードバックから権限機能のアップデートが必要であることが示唆されていた。
GitLabのプロダクト原則である最小限の実行可能変更(MVC)に従い、チームは、GitLabのUltimateライセンスを持つユーザーが、"ゲスト"ロールにもう1つの権限を追加するオプションを持つべきだと結論づけた。それはコードを表示する機能である。"Guest+1"カスタムロールと呼ばれるこのロールは、GitLab.comやオンプレミスのGitLabでもユーザーに割り当てることができる。
グループにカスタムロールを設定するには、オーナーユーザーがグループまたはそのサブグループに少なくとも1つのプライベートプロジェクトが存在することが条件である。これにより、ゲストにカスタムロールを与えることによる影響を確認できる。次にAPI使用権限を持つパーソナルアクセストークンを作成し、API経由でグループに"Guest+1"ロールを作成する。
"Guest +1"カスタムロールは、APIを使用して作成される。"Guest - Custom"という名前のロールが画面に表示され、コードの閲覧権限を持つユーザーグループに割り当てることができる。
出典: The feature you wanted - Expanded Guest capabilities in GitLab Ultimate
その他のニュースとして、GitLabはSASTの検出と解決を強化したバージョン15をリリースした。事前定義されたルールが無効化されていたり、デフォルトのルールセットからルールが削除されている場合、SASTはSemgrepおよびKICSによって検出された脆弱性を 自動的に解決するようになった。
GitLabは最近AI支援によるコード提案についても議論している。これによりコードの構文、組織、使用方法が向上し、エラーが減少し、効率が向上することができる。提案される内容はコードの最適化を目指し開発者がより短時間で良いコードを書くのに役立つとのことだ。
Sutor氏は、GitLabでのカスタマイズ可能なロール機能についてコメントし、ユーザーが既存の権限表を参照に、個々の権限を簡単にオンまたはオフにしてカスタムロールを作成できるようになると述べた。実用面や性能面を評価した後、チームはいくつかの権限の統合を予定している。
興味を持った読者は、デモを観て、GitLab Ultimateプランでゲストユーザーを設定する方法を確認してみてほしい。