All Products
Search
Document Center

Alibaba Cloud Service Mesh:Konfigurasikan kebijakan otorisasi untuk traffic HTTP

Last Updated:Aug 22, 2026

Untuk mendapatkan kontrol detail halus atas traffic HTTP, konfigurasikan kebijakan otorisasi guna mengelola akses antar layanan. Kebijakan ini memastikan hanya permintaan yang sah yang dapat mengakses layanan tertentu, sehingga meningkatkan keamanan dan keandalan.

Prasyarat

Langkah 1: Konfigurasikan kebijakan otorisasi deny-all

Pertama, konfigurasikan kebijakan garis dasar untuk menolak semua permintaan ke workload. Anda kemudian akan memberikan izin tertentu secara bertahap.

  1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

  2. Pada halaman Mesh Management, klik nama instans ASM. Di panel navigasi sisi kiri, pilih Mesh Security Center > AuthorizationPolicy. Pada halaman yang muncul, klik Create from YAML.

  3. Pada halaman Create, pilih default dari daftar drop-down Namespaces, pilih template Scenario Template apa pun, tempel konten YAML berikut ke editor YAML, lalu klik Create.

    apiVersion: security.istio.io/v1beta1
    kind: AuthorizationPolicy
    metadata:
      name: allow-nothing
      namespace: default
    spec:
      {}

    Setelah kebijakan dibuat, kebijakan otorisasi allow-nothing muncul di halaman AuthorizationPolicy.

  4. Di bilah alamat browser Anda, masukkan http://{your_ingress_gateway_address}/productpage untuk mengakses aplikasi Bookinfo.

    Halaman mengembalikan RBAC: access denied, yang menunjukkan bahwa Anda tidak memiliki izin yang diperlukan. Untuk informasi tentang cara mendapatkan alamat IP gateway, lihat Dapatkan alamat ingress gateway.

Langkah 2: Konfigurasikan kebijakan untuk layanan Productpage

  1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

  2. Pada halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih Mesh Security Center > AuthorizationPolicy.

  3. Gunakan salah satu metode berikut untuk membuat kebijakan otorisasi yang mengizinkan akses ke layanan Productpage.

    Metode 1: Buat dari YAML

    1. Di halaman AuthorizationPolicy, klik Create from YAML.

    2. Di halaman Create, pilih default dari daftar drop-down Namespaces, pilih template Scenario Template apa pun, tempel konten YAML berikut ke editor YAML, lalu klik Create.

      apiVersion: security.istio.io/v1beta1
      kind: AuthorizationPolicy
      metadata:
        name: "productpage-viewer"
        namespace: default
      spec:
        selector:
          matchLabels:
            app: productpage
        action: ALLOW
        rules:
        - to:
          - operation:
              methods: ["GET"]

    Metode 2: Buat menggunakan UI

    1. Di halaman AuthorizationPolicy, klik Create.

    2. Di halaman Create, konfigurasikan parameter seperti yang dijelaskan dalam tabel berikut, lalu klik Create.

      Parameter

      Deskripsi

      Name

      Masukkan productpage-viewer.

      Policy Type

      Pilih ALLOW.

      Namespaces

      Di tab Workload Scope, atur Namespaces menjadi default.

      Effective Scope

      Pilih Service.

      Workload

      Pilih productpage.

      Request Matching Rules

      Di bagian Add Request Target, aktifkan Methods dan atur nilainya menjadi GET.

    Setelah kebijakan dibuat, kebijakan otorisasi productpage-viewer muncul di halaman AuthorizationPolicy.

  4. Di bilah alamat browser Anda, masukkan http://{your_ingress_gateway_address}/productpage untuk mengakses aplikasi Bookinfo.

    Anda sekarang dapat mengakses halaman Productpage. Namun, layanan Details dan Reviews gagal dimuat karena masih memerlukan otorisasi.

Langkah 3: Konfigurasikan kebijakan untuk layanan Details

