Si vous n'avez plus besoin d'un bucket, supprimez-le pour arrêter toute facturation. Étant donné que les frais Object Storage Service (OSS) sont appliqués aux ressources stockées dans un bucket, vous devez vider toutes les ressources avant de le supprimer. La suppression d'un bucket constitue le moyen le plus fiable d'éviter les frais imprévus liés à des ressources facturables oubliées. Notez que les données ne peuvent pas être récupérées après la suppression d'un bucket et qu'un autre utilisateur peut s'approprier son nom une fois celui-ci libéré. Pour cesser complètement d'utiliser OSS, vous devez supprimer tous les buckets de votre compte.
Une fois un bucket supprimé, son nom est libéré et peut être réclamé par un autre utilisateur. Si vous souhaitez conserver le nom du bucket, videz-le au lieu de le supprimer.
Les données contenues dans un bucket ne peuvent pas être récupérées après sa suppression. Avant de supprimer un bucket, confirmez que les données ne sont plus nécessaires. Si vous souhaitez continuer à utiliser les données du bucket, effectuez une sauvegarde préalable. Pour plus d'informations, consultez Sauvegarder un bucket.
Précautions
Avant d'utiliser l'exemple de code de cette rubrique, vous devez créer une instance OSSClient en utilisant un nom de domaine personnalisé ou Security Token Service (STS). Pour plus d'informations, consultez Initialiser une instance OSSClient pour Android.
Avant de supprimer un bucket, assurez-vous d'avoir supprimé les ressources requises.
Permissions
Par défaut, un compte Alibaba Cloud dispose de toutes les permissions. Les utilisateurs RAM ou les rôles RAM associés à un compte Alibaba Cloud ne disposent d'aucune permission par défaut. Le compte Alibaba Cloud ou l'administrateur du compte doit accorder les permissions d'opération via des politiques RAM ou une Bucket Policy.
|
API |
Action |
Description |
|
DeleteBucket |
|
Supprime un bucket. |
Si vous disposez de la permission oss:DeleteBucket dans une politique RAM mais que vous ne parvenez pas à supprimer le bucket, cela peut être dû à une Bucket Policy contenant la permission oss:DeleteBucket avec l'effet défini sur Deny. Dans ce cas, vous devez modifier l'effet sur Allow ou supprimer la Bucket Policy avant de pouvoir supprimer le bucket.
Exemple de code
Le code suivant montre comment supprimer un bucket :
DeleteBucketRequest deleteBucketRequest = new DeleteBucketRequest("bucketName");
// Asynchronously delete the bucket.
OSSAsyncTask deleteBucketTask = oss.asyncDeleteBucket(deleteBucketRequest, new OSSCompletedCallback<DeleteBucketRequest, DeleteBucketResult>() {
@Override
public void onSuccess(DeleteBucketRequest request, DeleteBucketResult result) {
Log.d("asyncDeleteBucket", "Success!");
}
@Override
public void onFailure(DeleteBucketRequest request, ClientException clientException, ServiceException serviceException) {
// The request failed.
if (clientException != null) {
// Client exceptions, such as network exceptions.
clientException.printStackTrace();
}
if (serviceException != null) {
// Service exceptions.
Log.e("ErrorCode", serviceException.getErrorCode());
Log.e("RequestId", serviceException.getRequestId());
Log.e("HostId", serviceException.getHostId());
Log.e("RawMessage", serviceException.getRawMessage());
}
}
});
Documentation connexe
Pour obtenir l'exemple de code complet relatif à la suppression d'un bucket, consultez l'exemple GitHub.
Pour plus d'informations sur l'opération API de suppression d'un bucket, consultez DeleteBucket.
Pour plus d'informations sur l'initialisation d'une instance OSSClient, consultez Initialiser une instance OSSClient pour Android.