2025/05/23 07:22 What happens after you run Git push?

ロボ子、今日のITニュースはBlacksmithのセキュリティアーキテクチャについてじゃぞ。顧客が製品のセキュリティに懸念を抱くのは当然じゃから、ベンダーの信頼性を確認する必要があるというのは、肝に銘じておくべきことじゃな。

はい、博士。セキュリティは本当に重要ですね。BlacksmithはGitHub SSOを利用して認証をGitHubに委任しているとのことですが、これはどういうことでしょうか?

ふむ、GitHub SSOを使うことで、ユーザーは自分のGitHubアカウントでBlacksmithにログインできるようになるのじゃ。これにより、Blacksmith側でパスワードを管理する必要がなくなり、セキュリティリスクを減らせるというわけじゃな。

なるほど。GitHubインテグレーションは、組織やリポジトリレベルのシークレットに直接アクセスできないように設計されているのですね。必要な権限も最小限に限定されているとのことですが、具体的にはどのような権限が必要なのでしょうか?

Blacksmithに必要な権限は、メンバーとメタデータへの読み取りアクセス、アクション、コード、プルリクエスト、ワークフローへの読み取り/書き込みアクセス、そして組織のセルフホストランナーへの読み取り/書き込みアクセスじゃ。これらは、設定ページでユーザーをリスト表示したり、必要なコード変更を含むプルリクエストを作成したり、マネージドランナーがジョブを実行できるようにするために必要なのじゃ。

コントロールプレーンはAWS上で構築され、メタデータはSupabase経由でPostgresデータベースに保存されているのですね。Postgresデータベースへのアクセスはコントロールプレーンのみに制限されているとのことですが、データの暗号化はどのように行われているのでしょうか?

保存データは暗号化されているぞ。さらに、AWS Identity and Access Management (IAM)ポリシーに従い、最小権限の原則を適用し、TLSによる転送中の暗号化も行っているとのことじゃ。セキュリティ対策は万全じゃな。

データプレーンでは、32 vCPUのベアメタルマシンを使用し、米国とEUのデータセンターに配置しているのですね。Firecracker microVM、GitHub Actions Runner、MinIOブロブストア、Cephストレージクラスタ、Tailscale VPNなどを利用しているとのことですが、これらの技術を組み合わせることで、どのようなセキュリティ効果があるのでしょうか?

Firecracker microVMを使うことで、GitHub Actionsジョブの実行をCPU、ネットワーク、ディスクの3つの軸で分離できるのじゃ。また、Tailscale VPNでネットワークを保護し、ベアメタルマシンへのSSHアクセスを外部から完全にロックダウンすることで、セキュリティをさらに強化しているのじゃ。

キャッシュされたアーティファクトは、MinIOまたはCephクラスタに保存されているのですね。MinIOアーティファクトは組織とリポジトリによって名前空間が区切られ、テナント間の分離を保証しているとのことですが、具体的にはどのように分離しているのでしょうか?

MinIOアーティファクトは、組織とリポジトリごとに異なる名前空間を持つことで、他の組織やリポジトリのデータにアクセスできないようにしているのじゃ。これにより、テナント間のデータ漏洩を防ぐことができるのじゃ。

BlacksmithはSOC 2 Type 2およびGDPRに準拠し、HIPAAに準拠するプロセス中とのことですが、コンプライアンスへの取り組みも徹底しているのですね。

そうじゃな。四半期ごとにハッカーによるペンテストを実施しているというのも、セキュリティに対する真剣な姿勢が伺えるぞ。

本当ですね。ところで博士、Blacksmithのセキュリティアーキテクチャについて、何か面白いジョークはありますか?

うむ、そうじゃな… Blacksmithのセキュリティはまるで、忍者のように巧妙で、玉ねぎのように何層にも守られているのじゃ!…でも、たまに涙が出てくるのは、なんでじゃろうな?
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。