Puncte:0

kyverno precondiție pentru posibile valori goale

drapel vn

Învăț cum să folosesc kyverno pentru a construi unele politici, dar mă confrunt cu câteva probleme pentru a înțelege un anumit comportament:

Primul meu scenariu este că vreau să blochez o resursă care poate avea sau nu setul de spec.tier. Dacă este setat și este diferit de „Aplicație”, vreau să fie blocat. Dacă nu este setat, ar trebui să fie permis. Deci am incercat asta:

apiVersion: kyverno.io/v1
fel: ClusterPolicy
metadate:
  nume: test-block-tier
specificație:
  validationFailureAction: aplica
  fundal: fals
  reguli:
  - nume: test-block-tier
    Meci:
      orice:
      - resurse:
          feluri:
          - crd.antrea.io/v1alpha1/NetworkPolicy
    preconditii:
      orice:
      - cheie: „{{request.object.spec.tier || „Aplicație”}}”
        operator: NotEquals
        valoare: Aplicație
    valida:
      mesaj: „ANP cu spații de nume Antrea poate fi utilizat numai pe nivelul: Aplicație”
      nega: {}

Politica funcționează conform așteptărilor, în măsura în care există nivelul setat în yaml.

Acceptă dacă au nivelul: Aplicație

apiVersion: crd.antrea.io/v1alpha1
fel: NetworkPolicy
metadate:
  nume: test-np     
specificație:
    nivel: Aplicație

Refuză dacă are nivel: orice altceva

apiVersion: crd.antrea.io/v1alpha1
fel: NetworkPolicy
metadate:
  nume: test-np     
specificație:
    nivel: Urgență

Dar refuză și dacă nu există un set de spec.tier la care nu mă așteptam, deoarece implicit, dacă nu există, este „Aplicație” per cheie: „{{request.object.spec.tier || „Aplicație”}}”.

Ce ar trebui să schimb pentru ca acesta să funcționeze conform așteptărilor?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.