ゼロトラストネットワーク ―境界防御の限界を超えるためのセキュアなシステム設計

Book description

ゼロトラストネットワークとは、ファイアウォールやVPNに代表される従来型のセキュリティ(境界防御モデル)が通用しなくなった現状を踏まえ、すべてのトラフィックを信頼しないことを前提とし、検証することで脅威を防ぐというアプローチです。本書は、ゼロトラストネットワークの概念と実装するために必要な知識が学べる解説書です。基本的な概念の説明に始まり、デバイス、ユーザー、アプリケーション、トラフィックの信頼を実際にどのように確立していくかについて、詳しく紐解いていきます。また、Googleのゼロトラストモデル「BeyondCorp」を含む2つの詳細なケーススタディも収録しており、実装に役立つ知識を深めることができます。

Table of contents

  1. はじめに (1/2)
  2. はじめに (2/2)
  3. 目 次 (1/2)
  4. 目 次 (2/2)
  5. 1章 ゼロトラストの基礎
    1. 1.1 ゼロトラストネットワークとは何か
      1. 1.1.1 ゼロトラストコントロールプレーン
    2. 1.2 境界モデルの進化
      1. 1.2.1 グローバルIPアドレス空間の管理
      2. 1.2.2 プライベートIPアドレス空間の誕生
      3. 1.2.3 プライベートネットワークからパブリックネットワークへの接続
      4. 1.2.4 NATの誕生
      5. 1.2.5 現代の境界モデル
    3. 1.3 潜在的な脅威の進化
    4. 1.4 境界モデルの弱点
    5. 1.5 信用の在りか
    6. 1.6 成功要因としての自動化
    7. 1.7 境界とゼロトラスト
    8. 1.8 クラウドへの適用
    9. 1.9 まとめ
  6. 2章 信頼と信用の管理
    1. 2.1 脅威モデル
      1. 2.1.1 一般的な脅威モデル
      2. 2.1.2 ゼロトラストの脅威モデル
    2. 2.2 強力な認証
    3. 2.3 公開鍵基盤
      1. 2.3.1 認証局とは何か
      2. 2.3.2 ゼロトラストにおけるPKIの重要性
      3. 2.3.3 プライベートPKIとパブリックPKI
      4. 2.3.4 パブリックPKI:ないよりは断然まし
    4. 2.4 最小権限
    5. 2.5 変化する信頼と信用
    6. 2.6 コントロールプレーンとデータプレーン
    7. 2.7 まとめ
  7. 3章 ネットワークエージェント
    1. 3.1 エージェントとは何か
      1. 3.1.1 揮発的なエージェント
      2. 3.1.2 エージェントには何が含まれているか
    2. 3.2 エージェントはどのように使用するか
      1. 3.2.1 認証には使用されない
    3. 3.3 エージェントにはどのようにアクセスするか
    4. 3.4 標準は存在しない
      1. 3.4.1 厳格さと流動性の両立
      2. 3.4.2 望まれる標準化
      3. 3.4.3 標準化されるまではどうするか
    5. 3.5 まとめ
  8. 4章 認可の判断
    1. 4.1 認可アーキテクチャ
    2. 4.2 エンフォーサ
    3. 4.3 ポリシーエンジン
      1. 4.3.1 ポリシーストレージ
      2. 4.3.2 よいポリシーの特徴
      3. 4.3.3 ポリシーを定義するのは誰か
    4. 4.4 トラストエンジン
      1. 4.4.1 スコア化すべきエンティティ
      2. 4.4.2 危険と見なされるスコアの公開
    5. 4.5 データストア
    6. 4.6 まとめ
  9. 5章 デバイスの信頼と信用
    1. 5.1 信頼と信用を獲得する
      1. 5.1.1 アイデンティティの生成と保護
      2. 5.1.2 静的なシステムと動的なシステムでのアイデンティティの セキュリティ
    2. 5.2 コントロールプレーンによるデバイスの認証
      1. 5.2.1 X.509
      2. 5.2.2 TPM
      3. 5.2.3 ハードウェアベースのゼロトラストサプリカント
    3. 5.3 インベントリ管理
      1. 5.3.1 想定される挙動を把握する
      2. 5.3.2 セキュアイントロダクション
    4. 5.4 デバイスの信用の更新
      1. 5.4.1 ローカル測定
      2. 5.4.2 リモート測定
    5. 5.5 ソフトウェアの構成管理
      1. 5.5.1 構成管理ベースのインベントリ
      2. 5.5.2 信頼できるセキュアな情報源
    6. 5.6 ユーザーの認可にデバイスデータを使用する
    7. 5.7 信用のサイン
      1. 5.7.1 イメージの経過時間
      2. 5.7.2 アクセス履歴
      3. 5.7.3 位置
      4. 5.7.4 ネットワーク通信パターン
    8. 5.8 まとめ
  10. 6章 ユーザーの信頼と信用
    1. 6.1 アイデンティティ発行機関
    2. 6.2 プライベートシステムでのアイデンティティの生成
      1. 6.2.1 政府発行の識別証
      2. 6.2.2 物質界に勝るものなし
      3. 6.2.3 期待値
    3. 6.3 アイデンティティの格納
      1. 6.3.1 ユーザーディレクトリ
      2. 6.3.2 ディレクトリの管理
    4. 6.4 いつ認証するか
      1. 6.4.1 信用されるための認証
      2. 6.4.2 認証ドライバとしての信用
      3. 6.4.3 複数の経路の使用
      4. 6.4.4 アイデンティティと信用のキャッシュ
    5. 6.5 どのように認証するか
      1. 6.5.1 ユーザーが知っているもの:パスワード
      2. 6.5.2 ユーザーが持っているもの:TOTP
      3. 6.5.3 ユーザーが持っているもの:証明書
      4. 6.5.4 ユーザーが持っているもの:セキュリティトークン
      5. 6.5.5 ユーザー自身のもの:生体認証
      6. 6.5.6 アウトオブバンド認証
      7. 6.5.7 シングルサインオン(SSO)
      8. 6.5.8 ローカル認証への移行
    6. 6.6 グループの認証と認可
      1. 6.6.1 シャミアの秘密分散法
      2. 6.6.2 Red October
    7. 6.7 何かを見たら報告する
    8. 6.8 信用のサイン
    9. 6.9 まとめ
  11. 7章 アプリケーションの信頼と信用
    1. 7.1 アプリケーションパイプライン
    2. 7.2 ソースコードの信用
      1. 7.2.1 リポジトリの保護
      2. 7.2.2 コードの真正性と監査証跡
      3. 7.2.3 コードレビュー
    3. 7.3 ビルドの信用
      1. 7.3.1 リスク
      2. 7.3.2 信用できる入力、信用できる出力
      3. 7.3.3 再現可能なビルド
      4. 7.3.4 リリースバージョンと成果物バージョンを切り離す
    4. 7.4 ディストリビューションの信用
      1. 7.4.1 成果物のリリース対象化
      2. 7.4.2 ディストリビューションのセキュリティ
      3. 7.4.3 完全性と真正性
      4. 7.4.4 ディストリビューションネットワークの信用
    5. 7.5 人間が関わる部分を限定する
    6. 7.6 アプリケーションの信用
      1. 7.6.1 アップグレード限定ポリシー
      2. 7.6.2 認可を受けたアプリケーション
    7. 7.7 ランタイムのセキュリティ
      1. 7.7.1 セキュアコーディングの実践
      2. 7.7.2 分離
      3. 7.7.3 能動的な監視
    8. 7.8 まとめ
  12. 8章 トラフィックの信頼と信用
    1. 8.1 暗号化と認証
      1. 8.1.1 暗号化なしで真正性は確保できるか
    2. 8.2 信頼の確立:最初のパケット
      1. 8.2.1 fwknop
    3. 8.3 ネットワークモデルの概要
      1. 8.3.1 ネットワークの各層
      2. 8.3.2 OSIネットワークモデル
      3. 8.3.3 TCP/IPネットワークモデル
    4. 8.4 ゼロトラストはネットワークモデルのどこに位置するか
      1. 8.4.1 クライアントとサーバーの分離
    5. 8.5 プロトコル
      1. 8.5.1 IKE/IPsec
      2. 8.5.2 相互認証TLS(mTLS) (1/2)
      3. 8.5.2 相互認証TLS(mTLS) (2/2)
    6. 8.6 フィルタリング
      1. 8.6.1 ホストフィルタリング
      2. 8.6.2 ブックエンドフィルタリング
      3. 8.6.3 中間フィルタリング
    7. 8.7 まとめ
  13. 9章 ゼロトラストネットワークの実現
    1. 9.1 スコープの選択
      1. 9.1.1 実際に必要なのは何か (1/2)
      2. 9.1.1 実際に必要なのは何か (2/2)
    2. 9.2 システム図の作成
    3. 9.3 フローを理解する
    4. 9.4 コントロールプレーンがないアーキテクチャ
      1. 9.4.1 構成管理による「ズル」
      2. 9.4.2 アプリケーションの認証と認可
      3. 9.4.3 ロードバランサとプロキシの認証
      4. 9.4.4 リレーショナルなポリシー
      5. 9.4.5 ポリシーの分散
    5. 9.5 ポリシーの定義と導入
    6. 9.6 ゼロトラストプロキシ
    7. 9.7 クライアント側とサーバー側の移行
    8. 9.8 ケーススタディの紹介
    9. 9.9 ケーススタディ:Google BeyondCorp
      1. 9.9.1 BeyondCorpの主要なコンポーネント
      2. 9.9.2 GFEの活用と拡張
      3. 9.9.3 マルチプラットフォーム認証の課題
      4. 9.9.4 BeyondCorpへの移行
      5. 9.9.5 教訓
      6. 9.9.6 まとめ
    10. 9.10 ケーススタディ:PagerDutyのクラウドに依存しないネットワーク
      1. 9.10.1 自動化プラットフォームとしての構成管理
      2. 9.10.2 動的に設定されるローカルファイアウォール
      3. 9.10.3 分散トラフィックの暗号化
      4. 9.10.4 分散されたユーザー管理
      5. 9.10.5 ロールアウト
      6. 9.10.6 プロバイダに依存しないシステムの価値
    11. 9.11 まとめ
  14. 10章 攻撃者の視点
    1. 10.1 なりすまし
    2. 10.2 DDoS
    3. 10.3 エンドポイントの列挙
    4. 10.4 信用されないコンピューティングプラットフォーム
    5. 10.5 ソーシャルエンジニアリング
    6. 10.6 物理的な脅威
    7. 10.7 無効化
    8. 10.8 コントロールプレーンのセキュリティ
    9. 10.9 まとめ
  15. 監訳者あとがき (1/2)
  16. 監訳者あとがき (2/2)
  17. 索 引 (1/2)
  18. 索 引 (2/2)

