Un'identità di servizio in Google Distributed Cloud (GDC) con air gap fornisce un'identità dedicata per i workload o i servizi per accedere in modo programmatico alle risorse e ai microservizi in modo sicuro. Si tratta di identità speciali utilizzate da applicazioni o workload, anziché da una persona, e non possono essere utilizzate per l'accesso umano. Analogamente agli account utente, concedi autorizzazioni e ruoli a un'identità di servizio per definire a cosa è autorizzata ad accedere.
Potresti notare due termini utilizzati per questo concetto. La console GDC utilizza principalmente il termine identità di servizio, mentre i comandi gdcloud e le interazioni con l'API utilizzano spesso account di servizio. Quest'ultimo riflette il nome della risorsa personalizzata Kubernetes sottostante, ProjectServiceAccount. Entrambi i termini si riferiscono alla stessa cosa: l'identità non umana per i tuoi workload. Questo documento utilizza l'identità di servizio come termine principale.
Le identità di servizio sono utili per gestire l'infrastruttura GDC, ad esempio:
- Servizi e workload Distributed Cloud interni per accedere in modo sicuro all'interfaccia di programmazione di un'applicazione (API) del control plane Distributed Cloud. Ad esempio, i servizi di database interagiscono con le API Kubernetes per creare ed eliminare i database.
- Workload dei clienti in Distributed Cloud per accedere ai servizi Distributed Cloud ed effettuare chiamate API (Application Programming Interface) autorizzate. Ad esempio, le identità di servizio possono gestire un cliente che utilizza un notebook Vertex AI Workbench per trascrivere file audio utilizzando l'API Speech-to-Text.
- Workload esterni da federare con Distributed Cloud. Ad esempio, le identità di servizio possono gestire un'applicazione esterna a Distributed Cloud che digitalizza i documenti, ma vuole utilizzare l'API Optical Character Recognition (OCR) per sostituire l'attuale motore OCR.
- I servizi o i controller di sistema di Distributed Cloud per accedere in modo sicuro alle risorse dei clienti o ai cluster utente. Ad esempio, le identità di servizio possono gestire i workflow di autenticazione e autorizzazione in cui i controller di servizio in esecuzione nei cluster di amministrazione devono eseguire workload all'interno dei cluster utente gestiti dai clienti.
La gestione delle identità dei servizi coinvolge sia l'identità del servizio (rappresentata da una risorsa ProjectServiceAccount) sia le credenziali associate (coppie di chiavi pubbliche e private). Puoi gestire gli account per le identità di servizio utilizzando la console GDC, l'interfaccia a riga di comando gdcloud o l'API. Con la CLI gdcloud, la funzionalità di identità del servizio si basa sull'API ProjectServiceAccount globale. Poiché le risorse ProjectServiceAccount sono configurate a livello globale, operano in tutte le zone del tuo universo gdcloud.
Prima di iniziare
Per completare le attività descritte in questo documento, devi avere un progetto. Per scoprire come creare un progetto, consulta Crea un progetto.
Devi anche disporre delle autorizzazioni necessarie e preparare l'ambiente.
Richiedi ruoli IAM
Per creare, aggiornare ed eliminare le identità di servizio all'interno di un progetto, contatta l'amministratore dell'organizzazione IAM o l'amministratore del progetto IAM per richiedere il ruolo IAM Project Admin (project-iam-admin).
L'amministratore dell'organizzazione IAM può concedere questo ruolo per qualsiasi progetto all'interno dell'organizzazione. L'amministratore del progetto IAM può concedere questo ruolo nell'ambito del suo progetto specifico.
prepara l'ambiente
Per utilizzare gli strumenti a riga di comando per gestire le identità di servizio, completa la seguente configurazione:
Scarica e installa l'interfaccia a riga di comando gdcloud, se non l'hai ancora fatto.
Per utilizzare l'API con
kubectl, è necessaria una configurazione aggiuntiva:- Installa l'interfaccia a riga di comando kubectl.
- Genera il file kubeconfig per il server API globale
per configurare l'accesso a
kubectl.
Crea un'identità di servizio
La creazione di un'identità di servizio include la creazione di un account e delle relative credenziali.
Crea un account
Per creare un account per un'identità di servizio, utilizza la console GDC, la CLI gdcloud o l'API per creare una risorsa ProjectServiceAccount in un progetto.
Console
- Accedi alla console GDC.
- Nel menu di navigazione, seleziona Identità e accesso > Identità dei servizi.
- Fai clic su Crea identità di servizio. Viene visualizzata la pagina Dettagli identità di servizio.
- Nel campo Nome identità di servizio, inserisci un nome per l'identità di servizio. Ad esempio:
testserviceidentity. - Fai clic su Crea.
gdcloud
Crea un account:
gdcloud iam service-accounts create NAME \
--project=PROJECT
Sostituisci i seguenti valori:
- NAME: il nome della
ProjectServiceAccount. Il nome deve essere univoco all'interno dello spazio dei nomi del progetto. - PROJECT: il progetto in cui creare l'identità di servizio. Se
gdcloud initè già impostato, ometti il flag--project.
Questo comando crea un ProjectServiceAccount nello spazio dei nomi del progetto sul server dell'API di gestione.
API
Crea un file YAML della risorsa personalizzata
ProjectServiceAccount, ad esempiomy-project-sa.yaml:apiVersion: resourcemanager.global.gdc.goog/v1 kind: ProjectServiceAccount metadata: name: NAME namespace: PROJECT spec: keys: - algorithm: ALGORITHM id: KEY_ID key: BASE64_ENCODED_KEY validAfter: "START_TIME" validBefore: "EXPIRATION_TIME"Sostituisci le seguenti variabili:
NAME: il nome della risorsaProjectServiceAccount. Il nome deve essere univoco all'interno dello spazio dei nomi del progetto.PROJECT: il progetto in cui creare l'identità di servizio.ALGORITHM: l'algoritmo della chiave. Sono supportate solo le chiavi ES256.KEY_ID: l'identificatore univoco della chiave. L'ID viene utilizzato per determinare la chiave da verificare.BASE64_ENCODED_KEY: la chiave pubblica codificata in Base64 in formato PEM da verificare. La chiave privata utilizzata per generare questa chiave pubblica deve essere in formato ECDSA P256 PEM.START_TIME: l'ora di inizio in cui la chiave diventa valida, ad esempio2025-02-07T00:59:34Z.EXPIRATION_TIME: la data di scadenza della chiave, ad esempio2026-02-07T00:59:34Z.
Applica la risorsa personalizzata
ProjectServiceAccountal server API globale:kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG apply -f my-project-sa.yamlSostituisci la variabile
GLOBAL_API_SERVER_KUBECONFIGcon il percorso del file kubeconfig per il server API globale.
Crea credenziali
Per consentire a un workload o a un'applicazione di autenticarsi come identità di servizio (rappresentata dall'account che hai creato), devi generare le credenziali. La creazione delle credenziali prevede la generazione di una coppia di chiavi crittografiche private e pubbliche e l'associazione della chiave pubblica all'identità del servizio.
Per creare le credenziali per un'identità di servizio, utilizza la console GDC, la CLI gdcloud o l'API.
Console
- Accedi alla console GDC.
- Nel menu di navigazione, seleziona Identità e accesso > Identità di servizio.
- Fai clic sul nome dell'identità di servizio che vuoi aggiungere alla chiave.
- Fai clic su Crea nuova chiave.
- La nuova chiave viene visualizzata nell'elenco Chiavi e una finestra di dialogo conferma che la chiave è stata creata correttamente.
gdcloud
Il comando gdcloud crea un file JSON delle credenziali predefinite dell'applicazione e una coppia di chiavi pubblica e privata:
gdcloud iam service-accounts keys create APPLICATION_DEFAULT_CREDENTIALS_FILENAME \
--project=PROJECT \
--iam-account=NAME \
--ca-cert-path=CA_CERTIFICATE_PATH
Sostituisci i seguenti valori:
- APPLICATION_DEFAULT_CREDENTIALS_FILENAME: il nome del file JSON.
- PROJECT : seleziona il progetto per cui creare la chiave.
Se
gdcloud initè già impostato, puoi omettere il flag--project. - NAME: il nome dell'identità di servizio per cui aggiungere la chiave.
- CA_CERTIFICATE_PATH: (facoltativo) il percorso del certificato dell'autorità di certificazione (CA) per verificare l'endpoint di autenticazione. Se non specifichi questo percorso, vengono utilizzati i certificati CA di sistema. Devi installare la CA nei certificati CA di sistema.
Distributed Cloud aggiunge la chiave pubblica alle chiavi ProjectServiceAccount che utilizzi per verificare i token web JSON (JWT) firmati dalla chiave privata. La chiave privata viene scritta nel file JSON delle credenziali predefinite dell'applicazione.
L'esempio seguente mostra il file JSON delle credenziali predefinite dell'applicazione:
{
"type": "gdch_service_account",
"format_version": "1",
"project": "project_name",
"private_key_id": "abcdef1234567890",
"private_key": "-----BEGIN PRIVATE KEY-----\nETC\n-----END PRIVATE KEY-----\n",
"name": "service_identity_name",
"ca_cert_path": "/path/to/ca.crt",
"token_uri": "https://service-identity.<Domain>/authenticate"
}
Questo esempio utilizza i seguenti valori:
project: lo spazio dei nomi del progetto nell'organizzazione.private_key_id: l'ID assegnato alla chiave.private_key: la chiave privata ECDSA P256 in formato PEM generata dall'interfaccia a riga di comando.name: il nome dell'identità di servizio.ca_cert_path: il percorso del certificato dell'autorità di certificazione (CA) utilizzato per verificare l'endpoint di autenticazione.token_uri: l'indirizzo dell'endpoint di autenticazione.
API
Genera la coppia di chiavi pubblica e privata. I seguenti comandi utilizzano
opensslcome esempio, che è uno strumento comune per questo scopo.openssl ecparam -name prime256v1 -genkey -noout -out "key.pem" openssl ec -in "key.pem" -pubout > "pub.pem"Codifica in Base64 la chiave pubblica e recupera il relativo ID chiave:
KEY_ID=$(openssl pkey -in key.pem -pubout -outform der | openssl dgst -sha256 | sed 's/^.* //') BASE64_ENCODED_KEY=$(cat pub.pem | base64)Crea o aggiorna il file YAML della risorsa personalizzata
ProjectServiceAccount, includendo le informazioni sulla chiave generata nel passaggio precedente:apiVersion: resourcemanager.global.gdc.goog/v1 kind: ProjectServiceAccount metadata: name: NAME namespace: PROJECT spec: keys: - algorithm: ALGORITHM id: KEY_ID key: BASE64_ENCODED_KEY validAfter: "START_TIME" validBefore: "EXPIRATION_TIME"Sostituisci le seguenti variabili:
NAME: il nome della risorsaProjectServiceAccount. Il nome deve essere univoco all'interno dello spazio dei nomi del progetto.PROJECT: il progetto in cui stai creando la chiave.ALGORITHM: l'algoritmo della chiave. Sono supportate solo le chiavi ES256.KEY_ID: l'identificatore univoco della chiave. L'ID viene utilizzato per determinare la chiave da verificare.BASE64_ENCODED_KEY: la chiave pubblica codificata in Base64 in formato PEM da verificare. La chiave privata utilizzata per generare questa chiave pubblica deve essere in formato ECDSA P256 PEM.START_TIME: l'ora di inizio in cui la chiave diventa valida, ad esempio2025-02-07T00:59:34Z.EXPIRATION_TIME: la data di scadenza della chiave, ad esempio2026-02-07T00:59:34Z.
Applica la risorsa personalizzata
ProjectServiceAccountal server API globale:kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG apply -f my-project-sa.yamlSostituisci la variabile
GLOBAL_API_SERVER_KUBECONFIGcon il percorso del file kubeconfig per il server API globale.Crea il file JSON delle credenziali predefinite dell'applicazione contenente la chiave privata. Assicurati che la variabile
KEY_IDnel file JSON sia impostata sullo stesso valore della variabileKEY_IDutilizzata nella specificaProjectServiceAccount.cat <<EOF > "key_file.json" { "format_version": "1", "name": "NAME", "private_key": "$(tr '\n' '\t' < "key.pem" | sed 's/\t/\\n/g')", "private_key_id": "KEY_ID", "project": "PROJECT", "token_uri": "AUTH_URL", "type": "gdch_service_account" } EOFSostituisci le seguenti variabili:
NAME: il nome dell'identità di servizio.KEY_ID: l'identificatore univoco della chiave. L'ID viene utilizzato per determinare quale chiave verificare e deve corrispondere al valoreKEY_IDutilizzato nella specificaProjectServiceAccount.PROJECT: lo spazio dei nomi del progetto nell'organizzazione.AUTH_URL: l'indirizzo dell'endpoint di autenticazione.
Per informazioni dettagliate su come utilizzare il file della chiave generato per l'autenticazione come questa identità di servizio, consulta Autentica e utilizza un'identità di servizio. Questa sezione illustra l'utilizzo della chiave con la CLI gdcloud e in modo programmatico con le librerie client.
Visualizza le identità di servizio
Questa sezione descrive come visualizzare le identità di servizio e le relative chiavi pubbliche associate.
Visualizza un elenco di identità di servizio
Per visualizzare un elenco delle identità di servizio all'interno di un progetto, utilizza la console GDC o la CLI gdcloud.
Console
- Accedi alla console GDC.
- Seleziona un progetto.
- Nel menu di navigazione, fai clic su Identità e accesso > Identità di servizio per visualizzare l'elenco delle identità di servizio per il progetto.
gdcloud
Elenca gli account di identità del servizio in un progetto:
gdcloud iam service-accounts list \
--project=PROJECT
Sostituisci PROJECT con l'ID progetto.
Visualizza un elenco di chiavi pubbliche per un'identità di servizio
Elenca le chiavi pubbliche registrate con un account di identità di servizio nel progetto:
gdcloud iam service-accounts keys list \
--project=PROJECT \
--iam-account=NAME
Sostituisci quanto segue:
- PROJECT: l'ID progetto
- NAME: il nome dell'account dell'identità di servizio da utilizzare.
Concedi le autorizzazioni per le identità di servizio
Per concedere le autorizzazioni a un'identità di servizio, assegna uno o più ruoli creando associazioni di ruoli utilizzando la console GDC o la CLI gdcloud.
Console
- Accedi alla console GDC.
- Seleziona un progetto.
- Nel menu di navigazione, seleziona Identità e accesso > Accesso.
- Nell'elenco Membro, fai clic su Aggiungi membro. Viene visualizzata la pagina Utenti e ruoli.
- Seleziona Identità di servizio nell'elenco Tipo di membro.
- Nell'elenco Identità di servizio, seleziona l'identità di servizio a cui vuoi assegnare un'associazione di ruoli.
- Nell'elenco Ruolo, seleziona il ruolo che vuoi assegnare all'identità di servizio, ad esempio Backup Creator.
- (Facoltativo) Per aggiungere un altro ruolo, fai clic su Aggiungi un altro ruolo. Seleziona il ruolo aggiuntivo.
- Fai clic su Aggiungi.
gdcloud
Puoi associare l'account dell'identità di servizio ai ruoli all'interno dello spazio dei nomi del progetto o ai ruoli in uno spazio dei nomi diverso.
Associa l'account a un ruolo all'interno dello spazio dei nomi del progetto:
gdcloud iam service-accounts add-iam-policy-binding \ --project=PROJECT \ --role=ROLE \ --iam-account=NAMESostituisci quanto segue:
- PROJECT: il progetto in cui creare l'associazione dei ruoli. Se
gdcloud initè già impostato, puoi omettere il flag--project. - ROLE: il ruolo predefinito da assegnare all'account. Specifica i ruoli nel formato
Role/name, dove Role è il tipo KubernetesIAMRolee name è il nome del ruolo predefinito. Ad esempio, per assegnare il ruolo Visualizzatore progetto, imposta il ruolo suIAMRole/project-viewer. - NAME: il nome dell'account dell'identità di servizio da utilizzare.
- PROJECT: il progetto in cui creare l'associazione dei ruoli. Se
Associa l'account a un ruolo all'interno di un altro spazio dei nomi:
gdcloud iam service-accounts add-iam-policy-binding \ --role=ROLE \ --role-namespace=ROLE_NAMESPACE \ --iam-account=NAMESostituisci quanto segue:
- ROLE: il ruolo predefinito da assegnare all'account. Specifica i ruoli nel formato
Role/name, dove Role è il tipo KubernetesIAMRolee name è il nome del ruolo predefinito. Ad esempio, per assegnare il ruolo Visualizzatore progetto, imposta il ruolo suIAMRole/project-viewer. - ROLE_NAMESPACE: lo spazio dei nomi del ruolo da associare all'account diverso dallo spazio dei nomi del progetto.
- NAME: il nome dell'account dell'identità di servizio da utilizzare.
- ROLE: il ruolo predefinito da assegnare all'account. Specifica i ruoli nel formato
Autentica e utilizza un'identità di servizio
Dopo aver creato un'identità di servizio e generato il relativo file della chiave, puoi utilizzare il file della chiave per autenticarti ai servizi e ai cluster GDC. L'autenticazione ti consente di ottenere token di accesso di breve durata per le chiamate API o di configurare l'accesso al cluster.
Esistono due modi per eseguire l'autenticazione con un'identità di servizio:
- Esegui l'autenticazione con la CLI gdcloud
- Esegui l'autenticazione in modo programmatico con le librerie client
Esegui l'autenticazione con la CLI gdcloud
Per eseguire azioni con l'identità di servizio, devi prima attivare il relativo file della chiave. Dopo l'attivazione, puoi utilizzare la CLI gdcloud per ottenere token o generare file kubeconfig.
Autorizza un'identità di servizio utilizzando una chiave
Il comando gdcloud auth activate-service-account autentica la CLI gdcloud con un'identità di servizio. In questo modo puoi eseguire azioni sulle risorse Distributed Cloud utilizzando le autorizzazioni dell'account dell'identità del servizio anziché un account utente.
Autorizza un'identità di servizio utilizzando una chiave:
Se non ne hai già uno, crea un file della chiave delle credenziali.
Attiva l'identità di servizio eseguendo questo comando:
gdcloud auth activate-service-account --key-file=KEY_FILESostituisci KEY_FILE con il percorso del file della chiave delle credenziali, in genere in formato JSON.
Dopo l'attivazione,
gdcloudutilizza le credenziali dell'identità del servizio anziché le tue credenziali utente.
Ottieni un token di accesso utilizzando la CLI gdcloud
Dopo aver autorizzato un'identità di servizio, puoi utilizzare gdcloud per stampare un token di accesso. Puoi utilizzare questo token come token di connessione per autenticare le richieste HTTP.
Il token concede l'accesso ai servizi come definito nel parametro AUDIENCES.
Stampa un token di identità per l'account di identità del servizio specificato:
gdcloud auth print-identity-token --audiences=AUDIENCES
Sostituisci AUDIENCES con il destinatario o il servizio previsto per il token. È possibile specificare un solo segmento di pubblico.
Genera il file kubeconfig
Dopo aver autorizzato un'identità di servizio, puoi generare un file kubeconfig per autenticarti nei cluster Kubernetes.
Imposta la proprietà gdcloud
core/organization_console_url:gdcloud config set core/organization_console_url https://GDC_URLSostituisci
GDC_URLcon l'URL della tua organizzazione.Genera il file kubeconfig per accedere a un cluster utilizzando l'identità di servizio attiva:
Per un cluster a livello di zona:
export KUBECONFIG=KUBECONFIG_PATH gdcloud clusters get-credentials CLUSTER_NAME --zone ZONESostituisci quanto segue:
- KUBECONFIG_PATH: il percorso in cui vuoi salvare il file kubeconfig generato.
CLUSTER_NAME: il nome del cluster di zona.
ZONE: il nome della zona in cui si trova il cluster.
Per il server API globale:
export KUBECONFIG=KUBECONFIG_PATH gdcloud clusters get-credentials global-apiSostituisci
KUBECONFIG_PATHcon il percorso in cui vuoi salvare il file kubeconfig generato.
Viene generato un file kubeconfig, configurato per l'autenticazione come identità di servizio. Di seguito è riportato un esempio di file YAML:
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: <REDACTED>
server: <REDACTED>
name: cluster-name
contexts:
- context:
cluster: cluster-name
user: gdch_console-<REDACTED>_cluster-name
name: cluster-name-gdch_console-<REDACTED>_cluster-name
current-context: cluster-name-gdch_console-gdc1-staging-gpcdemolabs-com_cluster-name
kind: Config
preferences: {}
users:
- name: gdch_console-<REDACTED>_cluster-name
user:
exec:
apiVersion: client.authentication.k8s.io/v1
args:
- --audience=<REDACTED>
command: gdcloud-k8s-auth-plugin
env: null
installHint: Run 'gdcloud components install gdcloud-k8s-auth-plugin' to use
plugin
interactiveMode: Never
provideClusterInfo: false
Esegui l'autenticazione in modo programmatico con le librerie client
Gli esempi seguenti mostrano come autenticarsi in modo programmatico alle API GDC utilizzando le librerie client di Google Cloud standard. Queste librerie utilizzano il file della chiave del account di servizio generato per generare un token di accesso Security Token Service (STS) o configurare un client di servizio con le credenziali dell'identità del servizio. Questo metodo non richiede alcuna autorizzazione gdcloud precedente.
Python
import google.auth
from google.auth.transport import requests
import requests as reqs
api_endpoint = "https://console.org-1.zone1.google.gdch.test"
# Load the GDC credentials (via GOOGLE_APPLICATION_CREDENTIALS or default path)
creds, project_id = google.auth.default()
# Apply the required audience for the GDC Management API
creds = creds.with_gdch_audience(api_endpoint)
def fetch_gdch_token():
sesh = reqs.Session()
# Note: Set verify to False only if bypassing self-signed cert verification.
# Otherwise, rely on the "ca_cert_path" present in your gdch_credentials.json
sesh.verify = False
req = requests.Request(session=sesh)
# Refresh the credentials to fetch the STS access token
creds.refresh(req)
print("Access Token:", creds.token)
fetch_gdch_token()
Java
import com.google.auth.oauth2.GdchCredentials;
import com.google.auth.oauth2.GoogleCredentials;
import java.io.FileInputStream;
import java.io.InputStream;
public class GdchAuthExample {
public static void main(String[] args) throws Exception {
// Path to your service account JSON file
String credentialsPath = "/path/to/gdch/credentials.json";
String apiAudience = "https://console.org-1.zone1.google.gdch.test";
try (InputStream credentialsStream = new FileInputStream(credentialsPath)) {
// Load the generic Google credentials from the stream
GoogleCredentials credentials = GoogleCredentials.fromStream(credentialsStream);
// Verify it loaded as GdchCredentials
if (credentials instanceof GdchCredentials) {
// Cast and attach the targeted GDC audience
GdchCredentials gdch = ((GdchCredentials) credentials).createWithGdchAudience(apiAudience);
// Force negotiation with the GDC Auth Server to fetch the token
gdch.refreshIfExpired();
System.out.println("Access Token: " + gdch.getAccessToken().getTokenValue());
} else {
System.err.println("The provided file is not a valid GdchCredentials format.");
}
}
}
}
Vai
package main
import (
"context"
"fmt"
"log"
"cloud.google.com/go/auth/credentials"
)
func main() {
ctx := context.Background()
apiEndpoint := "https://console.org-1.zone1.google.gdch.test"
// Load default credentials. The STSAudience parameter is specifically
// required for the GDC auth flow to correctly negotiate the token.
creds, err := credentials.DetectDefault(&credentials.DetectOptions{
STSAudience: apiEndpoint,
})
if err != nil {
log.Fatalf("Failed to detect credentials: %v", err)
}
// Fetch an access token
token, err := creds.Token(ctx)
if err != nil {
log.Fatalf("Failed to retrieve token: %v", err)
}
fmt.Printf("Access Token: %s\n", token.Value)
}
C++
[](std::string const& keyfile, std::string const& audience) {
auto is = std::ifstream(keyfile);
is.exceptions(std::ios::badbit); // Minimal error handling in examples
auto contents = std::string(std::istreambuf_iterator<char>(is.rdbuf()), {});
auto options =
google::cloud::Options{}.set<google::cloud::UnifiedCredentialsOption>(
google::cloud::MakeGDCHServiceAccountCredentials(contents, audience));
return google::cloud::speech_v1::AdaptationClient(
google::cloud::speech_v1::MakeAdaptationConnection(options));
}
Elimina un'identità di servizio
Dopo aver eliminato un'identità di servizio, l'indirizzo ProjectServiceAccount e le relative chiavi pubbliche associate vengono eliminati, le chiavi private esistenti diventano non valide e le applicazioni non hanno più accesso alle risorse del progetto tramite l'identità di servizio.
Per eliminare un'identità di servizio, utilizza la console GDC o la CLI gdcloud.
Console
- Accedi alla console GDC.
- Nel menu di navigazione, seleziona Identità e accesso > Identità di servizio.
- Seleziona la casella di controllo dell'identità di servizio che vuoi eliminare.
- Fai clic su Elimina.
- Viene visualizzata la finestra di dialogo di conferma. Nel campo Conferma digitando in basso quanto segue, inserisci
remove. - Fai clic su Elimina.
gdcloud
Esegui questo comando per eliminare un account di identità del servizio:
gdcloud iam service-accounts delete NAME \
--project=PROJECT
Sostituisci quanto segue:
- NAME: il nome dell'account dell'identità di servizio da eliminare.
- PROJECT: l'ID progetto
Elimina credenziali
Se vuoi disattivare una coppia di chiavi specifica senza eliminare l'intero account dell'identità di servizio, puoi eliminare la chiave pubblica dall'account dell'identità di servizio. Questa azione rende non valida la chiave privata corrispondente.
Per eliminare la chiave pubblica, utilizza la console GDC o la CLI gdcloud.
Console
- Accedi alla console GDC.
- Nel menu di navigazione, seleziona Identità e accesso > Identità di servizio.
- Fai clic sul nome dell'identità di servizio con la chiave che vuoi eliminare.
- Fai clic su Elimina.
- Nella finestra di dialogo di conferma, fai clic su Elimina.
gdcloud
Rimuovi la chiave pubblica con l'ID chiave da un account di identità di servizio nel progetto:
gdcloud iam service-accounts keys delete KEY_ID \
--project=PROJECT \
--iam-account=NAME
Sostituisci quanto segue:
- KEY_ID: l'identificatore univoco della chiave.
- PROJECT: l'ID progetto
- NAME: il nome dell'account dell'identità di servizio.