0.0.17 • Published 5 years ago

serviceopa v0.0.17

Weekly downloads
1
License
ISC
Repository
-
Last release
5 years ago

Open Policy Agent - OPA - Step By Step

A quoi cela sert ?

"Qui peut faire quoi avec un microservice ? "tel est la question de base au moment de la mise en oeuvre d'un microservice.

Si votre microservice est destiné a être utilisé par une application ou une interface externe à votre Cloud, il sera indispensable de véréfier systématique que le demandeur de l'API a bien les droits pour faire l'opération sur le service. En plus il peut etre utile de s'assurer que le demandeur n'accéder qu'a une partie des informations gérées et délivrées par l'API de votre service.

OPA (Open Policy Agent) est un service open source hébergé par le CNCF qui permet :

  • de definir des régles définissant de droits
  • de construire un contexte de vérification (les données )
  • d'évaluer si un lot de données ouvre droit à une opération

Comment cela marche ?

OPA se présente sous la forme d'un éxécutable (ou d'une librairie GO) qui est lancée en mode server . Le serveur fonctionne avec un fichier de régles .rego et un fichier de context .json . Ces données q-peuvent etre chargées au lancement de l'application (en mode server ou en mode container) ou ajoutée / rafraichiés par un HTTP PUT + body JSON. 1. L'application appel le PEP (policy Enforcment Point) server en mode APIRest pour demande à verifier un ensemble de données dans un body JSON 2. le server OPA analyse les données et les valide en fonction d'un fichier de régles décrites dans le langage rego ET(eventuelement) de données locales qui servent de contexte.

Quick start

  • Run OPA en mode server HTTP:
# Check the latest OPA release and download it.
# On macOS (64-bit):
curl -L -o opa https://github.com/open-policy-agent/opa/releases/download/v0.10.2/opa_darwin_amd64
# extraire le fichier binaire dans le chemin de votre systeme (ou ajouter au $PATH)
# Rendre exécutable
chmod 755 ./opa
# Run opa en mode interactif pour tester
opa run
# Run en mode server
opa run -s -w rules
# -s is to run it in server mode instead of opening the REPL -> un fichier ou tous les fichiers d'un dossier
# -w is for watching the changes of the data/policy files
# rules : directory where .rego and .json files are located

Mise en place

  1. Ajout du module Open Policy Agent à VSCODE pour tester les régles.
  2. creation d'un dossier serviceOPA
  3. creation d'un dossie de régles rego
  4. creation d'un fichier de regles

3 mini tuto pour démarrer

  1. Régles à verifier : l'utilisateur X est il référencé ?
  2. L'utilisateur X a t'il le droit d'executer la méthode GET

Busines Case

Mise en place

Developpement

Questions

  • comment synchroniser la base de contexte avec un référentiel

Ressources

0.0.17

5 years ago

0.0.16

5 years ago

0.0.15

5 years ago

0.0.14

5 years ago

0.0.13

5 years ago

0.0.12

5 years ago

0.0.11

5 years ago

0.0.10

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago