Open Policy Agent

Rego入門

アプリケーション

目次 第1章: Regoとは何か 第2章: 基本構文とデータ構造 第3章: ルールの種類と書き方 第4章: 制御構造と演算子 第5章: 内包表記とデータ操作 第6章: 組み込み関数 第7章: テストとデバッグ 第1章: Regoとは何か 1.1 Regoの思想・特徴 Regoは宣言型のポリシー記述言語である。「どのように処理するか」ではなく、「何を満たすべきか」を記述する。 命令型 vs 宣言...

Open Policy Agent Rego

OPAを利用したアクセス制御のパターン

アプリケーション

概要 Open Policy Agent(OPA)は、ポリシーによるアクセス制御を疎結合な形で実現できる強力な仕組みである。Regoという宣言的言語でルールを記述し、アプリケーション側からはシンプルな形式でポリシー評価を利用できる。 本記事では、OPAを利用したアクセス制御の代表的なパターンを整理し、それぞれの特徴や適した用途、実装負荷などを比較する。 以下に、あなたが挙げた4つのアクセス制御アプ...

Open Policy Agent 権限管理

OPAにおけるページネーションへの影響と解決策に関する検討

アプリケーション

OPA の基本と課題背景 OPA(Open Policy Agent)は Rego 言語で記述されたポリシーを用いて、入力(input)や外部データ(data)に基づいて評価を行い、許可/拒否などの判定を行うエンジンである。 実装例については、AWS Prescriptive Guidance のマルチテナント API 認可制御ガイドが参考になる。OPA を活用した SaaS におけるマルチテナン...

Open Policy Agent オフセットページネーション カーソルページネーション 権限管理

Open Policy Agentについて

アプリケーション

Open Policy Agentについて詳しく知りたかったので、公式ドキュメントを参照して調べてみた。 Open Policy Agentとは Open Policy Agent(OPA、「オーパ」と発音。)とは、ポリシー適用のためのOSSの汎用ポリシーエンジン。 宣言型言語(Rego、「レイゴ」と発音。)を用いてポリシーをコードとして記述することができる。 Styraによって開発されており、現...

Open Policy Agent 権限管理

OPAを使用したマイクロサービスのアクセス制御システムの実装

システムアーキテクチャ

OPAを使用したマイクロサービスのアクセス制御システムの実装 OPAを採用したアクセス制御システムのPOCに取り組んでみたので、その内容についてまとめておく。 POCの設計や実装は以下のリポジトリで公開しているため、そちらも合わせて参照されたい。 bmf-san/poc-opa-access-control-system 1. はじめに 1.1 背景と課題 まず、本記事で扱う重要な概念として「権限...

権限管理 Open Policy Agent RBAC マイクロサービス