Mengupgrade ke kebijakan keamanan beta

Dua API keamanan beta, PeerAuthentication dan RequestAuthentication, diperkenalkan di Anthos Service Mesh 1.5. Kebijakan autentikasi alfa tidak digunakan lagi. Halaman ini menjelaskan cara memperbarui kebijakan autentikasi alfa ke kebijakan keamanan beta.

Ubah kebijakan yang dipilih layanan menjadi pemilih workload

Semua kebijakan beta keamanan harus menggunakan model konfigurasi berbasis pemilih workload atau namespace, bukan berbasis layanan.

Update pada RequestAuthentication

Contoh berikut menunjukkan cara mengupdate dari Policy alfa ke RequestAuthentication:

# Alpha policy for authentication to enable Origin Authentication for service foo.
apiVersion: "authentication.istio.io/v1alpha1"
kind: "Policy"
metadata:
  name: "jwt-example"
spec:
  targets:
  - name: httpbin
  origins:
  - jwt:
      issuer: "testing@secure.istio.io"
      jwksUri: "https://raw.githubusercontent.com/istio/istio/release-1.5/security/tools/jwt/samples/jwks.json"

Update pada resource RequestAuthenticationbeta terkait:

apiVersion: "security.istio.io/v1beta1"
kind: "RequestAuthentication"
metadata:
  name: "jwt-example"
spec:
  selector:
    matchLabels:
      app: httpbin
  jwtRules:
  - issuer: "testing@secure.istio.io"
    jwksUri: "https://raw.githubusercontent.com/istio/istio/release-1.5/security/tools/jwt/samples/jwks.json"

Mengupdate ke PeerAuthentication

Anda juga harus memperbarui kebijakan autentikasi untuk TLS bersama (mTLS). MeshPolicy alfa mengaktifkan PERMISSIVE atau STRICT mTLS di seluruh mesh. Resource PeerAuthentication beta menggantikan MeshPolicy alfa. Khususnya, jika Anda memiliki MeshPolicy yang mirip dengan berikut ini:

apiVersion: "authentication.istio.io/v1alpha1"
kind: "MeshPolicy"
metadata:
  name: "default"
  labels:
    release: istio
spec:
  peers:
  - mtls:
      mode: PERMISSIVE

Perbarui dengan resource PeerAuthentication di namespace root:

apiVersion: "security.istio.io/v1beta1"
kind: "PeerAuthentication"
metadata:
  name: "default"
  namespace: "istio-system"
spec:
  mtls:
    mode: PERMISSIVE

Sebelum Anthos Service Mesh 1.7.8, penginstalan default menyertakan MeshPolicy dengan mode PERMISSIVE. 1.7.8 Anthos Service Mesh tidak lagi menghasilkan MeshPolicy.

  1. Sebaiknya gunakan PeerAuthentication berbasis namespace. Meskipun Anthos Service Mesh mendukung auto mTLS, metode ini hanya berfungsi baik dengan PeerAuthentication level mesh atau namespace. Saat menggunakan PeerAuthentication tingkat beban kerja, Anda perlu mengonfigurasi DestinationRule yang sesuai.
  2. Anda dapat mengonfigurasi kebijakan autentikasi alfa untuk menggunakan autentikasi Asal guna menolak permintaan. Namun, RequestAuthentication yang baru hanya menolak permintaan jika token tidak valid. Sebaiknya gunakan AuthorizationPolicy untuk menentukan kontrol akses lebih lanjut.
  3. Meskipun kebijakan autentikasi alfa masih berfungsi di 1.7.8-asm.10 Anthos Service Mesh, kebijakan autentikasi alfa akan sepenuhnya tidak digunakan lagi dalam rilis berikutnya. Sebaiknya selesaikan migrasi sesegera mungkin.
  4. Selama transisi, jika ada kebijakan alfa dan beta, hanya kebijakan beta yang berlaku dan kebijakan alfa akan diabaikan.
  5. Untuk mengetahui informasi selengkapnya, baca Kebijakan Autentikasi dalam dokumentasi Istio.

Langkah selanjutnya