Konfigurasikan kebijakan otorisasi untuk layanan Details agar mengizinkan permintaan dari serviceAccount Productpage.

  1. Dapatkan nilai parameter serviceAccount untuk workload Productpage.

    1. Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.

    2. Di halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik Workloads > Deployments.

    3. Di halaman Deployments, temukan deployment productpage-v1. Di kolom Actions, pilih More > View in YAML untuk menemukan nilai parameter serviceAccount.

      Nilai parameter serviceAccount adalah bookinfo-productpage.

      dnsPolicy: ClusterFirst
            restartPolicy: Always
            schedulerName: default-scheduler
            securityContext: {}
            serviceAccount: bookinfo-productpage
            serviceAccountName: bookinfo-productpage
  2. Buat kebijakan otorisasi.

    1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

    2. Di halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih Mesh Security Center > AuthorizationPolicy.

    3. Buat kebijakan otorisasi menggunakan salah satu metode berikut.

      Metode 1: Buat dari YAML

      1. Di halaman AuthorizationPolicy, klik Create from YAML.

      2. Di halaman Create, pilih default dari daftar drop-down Namespaces, pilih template Scenario Template apa pun, tempel konten YAML berikut ke editor YAML, lalu klik Create.

        kind: AuthorizationPolicy
        apiVersion: security.istio.io/v1beta1
        metadata:
          name: details-viewer
          namespace: default
        spec:
          action: ALLOW
          rules:
            - to:
                - operation:
                    methods:
                      - GET
            - from:
                - source:
                    principals:
                      - cluster.local/ns/default/sa/bookinfo-productpage # Ini adalah nilai serviceAccount yang diperoleh pada sub-langkah sebelumnya.
          selector:
            matchLabels:
              app: details

      Metode 2: Buat menggunakan UI

      1. Di halaman AuthorizationPolicy, klik Create.

      2. Di halaman Create, konfigurasikan parameter seperti yang dijelaskan dalam tabel berikut, lalu klik Create.

        Parameter

        Deskripsi

        Name

        Masukkan details-viewer.

        Policy Type

        Pilih ALLOW.

        Namespaces

        Di tab Workload Scope, atur Namespaces menjadi default.

        Effective Scope

        Pilih Service.

        Workload

        Pilih details.

        Request Matching Rules

        1. Di bagian Add Request Source, aktifkan Principals dan atur nilainya menjadi cluster.local/ns/default/sa/bookinfo-productpage.

          Catatan

          bookinfo-productpage adalah nilai parameter serviceAccount yang Anda peroleh di sub-langkah pertama.

        2. Di bagian Add Request Target, aktifkan Methods dan atur nilainya menjadi GET.

      Setelah kebijakan dibuat, kebijakan otorisasi details-viewer muncul di halaman AuthorizationPolicy.

  3. Di bilah alamat browser Anda, masukkan http://{your_ingress_gateway_address}/productpage untuk mengakses aplikasi Bookinfo.

    Layanan Details sekarang dapat diakses, tetapi layanan Reviews belum.

Langkah 4: Konfigurasikan kebijakan untuk layanan Reviews

  1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

  2. Di halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih Mesh Security Center > AuthorizationPolicy.

  3. Buat kebijakan otorisasi menggunakan salah satu metode berikut.

    Metode 1: Buat dari YAML

    1. Di halaman AuthorizationPolicy, klik Create from YAML.

    2. Di halaman Create, pilih default dari daftar drop-down Namespaces, pilih template Scenario Template apa pun, tempel konten YAML berikut ke editor YAML, lalu klik Create.

      kind: AuthorizationPolicy
      apiVersion: security.istio.io/v1beta1
      metadata:
        name: reviews-viewer
        namespace: default
      spec:
        action: ALLOW
        rules:
          - to:
              - operation:
                  methods:
                    - GET
          - from:
              - source:
                  principals:
                    - cluster.local/ns/default/sa/bookinfo-productpage
        selector:
          matchLabels:
            app: reviews

    Metode 2: Buat menggunakan UI

    1. Di halaman AuthorizationPolicy, klik Create.

    2. Di halaman Create, konfigurasikan parameter seperti yang dijelaskan dalam tabel berikut, lalu klik Create.

      Parameter

      Deskripsi

      Name

      Masukkan reviews-viewer.

      Policy Type

      Pilih ALLOW.

      Namespaces

      Di tab Workload Scope, atur Namespaces menjadi default.

      Effective Scope

      Pilih Service.

      Workload

      Pilih reviews.

      Request Matching Rules

      1. Di bagian Add Request Source, aktifkan Principals dan atur nilainya menjadi cluster.local/ns/default/sa/bookinfo-productpage.

        Catatan

        bookinfo-productpage adalah nilai parameter serviceAccount yang Anda peroleh di Langkah 3.

      2. Di bagian Add Request Target, aktifkan Methods dan atur nilainya menjadi GET.

    Setelah kebijakan dibuat, kebijakan otorisasi reviews-viewer muncul di halaman AuthorizationPolicy.

  4. Di bilah alamat browser Anda, masukkan http://{your_ingress_gateway_address}/productpage untuk mengakses aplikasi Bookinfo.

    Kedua layanan Details dan Reviews sekarang dapat diakses.

Dokumen terkait