Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ Host Security Service/ Referencia de la API/ Descripción de la API/ Prevención de ransomware/ Modificación de la política de copia de respaldo vinculada al almacén
Actualización más reciente 2025-04-08 GMT+08:00

Modificación de la política de copia de respaldo vinculada al almacén

Función

Esta API se utiliza para modificar la política de copia de respaldo asociada con el almacén.

Método de invocación

Para obtener más información, consulte Invocación a las API.

URI

PUT /v5/{project_id}/backup/policy

Tabla 1 Parámetros de ruta

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

ID de proyecto

Mínimo: 1

Máximo: 256

Tabla 2 Parámetros de consulta

Parámetro

Obligatorio

Tipo

Descripción

enterprise_project_id

No

String

ID de proyecto empresarial. Para consultar todos los proyectos empresariales, establezca este parámetro en all_granted_eps.

Valor predeterminado: 0

Mínimo: 1

Máximo: 256

Parámetros de solicitud

Tabla 3 Parámetros de encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Token de usuario. Se puede obtener invocando a la API de IAM utilizada para obtener un token de usuario. El valor de X-Subject-Token en el encabezado de respuesta es un token.

Mínimo: 1

Máximo: 32768

region

String

ID de región

Mínimo: 0

Máximo: 128

Tabla 4 Parámetros del cuerpo de solicitud

Parámetro

Obligatorio

Tipo

Descripción

enabled

No

Boolean

Si la política está habilitada. El valor predeterminado es true.

policy_id

String

ID de políticas de copias de respaldo

Mínimo: 1

Máximo: 256

operation_definition

No

OperationDefinitionRequestInfo object

Parámetro de programación.

trigger

No

BackupTriggerRequestInfo object

Regla de programación de tiempo para la política

Tabla 5 OperationDefinitionRequestInfo

Parámetro

Obligatorio

Tipo

Descripción

day_backups

No

Integer

Cantidad máxima de copias de respaldo diarios retenidos. La última copia de respaldo de cada día se guarda a largo plazo. Este parámetro no se ve afectado por el número máximo de copias de respaldo retenidas. El valor oscila entre 0 y 100. Si se especifica este parámetro, se debe configurar la zona horaria. Valor mínimo: 0. Valor máximo: 100

Mínimo: 0

Máximo: 100

max_backups

No

Integer

Número máximo de copias de respaldo automatizadas que se pueden conservar para un objeto. El valor puede ser -1 u oscilar entre 0 y 99999. Si el valor se establece en -1, las copias de respaldo no se borrarán aunque se supere el límite de cantidad de copias de respaldo retenidas configurado. Si este parámetro y retention_duration_days se dejan en blanco al mismo tiempo, las copias de respaldo se conservarán de forma permanente. Valor mínimo: 1. Valor máximo: 99999. Valor predeterminado: -1

Mínimo: -1

Máximo: 99999

month_backups

No

Integer

Cantidad máxima de copias de respaldo mensuales retenidos. La última copia de respaldo de cada mes se guarda a largo plazo. Este parámetro no se ve afectado por el número máximo de copias de respaldo retenidas. El valor oscila entre 0 y 100. Si se especifica este parámetro, se debe configurar la zona horaria. Valor mínimo: 0. Valor máximo: 100

Mínimo: 0

Máximo: 100

retention_duration_days

No

Integer

Duración de la retención de una copia de respaldo, en días. El valor máximo es 99999. Si el valor se establece en -1, las copias de respaldo no se borrarán aunque se supere la duración de retención configurada. Si este parámetro y max_backups se dejan en blanco al mismo tiempo, las copias de respaldo se conservarán permanentemente. Valor mínimo: 1. Valor máximo: 99999. Valor predeterminado: -1

Mínimo: -1

Máximo: 99999

timezone

No

String

Zona horaria en la que se encuentra el usuario, por ejemplo, UTC+08:00. Establezca este parámetro solo después de haber configurado cualquiera de los parámetros day_backups, week_backups, month_backups, and year_backups.

Mínimo: 0

Máximo: 256

week_backups

No

Integer

Cantidad máxima de copias de respaldo semanales retenidos. La última copia de respaldo de cada semana se guarda a largo plazo. Este parámetro puede ser efectivo junto con el número máximo de copias de respaldo retenidas especificado por max_backups. El valor oscila entre 0 y 100. Si se especifica este parámetro, se debe configurar la zona horaria.

Mínimo: 0

Máximo: 100

year_backups

No

Integer

