12.2. EventPolicy 리소스 개요
EventPolicy 리소스는 이벤트 전달 규칙을 정의합니다. 이는 서비스 계정 또는 이벤트 소스와 같은 엔터티를 통해 소비자가 이벤트를 수신할 수 있는 이벤트를 보낼 수 있고 선택적으로 CloudEvents가 수락되려면 일치해야 하는 추가 기준을 지정합니다.
EventPolicy는 다음과 같이 세 가지 주요 섹션으로 구성됩니다.
|
| EventPolicy가 적용되는 브로커 또는 채널과 같은 리소스를 정의합니다. |
|
| 이벤트를 대상에 보낼 수 있는 권한이 있는 소스 또는 주체를 정의합니다. |
|
| (선택 사항) CloudEvent 자체에서 허용되기 전에 충족해야 하는 고급 필터링 조건을 지정합니다. |
EventPolicy의 예는 다음과 같습니다.
apiVersion: eventing.knative.dev/v1alpha1
kind: EventPolicy
metadata:
name: my-event-policy
namespace: default
spec:
to:
- ref:
apiVersion: eventing.knative.dev/v1
kind: Broker
name: my-broker
- selector:
apiVersion: eventing.knative.dev/v1
kind: Broker
matchLabels:
app: special-app
from:
- ref:
apiVersion: sources.knative.dev/v1
kind: PingSource
name: my-source
namespace: another-namespace
- sub: system:serviceaccount:default:trusted-app
- sub: "system:serviceaccount:default:other-*"
filters:
- cesql: "type IN ('order.created', 'order.updated', 'order.canceled')"
- exact:
type: com.github.push