Aller au contenu

Sobre là où ça compte, conçu pour durer.

Vous n’avez besoin de rien de tout cela pour utiliser Autharie. C’est là pour les ingénieurs et les auditeurs qui veulent savoir ce qui fait tourner leur connexion.

Des briques standard, assemblées et entretenues

Kubernetes
Rust
PostgreSQL
OpenID Connect
Argo CD
Let's Encrypt
S3 storage
OpenBao

Des règles pour agents, en blocs ou en code

Qui, sous quelles conditions, ce qu’il peut faire et ce qu’il ne fera jamais : une règle se vérifie à chaque action. Construisez-la en blocs, ou laissez votre équipe tech la garder en code. Chaque décision est tracée de bout en bout.

Aperçu

Il tente de rembourser une commande : les conditions sont vraies, mais la règle interdit les remboursements. Bloqué, et tracé.

Écrit en Rust

Ferriskey est écrit en Rust, comme tout ce qu’Autharie ajoute par-dessus. Un control plane qui expose l’API, un opérateur qui s’occupe des instances, et l’agent qui tourne dans votre cluster.

Rapide et léger

Le control plane, l’opérateur et l’agent du data plane sont des binaires uniques qui démarrent en quelques millisecondes et consomment peu de mémoire.

Plus sûr par construction

Pas de ramasse-miettes et des familles entières de bugs mémoire écartées. Pour le service qui décide qui peut se connecter, cela compte.

SQL vérifié à la compilation

Une requête qui ne correspond pas au schéma fait échouer le build, pas la production.

C'est du Kubernetes là-dessous, et ça se voit

Chaque instance est une ressource personnalisée. Si vous exploitez déjà des clusters, rien ici ne vous surprendra, et kubectl fonctionne comme vous l'attendez.

Réconcilié en continu, pas déployé une fois

Un operator compare en permanence ce que le cluster contient avec ce que la ressource demande. Supprimez un pod et il revient.

Console, API ou manifeste

La console n'a pas de porte dérobée. Tout ce qu'elle fait passe par la même API documentée, et le client en est généré.

Écrit en Rust

Le control plane, l'operator et l'agent du data plane. Du SQL vérifié à la compilation, et un binaire qui démarre en quelques millisecondes.

identityinstance.yaml autharie.fr/v1alpha
apiVersion: autharie.fr/v1alpha
kind: IdentityInstance
metadata:
  name: acme-production
spec:
  provider: ferriskey
  version: "1.4.2"
  hostname: id.acme.com
  allowedCidrs:
    - 203.0.113.0/24
  database:
    mode: managedCluster
    managedCluster:
      instances: 3
      storage:
        size: 50Gi
  backup:
    destinationPath: s3://acme-identity-archives
    encryption: "kms:acme-identity"
  ingress:
    enabled: true
    tls:
      enabled: true
      clusterIssuer: letsencrypt
$ kubectl get identityinstances
NAME              PROVIDER    VERSION   PHASE     READY   AGE
acme-production   ferriskey   1.4.2     Running   true    97d
acme-staging      ferriskey   1.4.2     Running   true    97d
internal-sso      ferriskey   1.4.1     Upgrading false   41d
helm upgrade --install autharie-dataplane charts/autharie-dataplane \
  --namespace autharie-system --create-namespace \
  --set dataplane.id=dp_8f2a41 \
  --set controlPlane.url=https://api.autharie.fr \
  --set controlPlane.auth.clientId=$CLIENT_ID \
  --set controlPlane.auth.clientSecret=$CLIENT_SECRET

Nos clusters, ou une machine que vous possédez déjà

La même plateforme des deux côtés de la ligne. Démarrez sur la nôtre parce que c'est plus rapide, passez sur la vôtre quand une politique impose que la base reste chez vous.

Enregistrez un cluster avec un seul chart

Installez l'agent sur un cluster k3s ou Kubernetes que vous exploitez déjà. Il se signale, indique ce dont il dispose et commence à accepter du travail.

Les données restent où vous les avez mises

Les comptes, les sessions et la base vivent dans votre cluster. Le control plane envoie des intentions et relit l'état. Il ne détient jamais vos utilisateurs.

Des régions que vous nommez vous-même

Un data plane appartient à une région que vous déclarez, et un déploiement est placé là où vous le décidez.

Partagé ou réservé

Un cluster peut accepter du travail de n'importe qui sur la plateforme, ou être réservé à une seule organisation et à personne d'autre.

Rien ici que vous ne puissiez emporter

Vous payez l’exploitation, pas l’accès au logiciel.

Ferriskey

Le fournisseur d’identité est open source. Vous pouvez lire le code qui gère la connexion de vos utilisateurs.

Aucun enfermement, par conception

La base est du Postgres ordinaire et les archives vont dans un stockage objet. Partir, c’est emporter un dump et une image de conteneur.

Développé au grand jour

Ferriskey est développé publiquement. Les corrections et les idées que vous apportez profitent à tout le monde.

Voir le code sur GitHub

Mettez votre premier agent sous contrôle

Dites-nous quels agents vous faites travailler. Nous ouvrons votre espace, et vous écrivez votre première règle en quelques minutes.

Nous lisons chaque demande nous-mêmes et ouvrons les espaces par petits groupes pendant la bêta privée.