Tworzenie certyfikatu SSL
W tym artykule opisano sposób generowania i instalowania certyfikatów secure Sockets Layer (SSL) dla wizualizacji usługi Power BI.
W przypadku procedur systemu Windows, macOS X i Linux musisz mieć zainstalowany pakiet narzędzi Visual Tools pbiviz
usługi Power BI. Aby uzyskać więcej informacji, zobacz Konfigurowanie środowiska do tworzenia wizualizacji usługi Power BI.
Tworzenie certyfikatu w systemie Windows
Aby wygenerować certyfikat przy użyciu polecenia cmdlet New-SelfSignedCertificate
programu PowerShell w systemie Windows 8 lub nowszym, uruchom następujące polecenie:
pbiviz --install-cert
W przypadku systemu Windows 7 pbiviz
narzędzie wymaga, aby narzędzie OpenSSL było dostępne w wierszu polecenia. Aby zainstalować program OpenSSL, przejdź do pozycji Pliki binarne OpenSSL lub OpenSSL.
Tworzenie certyfikatu w systemie macOS X
Narzędzie OpenSSL jest zwykle dostępne w systemie operacyjnym macOS X.
Możesz również zainstalować narzędzie OpenSSL, uruchamiając jedną z następujących poleceń:
Z poziomu menedżera pakietów Brew:
brew install openssl brew link openssl --force
Za pomocą programu MacPorts:
sudo port install openssl
Po zainstalowaniu narzędzia OpenSSL uruchom następujące polecenie, aby wygenerować nowy certyfikat:
pbiviz --install-cert
Tworzenie certyfikatu w systemie Linux
Narzędzie OpenSSL jest zwykle dostępne w systemie operacyjnym Linux.
Przed rozpoczęciem uruchom następujące polecenia, aby upewnić się, że openssl
zostały certutil
zainstalowane:
which openssl
which certutil
Jeśli openssl
program i certutil
nie jest zainstalowany, zainstaluj openssl
narzędzia i libnss3
.
Tworzenie pliku konfiguracji SSL
Utwórz plik o nazwie /tmp/openssl.cnf zawierający następujący tekst:
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names
[ alt_names ]
DNS.1=localhost
Generowanie głównego urzędu certyfikacji
Aby wygenerować główny urząd certyfikacji w celu podpisania certyfikatów lokalnych, uruchom następujące polecenia:
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
Generowanie certyfikatu dla hosta lokalnego
Aby wygenerować certyfikat dla localhost
użycia wygenerowanego urzędu certyfikacji i openssl.cnf, uruchom następujące polecenia:
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
Dodawanie certyfikatów głównych
Aby dodać certyfikat główny do bazy danych przeglądarki Chrome, uruchom polecenie:
certutil -A -n "Local Root CA" -t "CT,C,C" -i /tmp/local-root-ca.pem -d sql:$HOME/.pki/nssdb
Aby dodać certyfikat główny do bazy danych przeglądarki Mozilla Firefox, uruchom polecenie:
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
Aby dodać certyfikat główny dla całego systemu, uruchom polecenie:
sudo cp /tmp/local-root-ca.pem /usr/local/share/ca-certificates/
sudo update-ca-certificates
Usuwanie certyfikatów głównych
Aby usunąć certyfikat główny, uruchom polecenie:
sudo rm /usr/local/share/ca-certificates/local-root-ca.pem
sudo update-ca-certificates --fresh
Ręczne generowanie certyfikatu
Certyfikat SSL można również wygenerować ręcznie przy użyciu protokołu OpenSSL. Możesz określić dowolne narzędzia do generowania certyfikatów.
Jeśli narzędzie OpenSSL jest już zainstalowane, wygeneruj nowy certyfikat, uruchamiając polecenie:
openssl req -x509 -newkey rsa:4096 -keyout PowerBIVisualTest_private.key -out PowerBIVisualTest_public.crt -days 365
Zazwyczaj certyfikaty serwera internetowego można znaleźć PowerBI-visuals-tools
, uruchamiając jedno z następujących poleceń:
W przypadku globalnego wystąpienia narzędzi:
%appdata%\npm\node_modules\PowerBI-visuals-tools\certs
W przypadku lokalnego wystąpienia narzędzi:
<Power BI visual project root>\node_modules\PowerBI-visuals-tools\certs
Format PEM
Jeśli używasz formatu certyfikatu Privacy Enhanced Mail (PEM), zapisz plik certyfikatu jako PowerBIVisualTest_public.crt i zapisz klucz prywatny jako PowerBIVisualTest_private.key.
Format PFX
Jeśli używasz formatu certyfikatu wymiany informacji osobistych (PFX), zapisz plik certyfikatu jako PowerBIVisualTest_public.pfx.
Jeśli plik certyfikatu PFX wymaga hasła:
W pliku konfiguracji określ:
\PowerBI-visuals-tools\config.json
server
W sekcji określ hasło, zastępując <symbol zastępczy YOUR PASSPHRASE>:"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>" }