4.12. OPA ポリシーベースの承認の使用
Open Policy Agent (OPA) は、オープンソースのポリシーエンジンです。OPA と AMQ Streams を統合して、Kafka ブローカーでのクライアント操作を許可するポリシーベースの承認メカニズムとして機能します。
クライアントからリクエストが実行されると、OPA は Kafka アクセスに定義されたポリシーに対してリクエストを評価し、リクエストを許可または拒否します。
Red Hat は OPA サーバーをサポートしません。
4.12.1. OPA ポリシーの定義
OPA と AMQ Streams を統合する前に、ポリシーを定義する方法を指定して、きめ細かいアクセス制御を提供することを検討してください。
Kafka クラスター、コンシューマーグループ、およびトピックのアクセス制御を定義できます。たとえば、プロデューサークライアントから特定のブローカートピックへの書き込みアクセスを許可する承認ポリシーを定義できます。
このポリシーでは、以下を指定できます。
- プロデューサークライアントに関連するユーザープリンシパル と ホストアドレス
- クライアントで許可される操作
-
リソースタイプ (
topic
)およびポリシーが適用される リソース名
決定と拒否の決定はポリシーに書き込まれます。また、提供されるリクエストおよびクライアント ID データに基づいて応答が提供されます。
この例では、プロデューサークライアントはトピックへの書き込みを許可するポリシーを満たす必要があります。