Definir Propriedades do Serviço de Tabela
A Set Table Service Properties
operação define as propriedades para o ponto final do Armazenamento de Tabelas do Azure de uma conta de armazenamento, incluindo propriedades para Análise de Armazenamento e regras CORS (Cross-Origin Resource Sharing). Para obter mais informações sobre as regras CORS, veja Suporte CORS para os serviços de Armazenamento do Azure.
Pedir
Pode especificar o pedido da Set Table Service Properties
seguinte forma. Recomendamos HTTPS. Substitua account-name pelo nome da sua conta de armazenamento.
Método | URI do pedido | Versão HTTP |
---|---|---|
PUT | https://account-name.table.core.windows.net/?restype=service&comp=properties |
HTTP/1.1 |
Tenha em atenção que o URI tem de incluir sempre a barra (/) para separar o nome do anfitrião das partes de caminho e consulta do URI. No caso desta operação, a parte do caminho do URI está vazia.
Parâmetros URI
Parâmetro URI | Description |
---|---|
restype=service&comp=properties |
Obrigatório. A combinação de ambas as cadeias de consulta é necessária para definir as propriedades do serviço de Armazenamento do Azure. |
timeout |
Opcional. O timeout parâmetro é expresso em segundos. |
Cabeçalhos do pedido
A tabela seguinte descreve os cabeçalhos de pedido obrigatórios e opcionais:
Cabeçalho do pedido | Description |
---|---|
Authorization |
Obrigatório. Especifica o esquema de autorização, o nome da conta de armazenamento e a assinatura. Para obter mais informações, veja Autorizar pedidos para o Armazenamento do Azure. |
Date ou x-ms-date |
Obrigatório. Especifica a Hora Universal Coordenada (UTC) do pedido. Para obter mais informações, veja Autorizar pedidos para o Armazenamento do Azure. |
x-ms-version |
Necessário para todos os pedidos autorizados. Especifica a versão da operação a utilizar para este pedido. Para obter mais informações, veja Controlo de versões dos serviços de Armazenamento do Azure. |
x-ms-client-request-id |
Opcional. Fornece um valor opaco gerado pelo cliente com um limite de carateres de 1 kibibyte (KiB) que é registado nos registos quando o registo é configurado. Recomendamos vivamente que utilize este cabeçalho para correlacionar as atividades do lado do cliente com os pedidos que o servidor recebe. |
Corpo do pedido
Para a versão 2012-02-12 e anterior, o formato do corpo do pedido é o seguinte:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>version-number</Version>
<Delete>true|false</Delete>
<Read>true|false</Read>
<Write>true|false</Write>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Logging>
<Metrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Metrics>
</StorageServiceProperties>
Para a versão 2013-08-15 e posterior, o formato do corpo do pedido é o seguinte:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>version-number</Version>
<Delete>true|false</Delete>
<Read>true|false</Read>
<Write>true|false</Write>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Logging>
<HourMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</HourMetrics>
<MinuteMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</MinuteMetrics>
<Cors>
<CorsRule>
<AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>
<AllowedMethods>comma-separated-list-of-HTTP-verb</AllowedMethods>
<MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>
<ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>
<AllowedHeaders> comma-separated-list-of-request-headers </AllowedHeaders>
</CorsRule>
</Cors>
</StorageServiceProperties>
A partir da versão 2013-08-15, pode ligar Set Table Service Properties
com um ou mais elementos de raiz especificados no corpo do pedido. Os elementos de raiz incluem:
Logging
HourMetrics
MinuteMetrics
Cors
Já não é necessário especificar todos os elementos raiz no pedido. Se omitir um elemento raiz, as definições existentes do serviço para essa funcionalidade serão preservadas. No entanto, se especificar um elemento raiz, tem de especificar todos os elementos subordinados para esse elemento.
A tabela seguinte descreve os elementos do corpo do pedido:
Nome do elemento | Descrição |
---|---|
Logging |
Opcional para a versão 2013-08-15 e posterior. Necessário para versões anteriores. Agrupa as definições de Análise de ArmazenamentoLogging . |
Metrics |
Necessário para a versão 2012-02-12 e anterior. Não aplicável para a versão 2013-08-15 e posterior. Agrupa as definições de Análise de ArmazenamentoMetrics . As Metrics definições fornecem um resumo das estatísticas de pedidos agrupadas pela API em agregados por hora para tabelas. |
HourMetrics |
Opcional para a versão 2013-08-15 e posterior. Não aplicável a versões anteriores. Agrupa as definições de Análise de ArmazenamentoHourMetrics . As HourMetrics definições fornecem um resumo das estatísticas de pedidos agrupadas pela API em agregados por hora para tabelas. |
MinuteMetrics |
Opcional para a versão 2013-08-15 e posterior. Não aplicável a versões anteriores. Agrupa as definições de Análise de ArmazenamentoMinuteMetrics . As MinuteMetrics definições fornecem estatísticas de pedidos para cada minuto para tabelas. Para versões anteriores a 2013-08-15, MinuteMetrics não está incluído no corpo da resposta. |
Version |
Obrigatório. Indica a versão do Análise de Armazenamento a configurar. |
Delete |
Obrigatório. Aplica-se apenas à configuração de registo. Indica se todos os pedidos de eliminação devem ser registados. |
Read |
Obrigatório. Aplica-se apenas à configuração de registo. Indica se todos os pedidos de leitura devem ser registados. |
Write |
Obrigatório. Aplica-se apenas à configuração de registo. Indica se todos os pedidos de escrita devem ser registados. |
Enabled |
Obrigatório. Indica se as métricas estão ativadas para o serviço de Armazenamento do Azure. Se a replicação georredundante de acesso de leitura estiver ativada, as métricas primárias e secundárias são recolhidas. Se a replicação georredundante de acesso de leitura não estiver ativada, apenas são recolhidas métricas primárias. |
IncludeAPIs |
Necessário apenas se as métricas estiverem ativadas. Aplica-se apenas à configuração de métricas. Indica se as métricas devem gerar estatísticas de resumo para as operações de API denominadas. |
RetentionPolicy/Enabled |
Obrigatório. Indica se uma política de retenção está ativada para o serviço de Armazenamento do Azure. |
RetentionPolicy/Days |
Necessário apenas se uma política de retenção estiver ativada. Indica o número de dias em que as métricas ou os dados de registo devem ser retidos. Todos os dados mais antigos que este valor serão eliminados. O valor mínimo que pode especificar é 1 . O maior valor é 365 (um ano). |
Cors |
Opcional. Suportado para a versão 2013-08-15 e posterior. Agrupa todas as regras CORS. Omitindo este grupo de elementos não substituirá as definições CORS existentes. |
CorsRule |
Opcional. Especifica uma regra CORS para o Armazenamento de Tabelas. Pode incluir até cinco elementos CorsRule no pedido. Se não CorsRule forem incluídos elementos no corpo do pedido, todas as regras CORS serão eliminadas e o CORS será desativado para o Armazenamento de Tabelas. |
AllowedOrigins |
Necessário se CorsRule o elemento estiver presente. Fornece uma lista separada por vírgulas de domínios de origem que serão permitidos através * do CORS ou que contém para permitir todos os domínios. Um domínio de origem também pode incluir um caráter universal no subdomínio para permitir pedidos através do CORS para todos os subdomínios de um domínio. Limitado a 64 domínios de origem. Cada origem permitida pode ter até 256 carateres. |
ExposedHeaders |
Necessário se o CorsRule elemento estiver presente. Fornece uma lista separada por vírgulas de cabeçalhos de resposta para expor aos clientes CORS. Limitado a 64 cabeçalhos definidos e dois cabeçalhos com prefixo. Cada cabeçalho pode ter até 256 carateres. |
MaxAgeInSeconds |
Necessário se o CorsRule elemento estiver presente. Indica o número de segundos em que o cliente ou browser deve colocar em cache uma resposta de verificação prévia. |
AllowedHeaders |
Necessário se o CorsRule elemento existir. Fornece uma lista separada por vírgulas de cabeçalhos permitidos para fazer parte do pedido de várias origens. Limitado a 64 cabeçalhos definidos e 2 cabeçalhos com prefixo. Cada cabeçalho pode ter até 256 carateres. |
AllowedMethods |
Necessário se o CorsRule elemento existir. Fornece uma lista separada por vírgulas de métodos HTTP que a origem tem permissão para executar. Para o Armazenamento do Azure, os métodos permitidos são DELETE , GET , HEAD , MERGE , POST , OPTIONS e PUT . |
Resposta
A resposta inclui um código de estado HTTP, um conjunto de cabeçalhos de resposta e um corpo de resposta.
Código de estado
Uma operação bem-sucedida devolve o código de estado 202 (Aceite).
Cabeçalhos de resposta
A resposta para esta operação inclui os seguintes cabeçalhos. A resposta também pode incluir cabeçalhos HTTP padrão adicionais. Todos os cabeçalhos padrão estão em conformidade com a especificação do protocolo HTTP/1.1.
Cabeçalho de resposta | Descrição |
---|---|
x-ms-request-id |
Especifica um valor que identifica exclusivamente um pedido feito relativamente ao serviço. |
x-ms-version |
Especifica a versão da operação utilizada para a resposta. Para obter mais informações, veja Controlo de versões dos serviços de Armazenamento do Azure. |
x-ms-client-request-id |
Pode ser utilizado para resolver problemas de pedidos e respostas correspondentes. O valor deste cabeçalho é igual ao valor do x-ms-client-request-id cabeçalho, se estiver presente no pedido e o valor for, no máximo, 1024 carateres ASCII visíveis. Se o x-ms-client-request-id cabeçalho não estiver presente no pedido, este cabeçalho não estará presente na resposta. |
Corpo da resposta
Nenhum.
Autorização
Apenas o proprietário da conta pode chamar esta operação.
Observações
As seguintes restrições e limitações aplicam-se às regras CORS no Armazenamento do Azure:
Pode armazenar um máximo de cinco regras.
O tamanho máximo de todas as definições de regras CORS no pedido, excluindo etiquetas XML, não deve exceder 2 KiB.
O comprimento de um cabeçalho permitido, cabeçalho exposto ou origem permitida não deve exceder os 256 carateres.
Os cabeçalhos permitidos e os cabeçalhos expostos podem ser:
Cabeçalhos literais onde é fornecido o nome exato do cabeçalho, como
x-ms-meta-processed
. Pode especificar um máximo de 64 cabeçalhos literais no pedido.Cabeçalhos com prefixo onde é fornecido um prefixo do cabeçalho, como
x-ms-meta-data\
. Especificar um prefixo desta forma permite ou expõe qualquer cabeçalho que comece com esse prefixo. Pode especificar um máximo de dois cabeçalhos com prefixo no pedido.
Os métodos (ou verbos HTTP) especificados no elemento têm de estar em
AllowedMethods
conformidade com os métodos suportados pelas APIs do serviço de Armazenamento do Azure. Os métodos suportados são , , , , ,POST
ePUT
OPTIONS
.MERGE
HEAD
GET
DELETE
Especificar regras CORS no pedido é opcional. Se chamar Set Table Service Properties
sem especificar o Cors
elemento no corpo do pedido, serão mantidas quaisquer regras CORS existentes.
Para desativar o CORS, chame Set Table Service Properties
com definições de regras CORS vazias (por exemplo, </Cors>
) e sem regras CORS internas. Esta chamada elimina todas as regras existentes e desativa o CORS para o Armazenamento de Tabelas.
Todos os elementos da regra CORS são necessários se especificar o CorsRule
elemento . Se algum elemento estiver em falta, o pedido falhará com o código de erro 400 (Pedido Incorreto).
A partir da versão 2013-08-15, os elementos das definições XML são opcionais. Pode atualizar um elemento específico ao enviar XML que contém apenas o elemento atualizado e não afeta outras definições.
Para obter informações detalhadas sobre as regras CORS e a lógica de avaliação, veja Suporte cors para os serviços de Armazenamento do Azure.
Pedido e resposta de exemplo
O URI de exemplo seguinte faz um pedido para alterar as propriedades do Armazenamento de Tabelas para a conta de armazenamento fictícia com o nome myaccount:
PUT https://myaccount.table.core.windows.net/?restype=service&comp=properties HTTP/1.1
O pedido é enviado com os seguintes cabeçalhos:
x-ms-version: 2013-08-15
x-ms-date: Mon, 21 Oct 2013 04:38:23 GMT
Authorization: SharedKey
myaccount:Z1lTLDwtq5o1UYQluucdsXk6/iB7YxEu0m6VofAEkUE=
Host: myaccount.table.core.windows.net
O pedido é enviado com o seguinte corpo XML:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>1.0</Version>
<Delete>true</Delete>
<Read>false</Read>
<Write>true</Write>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</Logging>
<HourMetrics>
<Version>1.0</Version>
<Enabled>true</Enabled>
<IncludeAPIs>false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</HourMetrics>
<MinuteMetrics>
<Version>1.0</Version>
<Enabled>true</Enabled>
<IncludeAPIs>true</IncludeAPIs>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</MinuteMetrics>
<Cors>
<CorsRule>
<AllowedOrigins> http://www.fabrikam.com,http://www.contoso.com</AllowedOrigins>
<AllowedMethods>GET,PUT</AllowedMethods>
<MaxAgeInSeconds>500</MaxAgeInSeconds>
<ExposedHeaders>x-ms-meta-data*,x-ms-meta-customheader</ExposedHeaders>
<AllowedHeaders>x-ms-meta-target*,x-ms-meta-customheader</AllowedHeaders>
</CorsRule>
</Cors>
</StorageServiceProperties>
Depois de o pedido ser enviado, é devolvida a seguinte resposta:
HTTP/1.1 202 Accepted
Connection: Keep-Alive
Transfer-Encoding: chunked
Date: Mon, 21 Oct 2013 04:38:24 GMT
Server: Windows-Azure-Table/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: cb939a31-0cc6-49bb-9fe5-3327691f2a30
x-ms-version: 2013-08-15