Criar um certificado SSL
Este artigo descreve como gerar e instalar certificados SSL (Secure Sockets Layer) para visuais do Power BI.
Para os procedimentos do Windows, macOS X e Linux, você deve ter o pacote pbiviz
do Power BI Visual Tools instalado. Confira mais informações em Configurar seu ambiente para desenvolver um visual do Power BI.
Criar um certificado no Windows
Para gerar um certificado usando o cmdlet New-SelfSignedCertificate
do PowerShell no Windows 8 ou posterior, execute o seguinte comando:
pbiviz --install-cert
Para o Windows 7, a ferramenta pbiviz
requer que o utilitário OpenSSL esteja disponível na linha de comando. Para instalar o OpenSSL, acesse OpenSSL ou Binários OpenSSL.
Criar um certificado no macOS X
O utilitário OpenSSL geralmente está disponível no sistema operacional macOS X.
Você também pode instalar o utilitário OpenSSL executando um dos seguintes comandos:
Do gerenciador de pacotes do Brew:
brew install openssl brew link openssl --force
Usando MacPorts:
sudo port install openssl
Depois de instalar o utilitário OpenSSL, execute o seguinte comando para gerar um novo certificado:
pbiviz --install-cert
Criar um certificado no Linux
O utilitário OpenSSL geralmente está disponível no sistema operacional Linux.
Antes de começar, execute os seguintes comandos para garantir que openssl
e certutil
estejam instalados:
which openssl
which certutil
Se openssl
e certutil
não estiverem instalados, instale os utilitários openssl
e libnss3
.
Criar o arquivo de configuração de SSL
Crie um arquivo chamado /tmp/openssl.cnf que contenha o seguinte texto:
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names
[ alt_names ]
DNS.1=localhost
Gerar autoridade de certificado raiz
Para gerar a autoridade de certificado raiz (AC) para assinar certificados locais, execute os seguintes comandos:
touch $HOME/.rnd
openssl req -x509 -nodes -new -sha256 -days 1024 -newkey rsa:2048 -keyout /tmp/local-root-ca.key -out /tmp/local-root-ca.pem -subj "/C=US/CN=Local Root CA/O=Local Root CA"
openssl x509 -outform pem -in /tmp/local-root-ca.pem -out /tmp/local-root-ca.crt
Gerar um certificado para o localhost
Para gerar um certificado para localhost
usando a AC gerada e openssl.cnf, execute os seguintes comandos:
PBIVIZ=`which pbiviz`
PBIVIZ=`dirname $PBIVIZ`
PBIVIZ="$PBIVIZ/../lib/node_modules/powerbi-visuals-tools/certs"
# Make sure that $PBIVIZ contains the correct certificate directory path. ls $PBIVIZ should list 'blank' file.
openssl req -new -nodes -newkey rsa:2048 -keyout $PBIVIZ/PowerBIVisualTest_private.key -out $PBIVIZ/PowerBIVisualTest.csr -subj "/C=US/O=PowerBI Visuals/CN=localhost"
openssl x509 -req -sha256 -days 1024 -in $PBIVIZ/PowerBIVisualTest.csr -CA /tmp/local-root-ca.pem -CAkey /tmp/local-root-ca.key -CAcreateserial -extfile /tmp/openssl.cnf -out $PBIVIZ/PowerBIVisualTest_public.crt
Adicionar certificados de raiz
Para adicionar um certificado raiz ao banco de dados do navegador Chrome, execute:
certutil -A -n "Local Root CA" -t "CT,C,C" -i /tmp/local-root-ca.pem -d sql:$HOME/.pki/nssdb
Para adicionar um certificado raiz ao banco de dados do navegador Mozilla Firefox, execute:
for certDB in $(find $HOME/.mozilla* -name "cert*.db")
do
certDir=$(dirname ${certDB});
certutil -A -n "Local Root CA" -t "CT,C,C" -i /tmp/local-root-ca.pem -d sql:${certDir}
done
Para adicionar um certificado raiz de todo o sistema, execute:
sudo cp /tmp/local-root-ca.pem /usr/local/share/ca-certificates/
sudo update-ca-certificates
Remover certificados raiz
Para remover um certificado raiz, execute:
sudo rm /usr/local/share/ca-certificates/local-root-ca.pem
sudo update-ca-certificates --fresh
Gerar um certificado manualmente
Você também pode gerar um certificado SSL manualmente usando o OpenSSL. Você pode especificar quaisquer ferramentas para gerar seus certificados.
Se o utilitário OpenSSL já estiver instalado, gere um novo certificado executando:
openssl req -x509 -newkey rsa:4096 -keyout PowerBIVisualTest_private.key -out PowerBIVisualTest_public.crt -days 365
Normalmente, você pode encontrar os certificados do servidor Web do PowerBI-visuals-tools
executando um dos seguintes comandos:
Para a instância global das ferramentas:
%appdata%\npm\node_modules\PowerBI-visuals-tools\certs
Para a instância local das ferramentas:
<Power BI visual project root>\node_modules\PowerBI-visuals-tools\certs
Formato PEM
Se você usar o formato de certificado Privacy Enhanced Mail (PEM), salve o arquivo de certificado como PowerBIVisualTest_public.crt e salve a chave privada como PowerBIVisualTest_private.key.
Formato PFX
Se você usar o formato de certificado Personal Information Exchange (PFX), salve o arquivo de certificado como PowerBIVisualTest_public.pfx.
Se o arquivo de certificado PFX exigir uma senha:
No arquivo de configuração, especifique:
\PowerBI-visuals-tools\config.json
Na seção
server
, especifique a senha substituindo o espaço reservado <SUA FRASE SECRETA>:"server":{ "root":"webRoot", "assetsRoute":"/assets", "privateKey":"certs/PowerBIVisualTest_private.key", "certificate":"certs/PowerBIVisualTest_public.crt", "pfx":"certs/PowerBIVisualTest_public.pfx", "port":"8080", "passphrase":"<YOUR PASSPHRASE>" }