{
  "format": "agent-article-v0",
  "article_id": "EA-261",
  "canonical_url": "/tools/ea-261-ai-service-mesh-mtls",
  "page_type": "reference",
  "claim_ids": [],
  "evidence_ids": [
    "EA-261-CURRENT-APPROVAL",
    "EA-261-CURRENT-BODY-READBACK"
  ],
  "unknown_ids": [
    "EA-261-UNKNOWN-01"
  ],
  "operational_object_ids": [],
  "provider": [],
  "models": [],
  "plans": [],
  "surfaces": [],
  "regions": [],
  "current_status": "CURRENT",
  "observation_status": "SPEC_ONLY",
  "freshness": "CURRENT",
  "last_verified": "2026-10-06",
  "supersedes": [],
  "superseded_by": [],
  "provenance": [
    "V23-CANDIDATE-EA261-FIRST-20261015-C4",
    "BODY-SHA256:84d86fd48850f315e63a9ea28982bd5ef2f019113b5fbf984c73808997b69611"
  ],
  "article_sources": [
    {
      "id": "EA-261-CURRENT-APPROVAL",
      "evidence_class": "RESEARCH",
      "title": "現行本文の監査・revision対応",
      "supports": [
        "現行台帳のAUDIT_PASSと候補・revision・本文ハッシュの対応を確認しています。"
      ],
      "limit": "監査状態と来歴の記録です。外部根拠の最新性や本文の全主張を追加保証しません。",
      "origin_class": "AUDITED_CANONICAL_RESEARCH_PACKET",
      "source_or_experiment_ids": [
        "V23-CANDIDATE-EA261-FIRST-20261015-C4"
      ],
      "supporting_locators": [
        "1KqhJtiSb2S84rWmeYVwKcT_76dBwZ_B0ZZuAWQqH0rQ/EA_REVISION_LEDGER!A62:U62",
        "EA_REVISION_LEDGER!A62:U62",
        "EA-261-FIRST-20261006"
      ],
      "provenance_status": "CURRENT_CANONICAL_APPROVAL_READBACK"
    },
    {
      "id": "EA-261-CURRENT-BODY-READBACK",
      "evidence_class": "IMPL",
      "title": "現行本文の収録照合",
      "supports": [
        "公開生成入力の本文SHA-256が、監査済み候補に結び付いたハッシュと一致しています。"
      ],
      "limit": "本文の同一性の検査です。外部システムの挙動や全主張の真偽を実証したものではありません。",
      "checked_at": "2026-10-17",
      "origin_class": "IMPLEMENTATION_READBACK",
      "source_or_experiment_ids": [
        "BODY-SHA256:84d86fd48850f315e63a9ea28982bd5ef2f019113b5fbf984c73808997b69611"
      ],
      "supporting_locators": [
        "content/staging/EA-261.md",
        "84d86fd48850f315e63a9ea28982bd5ef2f019113b5fbf984c73808997b69611",
        "EA-261-FIRST-20261006"
      ],
      "provenance_status": "CURRENT_APPROVED_BODY_HASH_MATCH"
    }
  ],
  "research_sections": [
    {
      "heading": "PUBLIC_CLAIM",
      "text": "AI/Agentサービス間のeast-west通信をservice meshで捕捉すると、workload identity付きmTLSによる相互認証と通信暗号化を集中できます。ただしmTLS成立をleast-privilege authorization、全経路のmesh化、application-level安全性とは同一視しません。"
    },
    {
      "heading": "STRICT_MTLS",
      "text": "IstioではPERMISSIVEとSTRICTを区別します。plaintextを許容しない対象ではPeerAuthentication STRICT等の実効設定を確認します。Linkerdのautomatic mTLSもmeshed-to-meshed trafficが対象であり、unmeshed sourceやskip/bypass pathを別途確認します。"
    },
    {
      "heading": "WORKLOAD_IDENTITY",
      "text": "service identityをstatic shared secretではなくworkload identityへ結び付けます。SPIFFE/SPIRE等を使う場合も、SVID発行だけをprotected pathの証明にせず、実際のproxy/workload integration、trust domain、trust bundle、attestationを確認します。"
    },
    {
      "heading": "AUTHORIZATION",
      "text": "mTLSはpeer authenticationとtransport protectionであり、action/resource authorizationではありません。mTLS identityを入力に、service/port/route/action単位のauthorizationを別controlとして適用します。default behavior、DENY/ALLOW evaluation、health probe例外を製品ごとに固定します。"
    },
    {
      "heading": "COVERAGE_AND_BYPASS",
      "text": "namespace/workload enrollment、sidecar/ztunnel/proxy、CNI/iptables、excluded ports、hostNetwork/direct path、ingress/egress/gateway、multi-cluster経路をinventoryします。meshを迂回できる経路が残る場合、mesh policyを完全なenforcement pointとは扱いません。"
    },
    {
      "heading": "TRUST_LIFECYCLE",
      "text": "trust domain、CA/issuer、trust anchor、certificate TTL/rotation、federationを運用対象にします。rotation失敗やtrust mismatchをsecurityだけでなくavailability failureとして扱います。"
    },
    {
      "heading": "PROTOCOL_AND_POLICY",
      "text": "HTTP、HTTP/2、gRPC、raw TCP等でpolicy fieldsとprotocol detectionが異なり得ます。selector、namespace、port、routeが意図したworkload/trafficへ適用されていることをreadbackします。AUDIT/dry-runをenforcementとみなしません。"
    },
    {
      "heading": "VERIFICATION",
      "text": "設定ファイルの存在だけで完了としません。実行中のservice identity・mTLS状態を確認し、許可identityの成功、未許可identityの拒否、unmeshed/plaintext/direct pathの拒否、excluded port、certificate expiry/rotation、policy change、multi-cluster/failoverを必要範囲でnegative-testします。"
    },
    {
      "heading": "FAILURE_ENVELOPE",
      "text": "PERMISSIVE plaintext acceptance、unmeshed pod、missing proxy/ztunnel capture、excluded port、CNI/iptables/proxy bypass、wrong selector、default allow/all-unauthenticated、health probe exception、protocol misclassification、stale policy、overbroad identity/trust domain、CA/issuer/trust-anchor expiry、rotation outage、multi-cluster trust mismatch、outside-mesh gateway path、long-lived connection、observability gapを想定します。"
    },
    {
      "heading": "IMPLEMENTATION_STATE",
      "text": "2026-10-06時点のIstio、Linkerd、SPIFFE/SPIRE、NIST SP 800-204A/204B公開資料に基づく監査前candidateです。organization mesh/AI runtimeへのlive mutation/testは未実施です。"
    },
    {
      "heading": "SAFE_WORDING",
      "text": "AIサービス間通信をservice mesh mTLS化する場合、meshに実際に捕捉された通信についてworkload identity付きの相互認証と暗号化を集中できます。ただしmTLS成立をleast-privilege authorizationや全経路保護とみなさず、STRICT/default-deny設定、workload enrollment、除外port/direct path、trust/certificate lifecycleを別々に確認します。設定ファイルの存在だけで完了とせず、実行中のservice identity・mTLS状態と未許可/plaintext経路の拒否をreadbackします。"
    },
    {
      "heading": "OPEN_UNKNOWN",
      "text": "organization mesh/product/version/mode、AI service inventory、actual workload identities、namespace/enrollment、CNI/iptables、excluded ports、direct paths、ingress/egress/gateway、trust domain/CA/issuer、certificate rotation、federation/multi-cluster、protocol mix、authorization policy、health probe handling、NetworkPolicy interaction、SLO/cost/latency、tenant-specific realized stateは未確認です。"
    }
  ],
  "human_url": "/tools/ea-261-ai-service-mesh-mtls",
  "markdown_url": "/agent/article.md?path=%2Ftools%2Fea-261-ai-service-mesh-mtls",
  "json_url": "/agent/article.json?path=%2Ftools%2Fea-261-ai-service-mesh-mtls"
}