Product information

  • Title: ゼロトラストネットワーク ―境界防御の限界を超えるためのセキュアなシステム設計
  • Author(s): Evan Gilman, Doug Barth, 鈴木 研吾
  • Release date: October 2019
  • Publisher(s): O'Reilly Japan, Inc.
  • ISBN: 9784873118888

You might also like

book

Python機械学習クックブック

by Chris Albon, 中田 秀基

Pythonによる機械学習を進める上で、頻繁に遭遇すると思われる200超の問題とその解決策を紹介。データ構造(ベクトル、行列、配列)、数値データ、カテゴリデータ、テキスト、画像、日時データの取り扱いといったデータ分析の基本から、特徴量抽出、次元削減、モデルの評価と選択、線形回帰、決定木、ランダムフォレスト、k-最近傍法、SVM、ナイーブベイズ、クラスタリング、ニューラルネットワーク、訓練済みモデルのセーブとロードなど、幅広い内容をカバー。巻末に日本語版付録「日本語テキストの取り扱い」を収録。「やりたいこと」「困っていること」に答えてくれる一冊です。

book

初めてのGo言語 ―他言語プログラマーのためのイディオマティックGo実践ガイド

by Jon Bodner, 武舎 広幸

イディオマティックなGo言語の解説書。構文がシンプル、静的型付け、タイプセーフでメモリセーフ、バグが入り込みにくい、並行処理が得意、実行速度が速い……これらの魅力的な特徴を生かすためには、Go言語らしい書き方を可能にする「イディオム」を学ぶ必要があります。Go言語のイディオムをマスターすれば、効率的で読みやすいコードを書けます。本書では、Go言語の基本機能を明快かつ簡潔に説明しつつ、イディオマティックなGoコードの書き方やGoプロジェクトの設計方法を解説します。読者はベテランのGo開発者のように考える術を学べます。

