GitHubは、「GitHub Actions」のワークフローを監視し、実行に必要な最小権限を推奨するツール「actions-permissions」のパブリックβ版をリリースした。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
GitHubは2023年6月26日(米国時間)、「GitHub Actions」のワークフローを監視し、実行に必要な最小権限を推奨するツール「actions-permissions」のパブリックβ版をリリースした。
GitHubワークフローは全て、一時的なリポジトリアクセストークン(GITHUB_TOKEN)を受け取る。以前はこれらのトークンは広範な権限セットを持ち、リポジトリに対する完全な読み書きが可能だった(フォークからのプルリクエストを除く)。だが、2021年にワークフロートークンの詳細な権限モデルが導入され、これらのトークンの既定の権限は現在、新しいリポジトリと組織では読み取り専用に設定されている。
だが、かなりの数のワークフローが、実際には書き込み権限が不要であるにもかかわらず、既定のワークフロー権限設定により、依然として書き込みトークンを使用している。
ワークフロートークンで広範な既定の権限を使用しているかどうかをチェックしたい場合は、次のように、リポジトリ(または組織)の設定画面から「actions」(アクション)を選択し、「Workflow permissions」(ワークフロー権限)セクションをチェックする。
この設定を読み取り専用に変更することが、セキュリティ上のベストプラクティスだ。だが、それにより書き込み権限で問題なく動作している既存ワークフローを壊す可能性がある。
最小権限のセキュリティ原則を適用し、ワークフローごとにケース・バイ・ケースで、リポジトリトークンに必要な最小権限を割り当てることも、破壊的変更になりかねない。複雑なワークフローには多くのアクションが含まれることがあり、ワークフローが適切に機能するために必要な権限を見落としやすいからだ。
また、ワークフローはエラー/成功基準に従って、さまざまなステップを実行することがあるため、複雑なワークフロー定義に必要な権限セットを見いだすことも困難だ。
GitHubは、ユーザーがワークフロートークンの最小権限モデルへの移行をよりスムーズに進められるよう、GitHubワークフローに必要な権限セットを監視、列挙するためのGitHub ActionであるMonitorアクションとAdvisorアクションを公開した。
Monitorアクションは、ワークフローランナーにローカルプロキシ(第三者には情報は送信されない)をインストールし、ワークフローによって開始されるGitHub APIインタラクションに関する情報を収集し、以下のように、ワークフロー実行サマリーの一部として、推奨される最小権限を表示する。
Advisorアクションは、ローカルツールとしても使用でき、ワークフローの複数の実行から推奨事項を要約できる。
推奨された権限をワークフローに適用したら、これらのツールを使うのはやめてよい。ワークフローで将来、新たに必要になった権限については、随時追加できる。
Copyright © ITmedia, Inc. All Rights Reserved.