★悩み★
・Open Policy Agentとは?どんなソフトウェアでどの場合で利用するの?
・Open Policy Agentのライセンスやメリットなどの概要を知りたい。
・Open Policy Agentをインストールする手順を知りたい。
こういった「悩み」に答えます。
★本記事の内容★
① Open Policy Agentの概要をご紹介
② Open Policy Agentをインストールする手順をご紹介
これからご紹介する「【OPAとは】Open Policy Agentの概要とインストール手順を解説」を実践したことで、30分以内で「Open Policy Agentをインストール」できました。
記事の前半では「Open Policy Agentとはどういったソフトウェアなのか」や「メリットやライセンスなどの特養」を解説します。
記事の後半では「Open Policy Agentをインストールする手順」を紹介します。
この記事を読み終えることで、「Open Policy Agentの使い方を理解し使い始められる」状態になります。
インストール後、以下の記事を読んでいただくとOPAの使い方をより深めることができます。
>>【入門】Open Policy AgentのRegoでポリシーを作成する手順
>>【コピペOK】Open Policy AgentとPythonを連携する手順
Open Policy Agentの概要
「Open Policy Agentの概要」に関してご紹介します。
★ご紹介事項★
・Open Policy Agentとは
・Open Policy Agentの利用場面
・Open Policy Agentの特徴(ライセンスなど)
以降で、上記の各項目に関してご説明します。
Open Policy Agentとは【ポリシーエンジンです】
Open Policy Agent(略称:OPA)とは、ポリシーエンジンの一種で、あるデータが条件を満たすかを判断できるソフトウェアです。
Open Policy Agentの読み方として、以下があります。
★読み方★
・オーピーエー
・オパ
・オープンポリシーエージェント
ポリシーエンジンの1つであるOpen Policy Agentを使用することで、Open Policy Agentに入力されたデータが適切かどうかを判断できます。
例えば、「ある人のRequestが適切か否かを判断し、適切である場合は詳細なデータを返却する」(下図参照)といったことを実現できます。
Open Policy Agentの利用場面
Open Policy Agentは、以下の場面で利用されます。
★Open Policy Agentの利用場面★
・Web APIのRequestなどの処理に対して、認可を行いたい。
→ 例えば、「適切なRequestの場合、詳細データを返却する」を実現可能
・ポリシーの制御(認可処理)をアプリケーションから分離させたい
→ アプリケーションのマイクロサービス化を促進可能
参照:マイクロサービスとは
以上が、「Open Policy Agentとはどのような場面で使用するのか」となります。
Open Policy Agentの特徴(ライセンスなど)
「Open Policy Agentの特徴(ライセンスなど)」に関してご説明します。
現時点(2021年8月12日)におけるOpen Policy Agentのライセンス情報などを記載しますね。
Open Policy Agentの特徴を以下に記載します。
★Open Policy Agentの特徴★
・ライセンス
→ Apache License, Version 2.0
・Rego言語でポリシーをコードとして作成(Policy as Code)
→ Datalogを参考にして作られたクエリ言語(参照:regoとは)
→ コードでポリシーを記述するため、Gitなどで管理が容易
・動作環境
→ KubernetesやTerraformなどと連携可能(参照:OPAと連携できる製品)
Open Policy Agentを1ヶ月利用して把握した「メリット」と「デメリット」を記載します。
★Open Policy Agentのメリット★
・認可処理をOPAに任せられるため、アプリのコード量が減少
・ポリシーをコードで記載できるためGitなどでバージョン管理が容易
★Open Policy Agentのデメリット★
Rego言語に関する情報が少ないため、ポリシーのコーディングに時間を要す
以上が、「Open Policy Agentの特徴(ライセンスなど)」となります。
「認可処理をコードで管理したい」や「認可処理をアプリケーションから独立させたい」場合、Open Policy Agentの利用を検討しましょう。
Open Policy Agentをインストールする手順
「Open Policy Agentをインストールする手順」に関してご紹介します。
★Open Policy Agentをインストールするまでの流れ★
手順1:Open Policy Agentをダウンロード
手順2:Open Policy Agentのセットアップ
手順3:CLIを用いたOpen Policy Agentの動作確認
上記手順を実施することで、Open Policy Agentをインストールできます。
上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2021年7月6日
動作確認済み環境:CentOS Linux release 7.7.1908 (Core)
以降で、上記「Open Policy Agentをインストールするまでの流れ」の各手順に関してご説明します。
手順1:Open Policy Agentをダウンロード
「手順1:Open Policy Agentをダウンロード」に関してご説明します。
公式サイトからOpen Policy Agentの資材をダウンロードしましょう。
Open Policy Agentの資材をダウンロードするために、「端末またはコマンドプロンプト」を起動し、以下のコマンドを実行してください。
# curl -L -o opa https://openpolicyagent.org/downloads/v0.30.1/opa_linux_amd64_static
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 88 100 88 0 0 40 0 0:00:02 0:00:02 --:--:-- 40
100 628 100 628 0 0 162 0 0:00:03 0:00:03 --:--:-- 4485
100 22.6M 100 22.6M 0 0 3530k 0 0:00:06 0:00:06 --:--:-- 9746k
# ll
合計 23248
-rw-r--r-- 1 root root 23802127 7月 6 09:32 opa
#
コマンド実行後、「opa」のファイルが存在する場合、「正常にOpen Policy Agentをダウンロードできた」と判断できます。
Open Policy Agentのダウンロードコマンドに関しては、以下の公式サイトに掲載されています。
参照:Open Policy Agentのダウンロードコマンド(公式サイト)
以上で、「手順1:Open Policy Agentをダウンロード」は完了です。
手順2:Open Policy Agentのセットアップ
「手順2:Open Policy Agentのセットアップ」に関してご説明します。
ダウンロードしたOpen Policy Agentを利用するためにセットアップをしましょう。
ダウンロードしたOpen Policy Agentをセットアップするために、以下のコマンドを順に実行して下さい。
# chmod 755 ./opa
# ll
合計 23248
-rwxr-xr-x 1 root root 23802127 7月 6 09:32 opa
#
コマンド実行後、opaファイルの権限が上記のようになった場合、「正常にOpen Policy Agentをセットアップできた」と判断できます。
以上で、「手順2:Open Policy Agentのセットアップ」は完了です。
手順3:CLIを用いたOpen Policy Agentの動作確認
「手順3:CLIを用いたOpen Policy Agentの動作確認」に関してご説明します。
CLI(コマンドラインインタフェース)を用いて、Open Policy Agentの動作を確認しましょう。
Open Policy Agentの動作を確認するために、以下のコマンドを順に実行してください。
# ./opa run
OPA 0.30.1 (commit 03b0b1f, built at 2021-07-02T09:52:24Z)
Run 'help' to see a list of commands and check for updates.
> a = 3
Rule 'a' defined in package repl. Type 'show' to see rules.
> show
package repl
a = 3
> exit
#
コマンド実行後、「a = 3」が表示された場合、「正常にOpen Policy Agentが動作している」と判断できます。
以上で、「手順3:CLIを用いたOpen Policy Agentの動作確認」は完了です。
上記の流れで、Open Policy Agentをインストールできました。
【まとめ】Open Policy Agentの概要とインストール手順を解説
今回の記事を通して、「【OPAとは】Open Policy Agentの概要とインストール手順を解説」をご紹介することで、以下の悩みを解消しました。
★悩み★
・Open Policy Agentとは?どんなソフトウェアでどの場合で利用するの?
・Open Policy Agentのライセンスやメリットなどの概要を知りたい。
・Open Policy Agentをインストールする手順を知りたい。
「Open Policy Agentとはどのような場面で利用するのか?」や「Open Policy Agentをインストールする手順は?」で悩んでいるあなたにこの記事が少しでも役に立てれば幸いです。
コメント