book

大規模データ管理 ―エンタープライズアーキテクチャのベストプラクティス

by Piethein Strengholt, 村上 列

データ管理と統合が急速に進化する中、複雑で緊密に結合したアーキテクチャから、現代のビジネスに対応できる、より柔軟なデータアーキテクチャへの移行が求められます。 本書は、変化が激しい時代でも長期的に持続可能な方法で大規模なデータ管理を行い、さまざまなユースケースに対応できる統合アーキテクチャを紹介します。この統合アーキテクチャを構成する、膨大なデータ利用に向けた「読み出し専用データストアアーキテクチャ」、リアルタイムなアプリケーションのための「APIアーキテクチャ」、大容量のスループットを実現する「ストリーミングアーキテクチャ」を詳述します。また技術開発、法規制、プライバシーに関する懸念など、データ管理全体を説明し、データガバナンスとセキュリティ、マスターデータ管理、セルフサービスとデータマーケットプレイス、メタデータの重要性について解説します。 企業のデータ戦略にかかわる本書は、アーキテクトはもちろん、経営者、ガバナンスチーム、データ分析・エンジニアリングチーム必携の一冊です。

book

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

by Andreas C. Muller, Sarah Guido, 中田 秀基

Pythonの機械学習用ライブラリの定番、scikit-learnのリリースマネージャを務めるなど開発に深く関わる著者が、scikit-learnを使った機械学習の方法を、ステップバイステップで解説します。ニューラルネットを学ぶ前に習得しておきたい機械学習の基礎をおさえるとともに、優れた機械学習システムを実装し精度の高い予測モデルを構築する上で重要となる「特徴量エンジニアリング」と「モデルの評価と改善」について多くのページを割くなど、従来の機械学習の解説書にはない特長を備えています。