DocumentDB - Conectar conta
Quando você começa a programar no Banco de Dados de Documentos, a primeira etapa é conectar. Portanto, para se conectar à sua conta do Banco de Dados de Documentos, você precisará de duas coisas;
- Endpoint
- Chave de Autorização
Endpoint
Endpoint é o URL para sua conta do Banco de Dados de Documentos e é construído combinando o nome da conta do Banco de Dados de Documentos com .documents.azure.com. Vamos para o painel.
Agora, clique na conta do Banco de Dados de Documentos criada. Você verá os detalhes conforme mostrado na imagem a seguir.
Quando você seleciona a opção 'Chaves', ela exibe informações adicionais, conforme mostrado na imagem a seguir. Você também verá o URL de sua conta do Banco de Dados de Documentos, que pode ser usado como seu terminal.
Chave de Autorização
A chave de autorização contém suas credenciais e existem dois tipos de chaves. A chave mestra permite acesso total a todos os recursos da conta, enquanto os tokens de recursos permitem acesso restrito a recursos específicos.
Chaves Mestras
Não há nada que você não possa fazer com uma chave mestra. Você pode explodir seu banco de dados inteiro se quiser, usando a chave mestra.
Por esse motivo, você definitivamente não deseja compartilhar a chave mestra ou distribuí-la para ambientes de cliente. Como medida de segurança adicional, é uma boa ideia alterá-lo com frequência.
Na verdade, existem duas chaves mestras para cada conta de banco de dados, a primária e a secundária, conforme destacado na captura de tela acima.
Tokens de recursos
Você também pode usar tokens de recursos em vez de uma chave mestra.
As conexões baseadas em tokens de recursos podem acessar apenas os recursos especificados pelos tokens e nenhum outro recurso.
Os tokens de recursos são baseados nas permissões do usuário, portanto, primeiro você cria um ou mais usuários, e estes são definidos no nível do banco de dados.
Você cria uma ou mais permissões para cada usuário, com base nos recursos que deseja permitir que cada usuário acesse.
Cada permissão gera um token de recurso que permite acesso somente leitura ou total a um determinado recurso e que pode ser qualquer recurso de usuário no banco de dados.
Vamos para o aplicativo de console criado no capítulo 3.
Step 1 - Adicione as seguintes referências no arquivo Program.cs.
using Microsoft.Azure.Documents;
using Microsoft.Azure.Documents.Client;
using Microsoft.Azure.Documents.Linq;
using Newtonsoft.Json;
Step 2- Agora adicione o URL do endpoint e a chave de autorização. Neste exemplo, usaremos a chave primária como chave de autorização.
Observe que, no seu caso, o URL do endpoint e a chave de autorização devem ser diferentes.
private const string EndpointUrl = "https://azuredocdbdemo.documents.azure.com:443/";
private const string AuthorizationKey =
"BBhjI0gxdVPdDbS4diTjdloJq7Fp4L5RO/StTt6UtEufDM78qM2CtBZWbyVwFPSJIm8AcfDu2O+AfV T+TYUnBQ==";
Step 3 - Crie uma nova instância do DocumentClient na tarefa assíncrona chamada CreateDocumentClient e instancie o novo DocumentClient.
Step 4 - Chame sua tarefa assíncrona de seu método Main.
A seguir está o arquivo Program.cs completo até agora.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Azure.Documents;
using Microsoft.Azure.Documents.Client;
using Microsoft.Azure.Documents.Linq;
using Newtonsoft.Json;
namespace DocumentDBDemo {
class Program {
private const string EndpointUrl = "https://azuredocdbdemo.documents.azure.com:443/";
private const string AuthorizationKey = "BBhjI0gxdVPdDbS4diTjdloJq7Fp4L5RO/
StTt6UtEufDM78qM2CtBZWbyVwFPSJIm8AcfDu2O+AfV T+TYUnBQ==";
static void Main(string[] args) {
try {
CreateDocumentClient().Wait();
} catch (Exception e) {
Exception baseException = e.GetBaseException();
Console.WriteLine("Error: {0}, Message: {1}", e.Message, baseException.Message);
}
Console.ReadKey();
}
private static async Task CreateDocumentClient() {
// Create a new instance of the DocumentClient
var client = new DocumentClient(new Uri(EndpointUrl), AuthorizationKey);
}
}
}
Neste capítulo, aprendemos como se conectar a uma conta DocumentDB e criar uma instância da classe DocumentClient.