Cantidad máxima de copias de respaldo anuales retenidos. La última copia de respaldo de cada año se guarda a largo plazo. Este parámetro puede ser efectivo junto con el número máximo de copias de respaldo retenidas especificado por max_backups. El valor oscila entre 0 y 100. Si se especifica este parámetro, se debe configurar la zona horaria. Valor mínimo: 0. Valor máximo: 100

Mínimo: 0

Máximo: 100

Tabla 6 BackupTriggerRequestInfo

Parámetro

Obligatorio

Tipo

Descripción

properties

BackupTriggerPropertiesRequestInfo object

Regla de tiempo para la ejecución de la política.

Tabla 7 BackupTriggerPropertiesRequestInfo

Parámetro

Obligatorio

Tipo

Descripción

pattern

Array of strings

Regla de programación A se puede configurar un máximo de 24 reglas. La regla de programación cumple con iCalendar RFC 2445, pero solo admite los parámetros FREQ, BYDAY, BYHOUR, BYMINUTE e INTERVAL. FREQ solo se puede configurar como WEEKLY o DAILY. BYDAY se puede configurar como MO, TU, WE, TH, FR, SA o SU (siete días de la semana). BYHOUR oscila entre 0 y 23 horas. BYMINUTE oscila entre 0 minutos y 59 minutos. El intervalo de programación no debe ser inferior a 1 hora. Se permite un máximo de 24 puntos de tiempo en un día. Por ejemplo, si la hora de programación es 14:00 de lunes a domingo, establezca la regla de programación de la siguiente manera: FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR,SA,SU;BYHOUR=14;BYMINUTE=00. Para comenzar la programación a las 14:00 todos los días, la regla es la siguiente: FREQ=DAILY;INTERVAL=1;BYHOUR=14;BYMINUTE=00'.

Mínimo: 1

Máximo: 256

Longitud de matriz: 0 - 24

Parámetros de respuesta

Ninguna

Solicitudes de ejemplo

Modificar la política de copia de respaldo. El ID de la política de copia de respaldo de destino es af4d08ad-2b60-4916-a5cf-8d6a23956dda.

PUT https://{endpoint}/v5/{project_id}/backup/policy

{
  "enabled" : true,
  "policy_id" : "af4d08ad-2b60-4916-a5cf-8d6a23956dda",
  "operation_definition" : {
    "day_backups" : 0,
    "max_backups" : -1,
    "month_backups" : 0,
    "retention_duration_days" : 5,
    "timezone" : "UTC+08:00",
    "week_backups" : 0,
    "year_backups" : 0
  },
  "trigger" : {
    "properties" : {
      "pattern" : [ "FREQ=DAILY;INTERVAL=2;BYHOUR=14;BYMINUTE=00" ]
    }
  }
}

Ejemplo de respuestas

Ninguna

Código de ejemplo del SDK

El código de ejemplo del SDK es el siguiente.

Java

Modificar la política de copia de respaldo.The target backup policy ID is af4d08ad-2b60-4916-a5cf-8d6a23956dda.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.hss.v5.region.HssRegion;
import com.huaweicloud.sdk.hss.v5.*;
import com.huaweicloud.sdk.hss.v5.model.*;

import java.util.List;
import java.util.ArrayList;

public class UpdateBackupPolicyInfoSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new BasicCredentials()
                .withAk(ak)
                .withSk(sk);

        HssClient client = HssClient.newBuilder()
                .withCredential(auth)
                .withRegion(HssRegion.valueOf("<YOUR REGION>"))
                .build();
        UpdateBackupPolicyInfoRequest request = new UpdateBackupPolicyInfoRequest();
        request.withEnterpriseProjectId("<enterprise_project_id>");
        UpdateBackupPolicyRequestInfo body = new UpdateBackupPolicyRequestInfo();
        List<String> listPropertiesPattern = new ArrayList<>();
        listPropertiesPattern.add("FREQ=DAILY;INTERVAL=2;BYHOUR=14;BYMINUTE=00");
        BackupTriggerPropertiesRequestInfo propertiesTrigger = new BackupTriggerPropertiesRequestInfo();
        propertiesTrigger.withPattern(listPropertiesPattern);
        BackupTriggerRequestInfo triggerbody = new BackupTriggerRequestInfo();
        triggerbody.withProperties(propertiesTrigger);
        OperationDefinitionRequestInfo operationDefinitionbody = new OperationDefinitionRequestInfo();
        operationDefinitionbody.withDayBackups(0)
            .withMaxBackups(-1)
            .withMonthBackups(0)
            .withRetentionDurationDays(5)
            .withTimezone("UTC+08:00")
            .withWeekBackups(0)
            .withYearBackups(0);
        body.withTrigger(triggerbody);
        body.withOperationDefinition(operationDefinitionbody);
        body.withPolicyId("af4d08ad-2b60-4916-a5cf-8d6a23956dda");
        body.withEnabled(true);
        request.withBody(body);
        try {
            UpdateBackupPolicyInfoResponse response = client.updateBackupPolicyInfo(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}

Python

Modificar la política de copia de respaldo. El ID de la política de copia de respaldo de destino es af4d08ad-2b60-4916-a5cf-8d6a23956dda.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# coding: utf-8

from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkhss.v5.region.hss_region import HssRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkhss.v5 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = __import__('os').getenv("CLOUD_SDK_AK")
    sk = __import__('os').getenv("CLOUD_SDK_SK")

    credentials = BasicCredentials(ak, sk) \

    client = HssClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(HssRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = UpdateBackupPolicyInfoRequest()
        request.enterprise_project_id = "<enterprise_project_id>"
        listPatternProperties = [
            "FREQ=DAILY;INTERVAL=2;BYHOUR=14;BYMINUTE=00"
        ]
        propertiesTrigger = BackupTriggerPropertiesRequestInfo(
            pattern=listPatternProperties
        )
        triggerbody = BackupTriggerRequestInfo(
            properties=propertiesTrigger
        )
        operationDefinitionbody = OperationDefinitionRequestInfo(
            day_backups=0,
            max_backups=-1,
            month_backups=0,
            retention_duration_days=5,
            timezone="UTC+08:00",
            week_backups=0,
            year_backups=0
        )
        request.body = UpdateBackupPolicyRequestInfo(
            trigger=triggerbody,
            operation_definition=operationDefinitionbody,
            policy_id="af4d08ad-2b60-4916-a5cf-8d6a23956dda",
            enabled=True
        )
        response = client.update_backup_policy_info(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

Go

Modificar la política de copia de respaldo. El ID de la política de copia de respaldo de destino es af4d08ad-2b60-4916-a5cf-8d6a23956dda.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    hss "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := hss.NewHssClient(
        hss.HssClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.UpdateBackupPolicyInfoRequest{}
	enterpriseProjectIdRequest:= "<enterprise_project_id>"
	request.EnterpriseProjectId = &enterpriseProjectIdRequest
	var listPatternProperties = []string{
        "FREQ=DAILY;INTERVAL=2;BYHOUR=14;BYMINUTE=00",
    }
	propertiesTrigger := &model.BackupTriggerPropertiesRequestInfo{
		Pattern: listPatternProperties,
	}
	triggerbody := &model.BackupTriggerRequestInfo{
		Properties: propertiesTrigger,
	}
	dayBackupsOperationDefinition:= int32(0)
	maxBackupsOperationDefinition:= int32(-1)
	monthBackupsOperationDefinition:= int32(0)
	retentionDurationDaysOperationDefinition:= int32(5)
	timezoneOperationDefinition:= "UTC+08:00"
	weekBackupsOperationDefinition:= int32(0)
	yearBackupsOperationDefinition:= int32(0)
	operationDefinitionbody := &model.OperationDefinitionRequestInfo{
		DayBackups: &dayBackupsOperationDefinition,
		MaxBackups: &maxBackupsOperationDefinition,
		MonthBackups: &monthBackupsOperationDefinition,
		RetentionDurationDays: &retentionDurationDaysOperationDefinition,
		Timezone: &timezoneOperationDefinition,
		WeekBackups: &weekBackupsOperationDefinition,
		YearBackups: &yearBackupsOperationDefinition,
	}
	enabledUpdateBackupPolicyRequestInfo:= true
	request.Body = &model.UpdateBackupPolicyRequestInfo{
		Trigger: triggerbody,
		OperationDefinition: operationDefinitionbody,
		PolicyId: "af4d08ad-2b60-4916-a5cf-8d6a23956dda",
		Enabled: &enabledUpdateBackupPolicyRequestInfo,
	}
	response, err := client.UpdateBackupPolicyInfo(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

Más información

Para obtener un código de ejemplo del SDK de más lenguajes de programación, consulte la pestaña Código de ejemplo en API Explorer. El código de ejemplo del SDK se puede generar automáticamente.

Códigos de estado

Código de estado

Descripción

200

Modificar una política de copia de respaldo.

Códigos de error

Consulte Códigos de error.