# ALTS Application Layer Transport Security(ALTS)は、Google のサービス間(service-to-service)通信に自動的な相互認証とトランスポート層のセキュリティを提供する内部インフラである。*Building Secure and Reliable Systems* 第6章は、ALTS をアプリケーション開発者から認証・暗号の詳細を隠す仕組みの例として紹介する。ALTS を使うアプリケーション開発者にとってのメンタルモデルは単純で、(1) アプリケーションは意味のあるアイデンティティ(管理者のワークステーション上のツールなら管理者のアイデンティティ、マシン上の特権プロセスならマシンのアイデンティティ、オーケストレーションフレームワークでデプロイされたワークロードならそのワークロード固有のアイデンティティ、といった具合)として実行され、(2) ALTS がゼロコンフィグでトランスポートセキュリティを配線上に提供し、(3) 一般的なアクセス制御フレームワーク向けのAPIが認証済みの相手情報を取得できる、という3点に尽きる。開発者は認証情報がどのように調達されるか、接続の保護にどの暗号アルゴリズムが使われるかを意識する必要がない。(Source: [[@2020__OReilly__Building Secure and Reliable Systems - Chapter 6 Design for Understandability]] ch.6 §System Architecture > Authentication and transport security) 第6章は、ALTS や Istio のセキュリティモデルのような体系的なアプローチなしにアプリケーション間セキュリティを扱うと、正しい認証が行われているかを検証するために監査担当者がアプリケーションの全コードを読まなければならず、スケールしないうえに監査漏れや誤りが生じやすいと指摘する。ALTS はこの問題を、認証・トランスポートセキュリティをインフラ層に集中させることで解消する。(Source: [[@2020__OReilly__Building Secure and Reliable Systems - Chapter 6 Design for Understandability]] ch.6 §System Architecture > Authentication and transport security)