Documentazione

Clienti del servizio: comandi CLI

Crea client del servizio, aggiungi e rimuovi chiavi e segreti e revocali: l’accesso per server, script e job CI.

Ogni comando funziona come descritto nel riferimento CLI: flag globali, output JSON, codici uscita, revisioni e ritentativi.

Client di servizio

Un client di servizio è un server, uno script o un job CI di proprietà del progetto, che accede con la propria chiave o il proprio segreto invece che con l’approvazione di una persona. Per creare o modificare un client, l’agente deve avere accesso Gestisci per la propria identità con l’ambito identity, una propria autorizzazione Gestisci con la capacità project sul progetto di destinazione e una persona responsabile verificata che amministri l’organizzazione di quel progetto. Un client di servizio non gestisce mai i client. Per eseguire comandi come il client, esegui screenrig --config PATH login --client-id scl_ID --client-key-file KEY.pem (o --client-secret-file FILE) una volta e usa quella configurazione; screenrig logout rimuove il client salvato. Vedi Client di servizio.

service-client list#

Elenca i client di servizio di questo progetto, attivi e revocati, con le loro chiavi, ID segreti e utilizzo

service-client list

Nessun parametro.

screenrig service-client list

Non restituisce mai un segreto.

service-client show#

Mostra un cliente del servizio.

service-client show ID
ParametroTipoObbligatorioPredefinitoNote
IDstringsìnessunoL’id client, scl_….
screenrig service-client show scl_ID

Elenca l’kid di ogni chiave e l’css_ di ogni segreto per la rotazione

service-client create#

Crea un client di servizio di proprietà di questo progetto.

service-client create --name NAME [--capability NAME]... [--access read|propose|manage]
                      [--uploader --folder-id IDS [--playlist-id IDS]] [--key-file PATH] [--secret-file PATH]
ParametroTipoObbligatorioPredefinitoNote
--name NAMEstringsìnessunoDa 1 a 80 caratteri.
--capability NAMEstringnotutti e seiRipetibile: screens, content, playlists, advertising, reports, project, ciascuno entro i tuoi.
--access LEVELstringnoleggiread, propose o manage; propose per un uploader. propose invia playlist e modifiche dello schermo alla revisione di una persona.
--uploaderbooleannospentoLimita il client alle cartelle multimediali e alle playlist indicate con --folder-id e --playlist-id.
--folder-id IDSstringcon --uploadernessunoCartelle multimediali mfd_ separate da virgola in cui carica il client; almeno una.
--playlist-id IDSstringnonessunoCon --uploader: playlist pl_ separate da virgola le cui pagine il client modifica.
--key-file PATHpathuno di questinessunoUn JWK o PEM: Ed25519, EC P-256 o RSA di almeno 2048 bit. Viene inviato solo il mezzo pubblico.
--secret-file PATHpathuno di questinessunoGenera un segreto e scrivilo in questo nuovo file 0600. Viene mostrato una sola volta.
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.secret

Richiede le autorizzazioni di identità, progetto e amministrazione dell’organizzazione descritte sopra. Un uploader lavora solo nelle proprie cartelle e playlist: vi carica contenuti multimediali e aggiunge, sostituisce e rimuove pagine di quelle playlist, e qualsiasi altra cosa è outside_upload_scope. Al massimo 50 client attivi per organizzazione, conteggiati in tutti i suoi progetti. Una chiave senza il proprio kid è identificata dalla sua impronta RFC 7638.

service-client add-key#

Registra una seconda chiave pubblica per una rotazione senza interruzioni.

service-client add-key ID --key-file PATH
ParametroTipoObbligatorioPredefinitoNote
IDstringsìnessunoL’id client.
--key-file PATHpathsìnessunoLa nuova chiave pubblica, un JWK o PEM.
screenrig service-client add-key scl_ID --key-file new.pem

Un client possiede al massimo due chiavi.

service-client add-secret#

Genera un secondo segreto per una rotazione senza interruzioni.

service-client add-secret ID --secret-file PATH
ParametroTipoObbligatorioPredefinitoNote
IDstringsìnessunoL’id client.
--secret-file PATHpathsìnessunoUn nuovo file 0600 che riceve il segreto.
screenrig service-client add-secret scl_ID --secret-file new-secret

Un client possiede al massimo due segreti. Quello attuale continua a funzionare finché non lo rimuovi.

service-client remove-key#

Rimuovi una chiave; i token emessi con essa smettono di funzionare in pochi secondi.

service-client remove-key ID --kid KID
ParametroTipoObbligatorioPredefinitoNote
IDstringsìnessunoL’id client.
--kid KIDstringsìnessunoL’id della chiave da service-client show.
screenrig service-client remove-key scl_ID --kid KID

Un client mantiene almeno una chiave o un segreto.

service-client remove-secret#

Rimuovi un segreto; i token emessi con esso smettono di funzionare in pochi secondi.

service-client remove-secret ID --secret-id css_ID
ParametroTipoObbligatorioPredefinitoNote
IDstringsìnessunoL’id client.
--secret-id IDstringsìnessunoL’ID segreto css_ da service-client show.
screenrig service-client remove-secret scl_ID --secret-id css_ID

Un client mantiene almeno una chiave o un segreto.

service-client revoke#

Revoca permanentemente un client di servizio.

service-client revoke ID --yes
ParametroTipoObbligatorioPredefinitoNote
IDstringsìnessunoL’id client.
--yesbooleansìspentoConferma la revoca permanente.
screenrig service-client revoke scl_ID --yes

Elimina le sue chiavi e segreti; i suoi token smettono di funzionare entro pochi secondi. Il record resta per audit.

Altri gruppi di comandi