Ho creato un account di servizio utilizzando la Console API di Google e desidero utilizzare questo account di servizio con lo strumento Google BigQuery CLI (bq).Come si configura lo strumento da riga di comando di Google BigQuery per utilizzare un account di servizio?
Ho utilizzato lo strumento della riga di comando per accedere correttamente al servizio BigQuery utilizzando le mie credenziali OAuth2 valide in ~/.bigquery.v2.token, tuttavia non riesco a trovare alcuna documentazione su come modificare questo file (o altrimenti configurare lo strumento) per utilizzare invece un account di servizio.
Ecco il mio file .bigquery.v2.token corrente
{
"_module": "oauth2client.client",
"_class": "OAuth2Credentials",
"access_token": "--my-access-token--",
"token_uri": "https://accounts.google.com/o/oauth2/token",
"invalid": false,
"client_id": "--my-client-id--.apps.googleusercontent.com",
"id_token": null,
"client_secret": "--my-client-secret--",
"token_expiry": "2012-11-06T15:57:12Z",
"refresh_token": "--my-refresh-token--",
"user_agent": "bq/2.0"
}
mio altro file: ~/.bigqueryrc generalmente assomiglia a questo:
project_id = --my-project-id--
credential_file = ~/.bigquery.v2.token
Ho provato a installare il paramater credential_file al file di chiave privata .p12 per il mio account di servizio ma senza fortuna, mi restituisce il seguente errore
******************************************************************
** No OAuth2 credentials found, beginning authorization process **
******************************************************************
E mi chiede di andare a un collegamento nel mio browser per impostare nuovamente le mie credenziali OAuth2.
opzione Gli strumenti di linea di comando iniziale configurazione 'init':
bq help init
non visualizza informazioni utili su come impostare questo strumento per utilizzare un account di servizio.
Seguire le istruzioni per l'esecuzione dell'account di servizio utilizzando l'immagine finestra mobile è sostanzialmente più semplice su OS X almeno: https://hub.docker.com/r/google/cloud-sdk/ – mentat
Il modo giusto di utilizzare le credenziali dell'account di servizio su bq cli è necessario attivarlo utilizzando il comando "gcloud auth activate-service-account" e quindi eseguire bq senza alcun flag di autenticazione. Quelle bq flag sono solo per uso interno di gcloud. Si prega di non impostarli, interferisce con il gcloud e porta a risultati imprevedibili. – Daria