Clients de service
Un client de service est un serveur, un script ou un travail CI appartenant au projet, qui se connecte avec sa propre clé ou son propre secret plutôt qu’avec l’approbation d’une personne. Pour créer ou modifier un client, l’agent a besoin de l’accès Gestion pour son identité avec la portée identity, de sa propre autorisation Gestion avec la capacité project sur le projet ciblé, et d’une personne responsable vérifiée qui administre l’organisation de ce projet. Un client de service ne gère jamais de clients. Pour exécuter des commandes en tant que client, exécutez screenrig --config PATH login --client-id scl_ID --client-key-file KEY.pem (ou --client-secret-file FILE) une fois et utilisez cette configuration ; screenrig logout supprime le client enregistré. Voir Clients de service.
service-client list#
Lister les clients de service de ce projet, actifs et révoqués, avec leurs clés, identifiants secrets et usages.
service-client listAucun paramètre.
screenrig service-client listNe jamais renvoyer un secret.
service-client show#
Afficher un client du service.
service-client show ID| Paramètre | Type | Requis | Par défaut | Notes |
|---|---|---|---|---|
ID | string | oui | aucun | L’identifiant client, scl_…. |
screenrig service-client show scl_IDListe l’kid de chaque clé et l’css_ de chaque secret pour la rotation.
service-client create#
Créer un client de service appartenant à ce projet.
service-client create --name NAME [--capability NAME]... [--access read|propose|manage]
[--uploader --folder-id IDS [--playlist-id IDS]] [--key-file PATH] [--secret-file PATH]| Paramètre | Type | Requis | Par défaut | Notes |
|---|---|---|---|---|
--name NAME | string | oui | aucun | 1 à 80 caractères. |
--capability NAME | string | non | tous les six | Répétable : screens, content, playlists, advertising, reports, project, chacun dans le vôtre. |
--access LEVEL | string | non | lire | read, propose ou manage ; propose pour un téléverseur. propose envoie les changements de liste de lecture et d’écran à la revue d’une personne. |
--uploader | boolean | non | désactivé | Limiter le client aux dossiers médias et aux listes de lecture indiqués avec --folder-id et --playlist-id. |
--folder-id IDS | string | avec --uploader | aucun | Dossiers médias mfd_ séparés par des virgules dans lesquels le client téléverse ; au moins un. |
--playlist-id IDS | string | non | aucun | Avec --uploader : listes de lecture pl_ séparées par des virgules dont le client modifie les pages. |
--key-file PATH | chemin | l’un de ceux-ci | aucun | Une JWK ou PEM : Ed25519, EC P-256 ou RSA d’au moins 2048 bits. Seule la moitié publique est envoyée. |
--secret-file PATH | chemin | l’un de ceux-ci | aucun | Générer un secret et l’écrire dans ce nouveau fichier 0600. Il est affiché une seule fois. |
screenrig service-client create --name "Nightly report" --access read --capability reports --key-file screenrig-client.pem
screenrig service-client create --name "Agency agent" --uploader --folder-id mfd_01EXAMPLEFOLDER000000000 --playlist-id pl_01EXAMPLEPLAYLIST000000 --secret-file agency.secretNécessite les autorisations d’identité, de projet et d’administration de l’organisation décrites ci-dessus. Un téléverseur travaille uniquement dans ses dossiers et ses listes de lecture : il y téléverse des médias et ajoute, remplace et supprime des pages de ces listes de lecture, et tout le reste est outside_upload_scope. Au maximum 50 clients actifs par organisation, tous projets confondus. Une clé sans son propre kid est identifiée par son empreinte RFC 7638.
service-client add-key#
Enregistrer une seconde clé publique pour une rotation sans interruption.
service-client add-key ID --key-file PATH| Paramètre | Type | Requis | Par défaut | Notes |
|---|---|---|---|---|
ID | string | oui | aucun | L’identifiant client. |
--key-file PATH | chemin | oui | aucun | La nouvelle clé publique, un JWK ou PEM. |
screenrig service-client add-key scl_ID --key-file new.pemUn client détient au maximum deux clés.
service-client add-secret#
Générer un second secret pour une rotation sans interruption.
service-client add-secret ID --secret-file PATH| Paramètre | Type | Requis | Par défaut | Notes |
|---|---|---|---|---|
ID | string | oui | aucun | L’identifiant client. |
--secret-file PATH | chemin | oui | aucun | Un nouveau fichier 0600 qui reçoit le secret. |
screenrig service-client add-secret scl_ID --secret-file new-secretUn client détient au maximum deux secrets. Le secret actuel continue de fonctionner jusqu’à ce que vous le supprimiez.
service-client remove-key#
Supprimer une clé ; les jetons émis avec celle-ci cessent de fonctionner en quelques secondes.
service-client remove-key ID --kid KID| Paramètre | Type | Requis | Par défaut | Notes |
|---|---|---|---|---|
ID | string | oui | aucun | L’identifiant client. |
--kid KID | string | oui | aucun | L’identifiant de la clé depuis service-client show. |
screenrig service-client remove-key scl_ID --kid KIDUn client conserve au moins une clé ou un secret.
service-client remove-secret#
Supprimer un secret ; les jetons émis avec celui-ci cessent de fonctionner en quelques secondes.
service-client remove-secret ID --secret-id css_ID| Paramètre | Type | Requis | Par défaut | Notes |
|---|---|---|---|---|
ID | string | oui | aucun | L’identifiant client. |
--secret-id ID | string | oui | aucun | L’identifiant secret css_ de service-client show. |
screenrig service-client remove-secret scl_ID --secret-id css_IDUn client conserve au moins une clé ou un secret.
service-client revoke#
Révoquer un client de service de façon permanente.
service-client revoke ID --yes| Paramètre | Type | Requis | Par défaut | Notes |
|---|---|---|---|---|
ID | string | oui | aucun | L’identifiant client. |
--yes | boolean | oui | désactivé | Confirmer la révocation permanente. |
screenrig service-client revoke scl_ID --yesSupprime ses clés et secrets ; ses jetons cessent de fonctionner en quelques secondes. L’enregistrement reste pour audit.