12.7. EventPolicy 적용
이 섹션에서는 이벤트 전달을 보호하기 위해 EventPolicy를 적용하기 위한 엔드 투 엔드 단계에 대해 설명합니다. 다음 참조 예에서 namespace-1 의 Broker는 다른 네임스페이스 네임스페이스-2 에서 실행되는 PingSource 의 이벤트만 허용하도록 구성됩니다.
사전 요구 사항
- OpenShift Serverless Operator 및 Knative Eventing이 OpenShift Container Platform 클러스터에 설치되어 있습니다.
-
authentication-oidc기능을 활성화했습니다.
프로세스
다음 예에 표시된 대로 두 네임스페이스를 생성하고
namespace-1에 Broker를 배포하고 각 네임스페이스에서 하나의PingSource를 구성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예와 같이 event-display 서비스를 생성하여 수신 이벤트를 표시하고 Trigger를 추가하여 브로커에 연결합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 단계에서는 OIDC가 비활성화되고 EventPolicy가 적용되지 않으므로 event-display 서비스는 PingSources의 이벤트를 표시합니다.
Knative Eventing에서 OIDC를 활성화하고 다음 예제 명령을 실행하여 EventPolicy를 생성합니다.
oc -n knative-eventing patch KnativeEventing knative-eventing \ --type merge \ -p '{"spec":{"config":{"features":{"authentication-oidc":"enabled"}}}}'$ oc -n knative-eventing patch KnativeEventing knative-eventing \ --type merge \ -p '{"spec":{"config":{"features":{"authentication-oidc":"enabled"}}}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow OIDC가 활성화되면 다음 예와 같이
namespace-2에서 PingSource만 권한을 부여하는 EventPolicy를 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 브로커 상태를 확인하려면 EventPolicy를 확인합니다.
oc -n namespace-1 get broker broker -o yaml
$ oc -n namespace-1 get broker broker -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow event-display 서비스에서 로그를 보고 다음 명령을 실행하여
pingsource-2이벤트만 도착했는지 확인합니다.oc -n namespace-1 logs -f -l app=event-display
$ oc -n namespace-1 logs -f -l app=event-displayCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 EventPolicy를 삭제합니다.
oc -n namespace-1 delete eventpolicy event-policy
$ oc -n namespace-1 delete eventpolicy event-policyCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Broker 상태를 확인하여 기본
allow-same-namespace모드로 반환되었는지 확인합니다.oc -n namespace-1 get broker broker -o yaml
$ oc -n namespace-1 get broker broker -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow event-display 서비스 로그를 보고 다음 명령을 실행하여 동일한 네임스페이스의
pingsource-1이벤트만 표시되는지 확인합니다.oc -n namespace-1 logs -f -l app=event-display
$ oc -n namespace-1 logs -f -l app=event-displayCopy to Clipboard Copied! Toggle word wrap Toggle overflow