Skip to Content
コードとしてのポリシー
book

コードとしてのポリシー

by Jimmy Ray
March 2025
Intermediate to advanced
556 pages
9h 13m
Japanese
O'Reilly Media, Inc.
Audio summary available
Content preview from コードとしてのポリシー

第2章 Open Policy Agent オープン・ポリシー・エージェント

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

私がOpen Policy Agent(OPA)を使い始めたのは2018年のことで、プロジェクト発足から丸2年近くが経過し、CNCFに受け入れられた直後だった。 OPAは現在、CNCFプロジェクトを卒業し、PaCソリューションとしての全体的な成熟度を証明している。

OPA は非常に成熟した OSS プロジェクトであり、開発者とユーザの強力で活発なコミュニティがある。以下のリンクは、OPA に関する 詳細情報を提供している:

OPAといえば、すぐに思い浮かぶのは一般化と統一化だ。OPAはドメインにとらわれない、つまり単一のデータ・ドメインやスタックにフォーカスしていない。 実際、OPAにはすぐに使えるKubernetesやクラウド・コンピューティングのポリシーは組み込まれていない。ポリシー、データ、クエリを渡す。OPAはあなたが送るデータにポリシーをマッチングさせ、あなたが提供するクエリに基づいてポリシーでデータを評価する。

OPA はドメインにとらわれないため、一般化される。そして、OPA の一般化ユーティリティのおかげで、評価するドメインやスタックに関係なく、入力(データ)やポリシー(データ)を渡すことができる。この汎用性は、ドメインやスタックを超えたPaCの統一につながる。言い換えれば、OPA はドメインにとらわれないため、多くのドメインやスタックにまたがって使用することができ、それにより、1 つの PaC ソリューションを使用して異なるポリシー・ニーズを統一することができる。

この章では、OPA を探求するために必要な Hello World の例から始める。次に、OPA CLI を使用してさまざまな演算子モードを使用し、OPA を実際に操作してみる。その過程で、バンドル、ベアラートークン、WebAssembly を発見する。必要に応じて、Docker Desktop for Mac を使用して OPA をコンテナとして実行する例も紹介する。次に、OPA の強力なポリシー言語である Rego について説明する。最後に、OPA を拡張および統合するためのさまざまな手段を調査する。

さて、次はハロー・ワールドだ!

ハロー・ワールド

通常、新技術に慣れる最も手っ取り早い方法は、それをインストールし、Hello World のサンプルを試してみることだ。しかし、OPA がどのようにポリシーとクエリでデータを評価するかを理解する最も簡単な方法は、Rego プレイグラウンドを使用することであることを発見した。Rego (OPA のポ リ シ ー言語) と Rego Playground については、 こ の章の後半で詳 し く 説明す る こ と に し よ う 。

図2-1のHello Worldの例では、インタフェースの左ペインにRegoポリシーを書いた。右上の「INPUT」ペインに評価するJSONデータを入力した。評価結果は右下の「出力」ペインに出力される。出力は、我々が提供した入力データが、我々が書いたポリシーによってマッチングされ、評価されたことを示している。出力は“hello”: true である。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

クラウドアプリケーションアーキテクチャパターン

クラウドアプリケーションアーキテクチャパターン

Kyle Brown, Bobby Woolf, Joseph Yoder
初めてのGraphQL ―Webサービスを作って学ぶ新世代API

初めてのGraphQL ―Webサービスを作って学ぶ新世代API

Eve Porcello, Alex Banks, 尾崎 沙耶, あんどうやすし

Publisher Resources

ISBN: 9798341627093