Istio 1.3 での秘密検出サービスにおける変更

Kubernetes の信頼できる JWT を活用して、より安全にワークロードインスタンスの証明書を発行します。

2019 年 9 月 10 日| フィリップ・クイー・レ - Google

Istio 1.3 では、Kubernetes の機能強化を活用して、より安全にワークロードインスタンスの証明書を発行します。

Citadel エージェントがワークロードインスタンスの証明書を取得するために Citadel に証明書署名リクエストを送信すると、ワークロードインスタンスのサービスアカウントを表す Kubernetes API サーバーによって発行された JWT が含まれます。Citadel が JWT を認証できる場合、ワークロードインスタンスの証明書を発行するために必要なサービスアカウント名を取得します。

Kubernetes 1.12 より前は、Kubernetes API サーバーは次の問題を抱えた JWT を発行していました。

  1. audexp などの使用範囲を制限するために必要な重要なフィールドが含まれていません。Bound Service Tokens で詳細を確認してください。
  2. オプトアウトする方法なく、すべてのポッドにトークンがマウントされます。Service Account Token Volumes で動機付けについて確認してください。

Kubernetes 1.12 ではこれらの問題を解決するためにtrustworthy JWT が導入されています。ただし、aud フィールドに API サーバーのオーディエンス以外の値を設定するためのサポートは、Kubernetes 1.13 で利用可能になるまでありませんでした。メッシュのセキュリティを強化するために、Istio 1.3 はtrustworthy JWT のみサポートし、SDS を有効にすると aud フィールドの値を istio-ca にする必要があります。Istio デプロイメントを SDS を有効にした状態で 1.3 にアップグレードする前に、Kubernetes 1.13 以降を使用していることを確認してください。

選択したプラットフォームに基づいて、以下の点を考慮してください。

この投稿を共有する