Un'identità di servizio in Google Distributed Cloud (GDC) air-gapped fornisce un'identità dedicata per consentire a workload o servizi di accedere in modo programmatico a risorse e microservizi in modo sicuro. Si tratta di identità speciali utilizzate da applicazioni o carichi di lavoro, 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à del servizio, mentre i comandi gdcloud e le interazioni API spesso utilizzano account di servizio. Il secondo riflette il nome della risorsa personalizzata Kubernetes sottostante, ProjectServiceAccount. Entrambi i termini si riferiscono
alla stessa cosa: l'identità non umana per i tuoi carichi di lavoro. 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 delle applicazioni (API) del control plane Distributed Cloud. Ad esempio, i servizi di database interagiscono con le API Kubernetes per creare ed eliminare database.
- Carichi di lavoro dei clienti in Distributed Cloud per accedere ai servizi Distributed Cloud ed effettuare chiamate API autorizzate. Ad esempio, le identità di servizio possono gestire un cliente utilizzando 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 il motore OCR attuale.
- Servizi Distributed Cloud o controller di sistema per accedere in modo sicuro alle risorse dei clienti o ai cluster utente. Ad esempio, le identità di servizio possono gestire i flussi di lavoro di autenticazione e autorizzazione in cui i controller di servizio in esecuzione nei cluster di amministrazione devono eseguire i carichi di lavoro all'interno dei cluster utente gestiti dai clienti.
La gestione delle identità di servizio coinvolge sia l'identità di servizio (rappresentata da una risorsa ProjectServiceAccount) sia le relative credenziali (coppie di chiavi pubblica e privata). Puoi gestire gli account per le identità di servizio utilizzando la console GDC, la CLI 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 disporre di un progetto. Per scoprire come creare un progetto, consulta Creare 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 IAM dell'organizzazione o l'amministratore IAM del progetto per richiedere il ruolo Amministratore IAM del progetto (project-iam-admin).
L'amministratore IAM dell'organizzazione può concedere questo ruolo per qualsiasi progetto all'interno dell'organizzazione. L'amministratore IAM progetto 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:
Per utilizzare l'API con
kubectl, è necessaria una configurazione aggiuntiva:- Installa kubectl CLI.
- 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à di servizio.
- 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 del
ProjectServiceAccount. Il nome deve essere univoco all'interno dello spazio dei nomi del progetto. - PROJECT: il progetto in cui creare l'identità
del 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à del 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 con codifica Base64 in formato PEM da verificare. La chiave privata utilizzata per generare questa chiave pubblica è prevista nel formato PEM ECDSA P256.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 carico di lavoro o a un'applicazione di autenticarsi come identità di servizio (rappresentata dall'account che hai creato), devi generare le credenziali. La creazione delle credenziali comporta la generazione di una coppia di chiavi crittografiche privata e pubblica 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 Identity & Access > Service Identities.
- 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à del servizio a 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 dalla CLI.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, 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, inclusi i dati della chiave generati 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 con codifica Base64 in formato PEM da verificare. La chiave privata utilizzata per generare questa chiave pubblica è prevista nel formato PEM ECDSA P256.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_IDche hai utilizzato 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 la chiave da 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 delle chiavi generato per l'autenticazione come questa identità di servizio, vedi Autenticare e utilizzare un'identità di servizio. Questa sezione illustra l'utilizzo della chiave con la CLI gdcloud e in modo programmatico con le librerie client.
Visualizza identità di servizio
Questa sezione descrive come visualizzare le identità di servizio e le relative chiavi pubbliche.
Visualizzare 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à del 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à del servizio da utilizzare.
Concedi le autorizzazioni per le identità di servizio
Per concedere le autorizzazioni a un'identità di servizio, assegnale 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 Identity & Access Management > Accesso.
- Nell'elenco Membro, fai clic su Aggiungi membro. Viene visualizzata la pagina Utenti e ruoli.
- Seleziona Identità del servizio nell'elenco Tipo di membro.
- Nell'elenco Identità del servizio, seleziona l'identità del servizio a cui vuoi assegnare un binding del ruolo.
- Nell'elenco Ruolo, seleziona il ruolo che vuoi assegnare all'identità del 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
del ruolo. 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 di 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
del ruolo. Se
Associa l'account a un ruolo all'interno di uno spazio dei nomi diverso:
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 di 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
Autenticare e utilizzare 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 l'autenticazione 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 autenticarsi con un'identità di servizio:
- Esegui l'autenticazione con gcloud CLI
- Autenticarsi a livello di programmazione con le librerie client
Esegui l'autenticazione con la CLI gdcloud
Per eseguire azioni con l'identità del servizio, devi prima attivare il file delle chiavi. Dopo l'attivazione, puoi utilizzare 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:
Crea un file di chiavi delle credenziali, se non ne hai già uno.
Attiva l'identità del 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.
Una volta attivata,
gdcloudutilizza le credenziali dell'identità del servizio anziché le tue credenziali utente.
Ottenere un token di accesso utilizzando gcloud CLI
Dopo aver autorizzato un'identità di servizio, puoi utilizzare gdcloud per stampare un token di accesso. Puoi utilizzare questo token come token di autenticazione per autenticare le richieste HTTP.
Il token concede l'accesso ai servizi come definito nel parametro AUDIENCES.
Stampa un token ID per l'account identità del servizio specificato:
gdcloud auth print-identity-token --audiences=AUDIENCES
Sostituisci AUDIENCES con il destinatario o il servizio a cui è destinato 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à del servizio attivo:
Per un cluster zonale:
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 zonale.
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à del 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
Eseguire l'autenticazione in modo programmatico con le librerie client
Gli esempi seguenti mostrano come eseguire l'autenticazione a livello di programmazione 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 del servizio token di sicurezza (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, vengono eliminati ProjectServiceAccount e le relative chiavi pubbliche, 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 Identity & Access > Service Identities.
- Seleziona la casella di controllo dell'identità del servizio che vuoi eliminare.
- Fai clic su Elimina.
- Viene visualizzata la finestra di dialogo di conferma. Nel campo Conferma digitando
quanto segue di seguito, 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 relativa chiave pubblica dall'account dell'identità di servizio. Questa azione invalida la chiave privata corrispondente.
Per eliminare la chiave pubblica, utilizza la console GDC o gcloud CLI.
Console
- Accedi alla console GDC.
- Nel menu di navigazione, seleziona Identity & Access > Service Identities.
- Fai clic sul nome dell'identità del servizio che contiene 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à del 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.