Cluster Security
Introduction
Muppy gère la sécurité de toutes les ressources des mClusters.
La sécurité est définie par des Tasks appelées pour chaque Resource du Cluster afin d'ajuster la configuration du Firewall.
Le paramètre Security Setup Task permet de sélectionner une Task qui sera appelées par défaut pour toutes les Resources du Cluster.

Il est possible de définir une Task spécifique au niveau de chaque Muppy Cluster Resource.

Muppy est livrée avec une Task nommée Muppy Default Cluster Security Setup.
Muppy Default Cluster Security Setup Task
Cette Task configure la sécurité des Muppy Cluster Resources de la manière suivante:
Reverse Proxy ; les ports 443 et 80 sont globalement ouverts.
Computes Nodes ; les Reverse Proxies ont accès à tous les ports et tous les protocoles (Trusted Hosts) des Computes Nodes
PostgreSQL Cluster ; les Computes Nodes peuvent se connecter à tous les Clusters PostgreSQL sur le port du Cluster (5432). Le fichier pg_hba.conf du Cluster PostgreSQL est ajusté en conséquence.
Ces règles sont adaptées à la mise au point d'un cluster et constituent un point de départ. Nous encourageons les Utilisateurs à créer des Security Setup Tasks plus restrictives.
Actuellement la Muppy Default Cluster Security Setup Task ne sait gérer que des resources PostgreSQL Clusters qui utilisent le port 5432.
Si vous utilisez un autre port vous devrez écrire une Security Setup Task spécialisée.
Application de la sécurité
Sur le formulaire des Muppy Cluster, le bouton lance la configuration de la sécurité de toutes les Ressources du Cluster.
Le bouton présent en entête du formulaire des ressources lance uniquement la configuration de la sécurité de la ressource sélectionnée.
Custom Security Setup Tasks
Les utilisateurs peuvent créer leur propre Task de configuration de sécurité des Clusters.
Voici un template de Task de Security Setup.
@fabric_task()
def acme_megacluster_security_setup(
cnx, host_obj, m_cluster_resource_obj:OdooModelType, _imq_logger=None
):
""" Acme Megacluster Security Setup Task
:param host_obj: Host of the m_cluster_resource
:param m_cluster_resource_obj: The cluster resource whose security needs to
be reconfigured.
:returns: No value is expected. The Task must raise in case of errror.
"""
_task_logger = _imq_logger or _logger
odoo_env = (host_obj or mpk_pack_obj).env
_commit = odoo_env.cr.commit
# ...
return None
Les Custom Security Task doivent être idempotentes !!!!!
Nous vous invitons à analyser le code source de la Task mpk_default_cluster_security_setup (muppy_pack__security.py) qui peut constituer un point de départ pour vos Cluster Security Task.
Last updated