GitHub Universe 2020 Enterprise関連

Takafumi Ikeda
Momentum Flow Blog
Published in
Dec 11, 2020

GitHub Universeが今年も開かれました。3日間のセッションの中で特にEnterpriseに関連するものを簡単にサマリしておきます。

GitHubにはGitHub Enterpriseというラインがあることは知っている人も多いと思いますが、このラインがGitHub Enterprise CloudとGitHub Enterprise Serverの2つを合わせた呼称だということは以外と知らない人もいるのではないでしょうか。

昔はGitHub Enterpriseというとイコール、自社内にインストールできるGitHubのパッケージ版を意味していたのですが、3年ほど前から、SaaSのGitHub.comにもEnterpriseプランが登場し、パッケージ版、SaaS版を総合してGitHub Enterpriseというラインが登場しています。

パッケージ版の方をGitHub Enterprise Server, SaaS版の方をGitHub Enterprise Cloudといいます。GitHub Enterpriseを購入すると、この両方が同時に、しかも統合して使えます。統合機能をGitHub Connectといいますが、今回は詳細割愛します。いずれ記事にするかも知れません。今すぐご興味ある方は弊社Twitterにお問い合わせください。

それでは、GitHub UniverseでのEnterprise関連のトピックを簡単に振り返ってみましょう。

記事中の画像はすべてUniverseからのキャプチャです。

GitHub Enterprise Server のトピック

メジャーバージョンアップ:3.0

GitHub Enterprise Server (以下GHES)のバージョンが上がり、3.0となりました。今までの最新版は2.22.xでしたので、しばらくぶりのメジャーバージョンアップとなります。多分8年ぶりくらいじゃないでしょうか。

3.0の特徴的なフィーチャーは下記になります。

Actions, Packages が GA

2.22においてベータ扱いだった両者がGAになりました。これまではGitHub.comで動かすしかなかったのですが(Self-hosted runnerもありましたが、あくまでGitHub.comからコントロールするのみでした)、これで、完全に社内ネットワーク上でGitHub Actions, Packagesを動かすことができるようになります。

Actionsに対してはGHES内で統一したポリシー適用も可能に。OrgごとにEnableを切り替えたり、ビルド済みアーティファクトやログの保存期間も設定できるようです。

Advanced Security が追加される

Advanced Securityとは、GHESの文脈で言うとCode ScanningとSecret Scanningのことです。なお、GitHub Enterprise Cloudですとさらに機能があります。

この機能はGitHub Enterpriseを買えばついてくるのか、追加オプションなのかはまだ不明のようです。

Code Scanning

CodeQLをつかってソースコード解析を行い、脆弱性を素早く検知する仕組みです。Pull Requestと連携し、コードレビューと並行して脆弱性検知が可能になります。かなり便利な機能だと思います。

Secret Scanning Beta

これはGitHub.comだと従来からあった機能で、GitHubやAWS, Azure等々のトークンがリポジトリ上に格納されてしまっていないかを検知する仕組みです。これがGHESにもベータ扱いですが、搭載された形になります。

GitHub for Mobile 対応

地味にうれしいのがこれで、GitHubのモバイルアプリがGHESにも対応しました。ついに、という感じですね。

GitHub Enterprise Cloud のトピック

続いてGitHub Enterprise Cloud(以下GHEC)のトピックです。これは従来のGitHub.comを使っていてクレカを使ってEnterpriseプランにしている人、およびGitHub Enterpriseとして統合プランを営業から購入している人が対象の機能になります。

Dependency Review

Pull Requstの中で、依存関係ツリーに直接/間接に存在する脆弱性を洗い出し、レポートする機能が追加されました。従来から、Security AlertがGitHubから飛んでいたと思いますが、あれをさらにPull Request上で見られるもののようです。

依存関係管理のマニフェストを読み取って、推移的に依存関係をたどって、直接依存、間接依存、両方に存在する脆弱性を洗い出してくれるのでこれも非常に強力です。下記スクリーンショットもご覧ください。

Verified Domain (beta)

従来から、Orgレベルでドメインを使って認証済みマークをつけられる機能がありましたが、今回、Enterprise Accountレベル(=複数Orgをまたぐアカウントレベル)で複数のドメインを認証させることができ、メール通知をそのドメインに絞ることができるようになります。

これも今後非常に強力になる機能と思われます。

尚、Enterprise Accountという名称に聞き覚えのない方も多いと思いますが、これは企業としてGitHub Enterpriseを契約していると使えるもので、複数のOrganizationをまとめて管理できるようになります。複数のOrganizationをバラバラに契約している企業さんは、これを導入しないのは非常にもったいないことを覚えておいてください。

監査ログにGitのログが出る

これは非常に大きい機能追加です。待ち望まれていた機能だと思います。従来、GHESはともかく、マルチテナントであるGHECはGitのオペレーションログを取得することができませんでした。これは企業利用上はコンプライアンス的な観点で非常に問題があったのですが、これにてその問題も解消されるでしょう。

この機能追加にて、Privateリポジトリに対するGit fetchのログを監視することも可能になるわけで、知財管理的な観点で有用です。

APIで引くこともできるようです。

この機能と、従来からあるIP制限(下記スクリーンショット参照)を組み合わせることで、GHECの企業利用がかなりしやすくなるのではないでしょうか。

さて、以上、非常に簡単ではありますが、企業利用の観点から見たGitHub Enterpriseの主要アップデート内容について振り返ってみました。

ご相談承ります

弊社モメンタムフローはGitHubコンサルティング/DevOpsコンサルティングを提供しています。

GitHub Enterpriseに関するあらゆるご相談を承っています

お気軽にお問い合わせください!

info@momentum-flow.com

https://twitter.com/MomentumFlow

--

--

Takafumi Ikeda
Momentum Flow Blog

ソフトウェアエンジニア。GitHub Enterpriseに詳しい。英語とソフトウェアとビジネス的なにかの間で生きています。