米GitHubは、GitHub Actionsを用いたセキュリティとコンプライアンスタスクの自動化について、10月22日(現地時間)付の公式ブログにて紹介している。
GitHub Actionsを使用することで、誰がどのリソースにアクセスできるかを示す証拠の提供を自動化することが可能であり、org-audit-actionには、企業内のすべての組織における、すべてのリポジトリに対して、
- どのユーザーがアクセスできるか
- それらのユーザーが持っている権限
- ユーザーログイン、フルネーム、および(オプション)ユーザーのSAML ID
といった情報を、.csvファイルと.jsonファイルに出力できる。
GitHubは、Dependabotアラートによってリポジトリの所有者にオープンソースの依存関係の脆弱性を通知し、プルリクエストを自動的に開いて更新するほか、依存関係グラフはオープンソースパッケージのライセンス情報が含まれている。さらに、GitHubコードスキャンは安全でないコードを記述したとき、ユーザーに警告を発する。
ghascomplianceによって、Dependabotアラート、ライセンスコンプライアンス、およびコードスキャンのセキュリティポリシーを設定することが可能で、ポリシーはDependabot、シークレットスキャン、コードスキャンのアラート、オープンソースソフトウェアライセンスの使用について体系化できるので、各アラートのリスクしきい値を定義し、各アラートの重大度を修正する時間の定義が可能となっている。
また、GitHub Actionsは、本番環境にデプロイされたすべての変更に対して必要とされる、エンドツーエンドのトレーサビリティを短命で範囲の狭い機能分岐ワークフローによって実現しており、create-issue-branchアクションがGitHubのイシューから要件ごとのブランチを作成するために使用できる。
プルリクエストは、開発ワークフローにおけるイシュー、コードレビュー、CI/CDなどにリンクする構成要素であり、すべての変更を要件にリンクする必要がある場合は、すべてのプルリクエストにリンクされたイシューが必要になる。pull_requestイベントで実行するように構成されている場合、verify-linked-issueアクションによってプルリクエストがイシューにリンクされていない限り失敗するチェックが作成されるとともに、ブランチ保護ルールで必須チェックとして設定すると、チェックが強制され、イシューにリンクされていないプルリクエストのマージが禁止される。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です