Elimina oggetti

Questa pagina mostra come eliminare gli oggetti dai bucket in Cloud Storage. Per una panoramica dei metodi di eliminazione degli oggetti, consulta Informazioni sull'eliminazione degli oggetti.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per eliminare gli oggetti, chiedi all'amministratore di concederti i seguenti ruoli IAM sul bucket che contiene gli oggetti che vuoi eliminare:

  • Elimina gli oggetti utilizzando Google Cloud CLI o le API REST: Utente oggetto Storage (roles/storage.objectUser)
  • Elimina gli oggetti utilizzando la console Google Cloud : Storage Admin (roles/storage.admin)
  • In alternativa, per eliminare gli oggetti utilizzando la console Google Cloud : Visualizzatore (roles/viewer) e Utente oggetti Storage (roles/storage.objectUser)

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per eliminare gli oggetti. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per eliminare gli oggetti sono necessarie le seguenti autorizzazioni:

  • Elimina oggetti: storage.objects.delete
  • Elenca gli oggetti utilizzando la console Google Cloud o utilizzando il flag --recursive o i caratteri jolly in Google Cloud CLI: storage.objects.list
  • Elenca i bucket utilizzando la console Google Cloud : storage.buckets.list

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Eliminare un singolo oggetto

Questa sezione mostra come eliminare un oggetto alla volta.

Per eliminare un singolo oggetto:

Console

  1. Nella console Google Cloud , vai alla pagina Bucket in Cloud Storage.

    Vai a Bucket

  2. Nell'elenco dei bucket, fai clic sul nome del bucket che contiene gli oggetti da eliminare.

    Si apre la pagina Dettagli bucket con la scheda Oggetti selezionata.

  3. Vai all'oggetto, che potrebbe trovarsi in una cartella.

  4. Seleziona la casella di controllo per l'oggetto da eliminare.

  5. Fai clic su Elimina e poi su Elimina nella finestra di dialogo visualizzata.

Riga di comando

Utilizza il comando Google Cloud CLI gcloud storage rm:

gcloud storage rm gs://BUCKET_NAME/OBJECT_NAME

Dove:

  • BUCKET_NAME è il nome del bucket contenente l'oggetto che vuoi eliminare. Ad esempio, my-bucket.
  • OBJECT_NAME è il nome dell'oggetto che vuoi eliminare. Ad esempio, pets/dog.png.

Se l'operazione ha esito positivo, la risposta è simile all'esempio seguente:

Removing objects:
Removing gs://example-bucket/file.txt...
  Completed 1/1

Librerie client

C++

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C++.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.

namespace gcs = ::google::cloud::storage;
[](gcs::Client client, std::string const& bucket_name,
   std::string const& object_name) {
  google::cloud::Status status =
      client.DeleteObject(bucket_name, object_name);

  if (!status.ok()) throw std::runtime_error(status.message());
  std::cout << "Deleted " << object_name << " in bucket " << bucket_name
            << "\n";
}

C#

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C#.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.


using Google.Cloud.Storage.V1;
using System;

public class DeleteFileSample
{
    public void DeleteFile(
        string bucketName = "your-unique-bucket-name",
        string objectName = "your-object-name")
    {
        var storage = StorageClient.Create();
        storage.DeleteObject(bucketName, objectName);
        Console.WriteLine($"Deleted {objectName}.");
    }
}

Go

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Go.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.

import (
	"context"
	"fmt"
	"io"
	"time"

	"cloud.google.com/go/storage"
)

// deleteFile removes specified object.
func deleteFile(w io.Writer, bucket, object string) error {
	// bucket := "bucket-name"
	// object := "object-name"
	ctx := context.Background()
	client, err := storage.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("storage.NewClient: %w", err)
	}
	defer client.Close()

	ctx, cancel := context.WithTimeout(ctx, time.Second*10)
	defer cancel()

	o := client.Bucket(bucket).Object(object)

	// Optional: set a generation-match precondition to avoid potential race
	// conditions and data corruptions. The request to delete the file is aborted
	// if the object's generation number does not match your precondition.
	attrs, err := o.Attrs(ctx)
	if err != nil {
		return fmt.Errorf("object.Attrs: %w", err)
	}
	o = o.If(storage.Conditions{GenerationMatch: attrs.Generation})

	if err := o.Delete(ctx); err != nil {
		return fmt.Errorf("Object(%q).Delete: %w", object, err)
	}
	fmt.Fprintf(w, "Blob %v deleted.\n", object)
	return nil
}

Java

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Java.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.

import com.google.cloud.storage.Blob;
import com.google.cloud.storage.BlobId;
import com.google.cloud.storage.Storage;
import com.google.cloud.storage.StorageOptions;