Artigo original publicado no domingo, 16 de setembro de 2012

Em meu post sobre o uso do SharePoint nos serviços de IaaS do Azure (http://blogs.msdn.com/b/sharepoint_br/archive/2012/07/23/criando-um-vm-persistente-no-azure-para-um-farm-do-sharepoint-isolado.aspx), um dos meus amigos – Mike Taghizadeh, que exige ser citado   :-)  – percebeu que eu não tinha instruções sobre como criar um certificado e usá-lo com a ferramenta de linha de comando csupload. Por isso, para ajudar àqueles que possam ter problemas, falarei rapidamente a respeito desse processo aqui.

Para começar, o modo mais fácil de criar um certificado que você pode usar para essa finalidade é abrir o Gerenciador do IIS no Windows 7 ou Windows Server 2008 ou posterior e criar um certificado autoassinado ali. Você pode encontrá-lo no Gerenciador do IIS clicando no nome do servidor e clicando duas vezes em Certificados do Servidor no painel central. Isso mostra todos os certificados instalados. No painel de tarefas à direita, você verá uma opção para Criar Certificado Autoassinado…

Após a criação do certificado, você precisará exportá-lo duas vezes, uma vez com a chave privada e outra sem ela. O motivo disso é porque você deve realizar upload do certificado no Azure sem a chave privada. O certificado com a chave privada deve ser adicionado ao repositório pessoal de certificados no computador em que você está fazendo a conexão com o Azure com csupload. Quando você cria o certificado no Gerenciador do IIS, ele coloca o certificado no repositório pessoal da máquina, e é por isso que você deve exportá-lo e adicioná-lo a seu próprio repositório pessoal.

A exportação dos certificados é bastante simples. Basta clicar nele no Gerenciador do IIS e, em seguida, clicar na guia Detalhes das propriedades do certificado e no botão Copiar para Arquivo… . Estou certo de que você pode usar o assistente para descobrir como exportá-lo com e sem a chave privada. Após realizar a exportação com a chave privada (o arquivo .pfx), abra o snap-in MMC dos Certificados e importe-o para no repositório pessoal de sua conta de usuário. Para a exportação sem a chave privada, basta navegar até o portal do Azure e realizar o upload dele alo. Convém clicar no link Serviços Hospedados, Contas de Armazenamento e CDN no painel de navegação inferior esquerdo e clicar em Certificados de Armazenamento no painel de navegação superior esquerdo. Observe que, caso você não consiga visualizar essas opções de navegação, é provável que você esteja visualizando o novo portal de gerenciamento do Azure. Nesse caso, será necessário voltar ao portal de gerenciamento do Azure atual. Para isso, passe o cursor do mouse sobre o botão de VISUALIZAÇÃO verde, na parte superior central da página, e clique no link que o leva ao portal anterior.

Quando estiver na seção Certificados de Gerenciamento, você poderá fazer upload do certificado exportado (o arquivo .cer). A parte boa de agir desse modo é que você também pode copiar a ID de assinatura e a impressão digital do certificado diretamente do portal. Você precisará delas ao criar a cadeia de conexão para csupload. Se você clicar na assinatura ou no certificado, verá esses valores no painel de informações à direita no portal de gerenciamento do Azure. Após copiar os valores, você poderá vincula-los a uma cadeia de conexão para csupload da seguinte maneira:

csupload Set-Connection SubscriptionID=yourSubscriptionID;CertificateThumbprint=yourThumbprint;ServiceManagementEndpoint=https://management.core.windows.net

Após isso, você já poderá começar a usar csupload. Caso seja exibida a seguinte mensagem de erro: “Não é possível acessar o certificado especificado na cadeia de conexão. Verifique se o certificado está instalado e acessível. Não é possível encontrar uma cadeia de conexão.”, significa que não é possível encontrar o certificado no repositório pessoal de certificados de seu usuário. Certifique-se de ter feito o upload do arquivo .pfx nele e tente novamente.

 

Este é um post traduzido. O artigo original está em Creating and Using a Certificate for the CSUpload Tool with Azure IaaS Services