Dormeto
ENFR

Sécurité

Un déploiement sans risque dans votre organisation

Dormeto s'exécute dans vos comptes AWS et n'est plus sur le chemin des requêtes dès qu'un workload est actif. Il n'agit qu'au travers de rôles que vous créez et pouvez relire ligne à ligne.

Dans votre compte

Le manager, ses données et les routeurs s'exécutent dans vos comptes AWS. Dormeto ne reçoit rien : ni télémétrie, ni appel vers nos serveurs. La release est téléchargée une seule fois, lors du terraform init, depuis releases.dormeto.com, avec la somme de contrôle SHA-256 de chaque fichier.

Hors du chemin des requêtes

Quand le workload est actif, votre équilibreur de charge transmet chaque requête à votre application sans invoquer le waker. Le réveil ne dépend jamais du manager : un routeur réveille ses workloads même quand le manager est indisponible.

Pas de CloudFormation

Dormeto ne crée ni stack ni StackSet, et n'a pas de lien de création rapide (quick-create). Vous installez le manager avec Terraform. Vous créez les rôles dans vos comptes avec un module Terraform ou un script AWS CLI. Un StackSet à vous convient aussi, si c'est ainsi que votre organisation déploie ses rôles. Le manager installe ensuite ses routeurs par des appels d'API, que vous pouvez auditer dans CloudTrail.

Alertes de santé

Toutes les 5 minutes, le manager vérifie ce que remonte chaque routeur. Un routeur qui ne remonte plus rien, ou qui signale un problème, déclenche une alerte. Elle part par e-mail ou sur tout autre canal abonné à son topic SNS. Le chien de garde est lui-même surveillé par CloudWatch.

Des rôles que vous créez, vérifiés à chaque découverte

Dormeto ne crée jamais lui-même ses accès à vos comptes. Le manager part du principe que ses rôles existent et vérifie les deux dans chaque compte à chaque découverte. Si un rôle manque, il ne désactive que ce qui en dépend, explique pourquoi et renvoie vers la procédure.

RôleCe qu'il peut faire
DmtDiscoveryRoleLecture seule : équilibreurs de charge, listeners, règles, target groups et leur état de santé, groupes Auto Scaling, services ECS. Aussi les clusters EKS et les instances derrière un target group. Aussi les métriques de requêtes, la configuration des trails CloudTrail et les tags de son propre rôle.
DmtCommandRoleInstalle, met à jour et supprime les routeurs, uniquement dans leur propre espace de noms. Ce sont les fonctions, tables, files d'attente et règles dmtr-*, et les rôles sous /dormeto/router/ qui doivent porter la limite d'autorisations (permissions boundary) DmtRouterBoundary. Il ne peut toucher à rien d'autre ni étendre les droits des routeurs.
La politique de délégationDans le compte de gestion, autorise le rôle de découverte du manager à lister les comptes, les unités d'organisation et les tags des comptes. Lecture seule.
Le forwarderFacultatif, pour le rafraîchissement événementiel : un rôle et une règle par région, installés par le manager au moyen du rôle de commande. Ils ne transmettent au manager que les modifications d'équilibreurs de charge.
  • Les rôles ne font confiance qu'aux deux rôles du manager, désignés par leur nom dans son compte. En option, cette confiance se limite à votre organisation.
  • Le manager n'assume aucun autre rôle, pas même un rôle administrateur, sauf si vous le désignez dans sa configuration Terraform.
  • Un compte peut être réservé à la découverte : le manager le lit, mais refuse d'y intégrer des workloads.

Le détail des rôles, de la politique et de la vérification →

Utilisateurs

Connexion

La connexion passe par Amazon Cognito, dans votre compte, avec une application d'authentification comme second facteur. Celui-ci est obligatoire par défaut pour les administrateurs et les opérateurs, qui gardent des droits de lecteur tant qu'ils ne l'ont pas configuré. Vous pouvez aussi le rendre facultatif ou obligatoire pour tous. Les administrateurs invitent leurs collègues et réinitialisent une application d'authentification perdue. Gardez deux administrateurs équipés : pour le dernier administrateur, la réinitialisation passe par l'AWS CLI. Il n'y a pas d'inscription en libre-service.

Trois rôles

Les lecteurs consultent le tableau de bord. Les opérateurs mettent en veille, réveillent, intègrent et lancent la découverte. Les administrateurs installent en plus les routeurs, définissent le périmètre et gèrent les utilisateurs.

Audit et protection

Chaque modification est journalisée avec son auteur et son résultat. La protection contre la suppression met les utilisateurs et la table du manager à l'abri d'un destroy lancé par erreur.