class

OvhApi::Endpoints::Auth

Inherits Reference < Object

Endpoint /auth : flux de création d'une consumer key OVH.

La route POST /auth/credential est spéciale : elle ne nécessite PAS de consumer key (c'est précisément ce qu'on demande), juste le header X-Ovh-Application (clé applicative). Pas de HMAC.

Flux classique côté consommateur (ex: beryl init) :

  1. Construire la liste des AccessRule nécessaires
  2. client.auth.request_consumer_key(rules) → retourne une ConsumerKey avec validation_url et consumer_key (encore en pendingValidation)
  3. Afficher validation_url à l'utilisateur. Il ouvre son navigateur, se connecte à OVH, valide.
  4. La consumer_key est alors utilisable ; l'appelant la stocke (ex: dans ~/.beryl/.env.yml).

Constructors

new(client : Client)
Source

Instance methods

current_credential

Retourne les méta-données de la consumer key courante (celle configurée dans le Client). GET /auth/currentCredential renvoie notamment l'expiration — utile pour avertir l'utilisateur combien de temps il reste avant de régénérer la clé.

expiration peut être nil quand la clé a été créée en validité illimitée. last_use peut aussi être nil si la clé vient d'être validée et n'a jamais servi.

Source
request_consumer_key(rules : Array(AccessRule), redirection : String | Nil = nil) : ConsumerKey

Demande une consumer key OVH avec les droits exacts listés. Chaque règle est un couple {method, path} (ex: {"GET", "/dedicated/server/*"}). Les wildcards * sont supportés par OVH (pattern "tout sous ce préfixe").

redirection : URL vers laquelle OVH redirige le navigateur de l'utilisateur une fois la clé validée. Optionnel. Si omis, OVH affiche une page de confirmation simple.

Source