第12章 Knative Eventing の認可および EventPolicy
Knative Eventing は、不正アクセスを防ぐためにイベント配信のセキュリティーを保護するメカニズムを提供します。イベント駆動型システムは、多くの場合、複数のプロデューサーとコンシューマーに依存し、適切な承認制御がないと、悪意のあるイベントフローや意図しないイベントフローがシステムが危険にさらされる可能性があります。
詳細なアクセス制御を実現するために、Knative Eventing では EventPolicy カスタムリソースが導入されています。このリソースにより、管理者および開発者は、どのエンティティーを namespace 内の特定のコンシューマーに送信するかを定義できます。EventPolicies を適用することで、信頼できるイベントソースまたはサービスアカウントのみが選択したイベントコンシューマーにデータを送信できるようになり、イベント駆動型アーキテクチャーの全体的なセキュリティー体制が向上します。
セキュアで認証されたイベント配信を確保するには、authentication-oidc とともに transport-encryption 機能フラグを有効にする必要があります。
12.1. デフォルトの承認モード リンクのコピーリンクがクリップボードにコピーされました!
Knative Eventing の承認は 2 つのキーメカニズムで制御されます。EventPolicy カスタムリソースはイベント配信の明示的なルールを定義し、default-authorization-mode 機能フラグは、リソースに関連付けられた EventPolicy がない場合に常に適用されます。
サポートされる承認モードは次のとおりです。
| 承認モード | 説明 |
|---|---|
|
| すべての受信イベントリクエストは制限なしで許可されます。 |
|
| 着信イベント要求はすべて拒否されます。イベント配信を有効にするには、EventPolicy がリクエストを明示的に承認する必要があります。 |
|
| (デフォルト)同じ namespace 内のサブジェクトからの要求のみが許可されます。 |
OpenShift Serverless Operator でデフォルトの承認モードを設定するには、以下の例のように KnativeEventing カスタムリソースを編集できます。