HackerOne社は、GitLabにビルトインされたセキュリティにより、デプロイ速度を5倍まで高めることに成功
GitLab Ultimateがチームにもたらすメリットについて知りたいですか
ホワイトハッカーの専門知識を活かし、世界で最も信頼されているセキュリティ企業であるHackerOne社が、ツールチェーンを合理化し、セキュリティをシフトレフトするためにGitLabを採用。
HackerOne社はGitLab Ultimateを使用してパイプラインの時間、デプロイ速度、デベロッパーの効率性を改善しました。
ホワイトハッカーの専門知識を活かしたセキュリティプラットフォーム
HackerOne社は、世界中でより安全なインターネットを構築するお手伝いをしています。ホワイトハッカーの専門知識を活かし、最も信頼されるセキュリティプラットフォームであるHackerOne社を利用することで、ユーザーは世界最大のハッカーコミュニティにアクセスできます。このハッカーコミュニティは、脆弱性のトレンドと業界ベンチマークに関する最も包括的なデータベースを活用することで、業種やアタックサーフェスの種類を問わず、組織に潜む実際のセキュリティ上の弱点を特定し、安全に報告することで、サイバーリスクを低減します。
世界中においてあらゆるものがつながり、組織のクラウド移行が進むにつれて、サイバーセキュリティの基準も高くなります。HackerOne社では、ソフトウェアデリバリーライフサイクル(SDLC)におけるリスク軽減に有効なハッカー主導のセキュリティテストを実施し、脆弱性に関するインサイトを取得できます。これにより、セキュリティチームは迅速なアタックサーフェスの管理をスケールできます。
開発プロセスとデプロイプロセスのスピードを追求
グローバルに展開するHackerOne社では、チームが世界各地に分散しているため、各チームが協力し合ってプロジェクト完了までのステップを進めています。多くの場合、オランダにいるデベロッパーがコードに取り組み、北米のデベロッパーがその作業を引き継ぎます。パイプラインの時間が長いと、このようなハンドオフに支障をきたす可能性があります。HackerOne社のインフラストラクチャ主任であるMitch Trale氏は、次のように説明します。「多くの場合、マージリクエストを進められなくなり、本番稼動のチャンスを逃していました。より高速なツールがあれば、もっと早く稼働できていたはずです」
HackerOne社は、コードのバージョン管理と継続的インテグレーションに別々のツールを使っていました。会社の規模が拡大し、エンジニアリングチームが10名から30名に増えていく中、Trale氏は、これらのツールが「著しく制限されていた」と言います。「たとえば、旧システムでは1つのパイプラインを実行するのにかかる時間が非常に長く、頻繁に実行するのは現実的ではありませんでした。「そのため、エンジニアたちはこれらの制限を回避できないか摸索し始めました。こうした予期せぬ事態が下流で発生するようになり、エンジニアが個々で対応しなければなりませんでした」そのため、チームは、HackerOne社の開発規模に合わせて拡張でき、複数のチームにまたがるさまざまなプロジェクトを管理できるツールを必要としていました。
新しいソフトウェアツールをチームが検討する上で特に重視していたのは、開発速度、デプロイ速度、そしてデベロッパーの満足度におけるメリットがあるかどうかでした。「エンジニアが満足できるように、可能な限り最適化に取り組んでいます。より良いツールを使えば、自動化が促進され、生産性と品質の向上につながります」とTrale氏は説明します。開発からデプロイまで、全プロセスを通してデベロッパーの利用体験を向上させるプラットフォームが必要だったのです。
スケーラビリティとデベロッパーの説明責任
2018年後半、HackerOne社は従来のツールにはなかったソース管理、イシュー管理 、CI/CD、セキュリティ、およびコンプライアンスの機能を活用すべくGitLabを導入しました。さまざまな環境に適した多岐にわたるアジャイル機能により、GitLabの採用は、社内全体に大きく広がりました。「HackerOne社はGitLabを全社的に採用し、プロダクトマネージャーやスプリントオーナーにとって役立つ、これまでになかった機能があることにも気づきました。今では、チーム間でさらに先の計画を立てるようになりました」とTrale氏は話します。「当社では、ガントチャートで依存関係をチェックしています。この洗練されたチャートは、当時会社の規模が拡大していたHackerOne社の開発プロセスには欠かせない機能でした」
GitLabによって、チームの拡大に対応できただけでなく、アプリケーション開発プロセスに対する公平なアプローチが促進されました。GitLabの直感的なユーザーインターフェイスによって、HackerOne社におけるユーザー数は増加しました。「テクニカルプロダクトマネージャーは、サイトの本文やフォントの色などの要素に影響を与えるコード変更を行えるようになりました」とTrale氏は話します。「GitLabのビジュアル編集ツールを使えば、誰でも簡単に編集ができますし、マージリクエストを素早く承認して、不可分的にデプロイすることもできます。これは以前は不可能でした」
GitLabのユーザーフレンドリーなインターフェイスにより、デベロッパーやエンジニアはプラットフォーム上で快適に作業できます。オープンソースツールであるGitLabは、現代的でありながら、煩雑性も抑えられています。GitLabは、豊富な機能を備えつつも、エンジニアの専門知識のレベルに関係なく、社内の誰でも使えるように設計されています。「パイプラインの制御を分散化できるようになりました。個々のエンジニアがDevOpsやインフラをそれぞれ担当しており、以前は不可能だった方法でツールを管理できています。これまでのツールは扱いにくく、メンテナンスと管理が大変でした」とTrale氏は話します。
ビルトインのセキュリティでデプロイプロセスを加速
GitLabを使う大きな利点の1つは、パイプラインの早い段階でコードの問題を検出できる点です。さらにパイプラインも高速化できたため、セキュリティ上の欠陥に反復的に対処できるようになりました。以前、エンジニアリングチームは、コミットしてから、テスト、スモークテスト、テスト、デプロイに至るまでの全プロセスをカバーする統合パイプラインの実行に、1回につき少なくとも60分を費やしていました。1件でもエラーが発生すれば、プロセス全体を実行し直す必要がありました。
「エンジニアたちが、コードをプッシュすることを過度にためらうようになってしまいました。私たちの目標は、このサイクルタイムを最小化し、コードリリースに伴うリスクを軽減することです」とTrale氏は説明します。「したがって、コードを改良し、当社の品質基準に沿ってビルトできるようにしてくれたGitLabは、当社にとって戦略的に重要でした」
また、以前はできなかった、パイプラインの特定の箇所の再実行も行えるようになりました。一からやり直すことなく、継続的インテグレーションパイプラインの中の失敗したコンポーネントだけに対処すればよいのです。「スピードが肝心です。今では8分ほどでパイプラインを実行できるようになりました。これは素晴らしい成果です。これだけでも、高速な継続的インテグレーションパイプラインへの移行を検討する上で十分な決め手となりました」とTrale氏は振り返ります。さらに、監査ログの可視性が高まり、バックグラウンドで何が起こっているのかを確認して、パフォーマンス低下の原因について理解できるようになりました。
エンジニアリングチームはGitLabのAPIとセキュリティ機能を使用して、古くなったパッケージをもとにマージリクエストを自動的に生成するボットを作成しました。このボットはリポジトリをスキャンし、必要なアップデートのマージリクエストを作成します。エンジニアは作成されたマージリクエストをレビューして承認するだけで、デプロイできます。こういった自動化により、手作業によるサイクルタイムが短縮され、セキュリティスキャンがスピードアップしました。デプロイするたびに、1時間余計に時間をかけてテストする必要はもうありません。「チームは1日に何度もコードをデプロイしています。今では、少なくとも1日に1回から5回は、HackerOne社の新しいバージョンをウェブにプッシュしています。以前は、1回につきエンジニア1人あたり1時間以上は費やしていました」とTrale氏は述べています。「おそらく作業内容が適切かどうかを確認するために、2人のエンジニアが取り組み、30分ほどの時間を費やしていました。ツールによってこういった作業が統合されたことで、控えめに見積もっても、エンジニア1人あたり毎日4~5時間の労力を節約できています」
GitLabを導入する前は、HackerOne社のデプロイサイクルは1日に1~2回程度でした。しかし、すべてが一か所に集約され、適切にラベル付けされ、効果的に整理されたことで、プロジェクトマネージャーやスプリントマネージャーはタスクを簡単に優先付けできるようになりました。「GitLabはデベロッパーのワークフローに統合されており、おかげで問題を早期に発見できています。
すべてのツールを単一のプラットフォームに統合したことで、以前のワークフローと比べて、セキュリティスキャンと監査のプロセスが簡素化されました。「GitLabでのセキュリティスキャンの実行コストは以前よりも格段に低くなっています。そのため、個々のパッケージでのスキャンや一連のセキュリティテストの実行など、より包括的なスキャンを迅速に実施できるようになりました。これらのプロセスに対する認識が向上し、GitLabをこの目的で積極的に利用しています」とTrale氏は説明します。
また、エンジニアリングチームは、GitLabに統合され、デプロイをトリガーするカスタムSlackボットを開発しました。すべてのデプロイは、HackerOne社の多くのタスクが発生するSlackチャンネルで公開されます。このインテグレーションにより、パイプライン内や監査ログを探さなくても、デプロイ状況をSlack内で確認できるようになりました。デプロイ時に問題が発生した場合、30人のメンバーがリアルタイムでデバッグをサポートできます。デプロイプロセスにおいてSlackをより活用し、GitLabをCI/CDに用いることで、コードへのアクセスとセキュリティ管理をより簡単かつ迅速に行えます。
HackerOne社が移行を決める際の主な要因となったのは、ツールの統合とデプロイ速度の向上でしたが、その後もチームメンバーが感銘を受けているのは、GitLabの活発な開発活動です。GitLabは、顧客からのフィードバックに基づいて、セキュリティのような既存の機能を強化する月次リリースを継続的に行っています。「GitLabとのパートナーシップはますます強化されています。ほかにもいくつかのツールを検討しましたが、いずれもGitLabのような開発力を持ち合わせていませんでした」とTraleは述べています。「その例が月単位のリリースサイクルです。有用な新機能が頻繁にリリースされるのです。 この積極的な開発アプローチに、GitLabの現代的な考え方が反映されています。当社が魅力を感じている部分でもあります」
ケーススタディに記載されている情報や関係者はすべて、発表時点のものです。
お客様成功事例
すべてのストーリーを見るご不明な点がありますか? お気軽にお問い合わせください。
お問い合わせ