Skonfiguruj tożsamość zarządzaną przez system (zalecaną) lub wygeneruj plik uwierzytelniania jednostki usługi.
Podczas walidacji komunikacji z usługą Azure NetApp Files komunikacja może zakończyć się niepowodzeniem lub przekroczeniem limitu czasu. Sprawdź, czy reguły zapory nie blokują ruchu wychodzącego z systemu z uruchomionym modułem AzAcSnap do następujących adresów i portów TCP/IP:
(https://)management.azure.com:443
(https://)login.microsoftonline.com:443
Musisz wygenerować własny certyfikat z podpisem własnym, a następnie udostępnić zawartość pliku PEM (Privacy Enhanced Mail) w usłudze Microsoft Operations, aby można było go zainstalować w zapleczu usługi Storage, aby umożliwić usłudze AzAcSnap bezpieczne uwierzytelnianie przy użyciu protokołu ONTAP.
Połącz PEM i KEY w jeden plik PKCS12, który jest wymagany przez moduł AzAcSnap do uwierzytelniania opartego na certyfikatach na serwerze ONTAP.
Przetestuj plik PKCS12 przy użyciu polecenia curl , aby nawiązać połączenie z jednym z węzłów.
Operacje firmy Microsoft udostępnia nazwę użytkownika magazynu i adres IP magazynu w momencie aprowizacji.
Włączanie komunikacji z magazynem
W tej sekcji wyjaśniono, jak włączyć komunikację z magazynem. Użyj poniższych kart, aby poprawnie wybrać zaplecze magazynu, którego używasz.
Istnieją dwa sposoby uwierzytelniania w usłudze Azure Resource Manager przy użyciu tożsamości zarządzanej przez system lub pliku jednostki usługi. Opcje są opisane tutaj.
Tożsamość zarządzana przez system platformy Azure
Z poziomu modułu AzAcSnap 9 można użyć tożsamości zarządzanej przez system zamiast jednostki usługi dla operacji. Użycie tej funkcji pozwala uniknąć konieczności przechowywania poświadczeń jednostki usługi na maszynie wirtualnej. Aby skonfigurować tożsamość zarządzaną platformy Azure przy użyciu usługi Azure Cloud Shell, wykonaj następujące kroki:
W ramach sesji usługi Cloud Shell z powłoką Bash użyj poniższego przykładu, aby odpowiednio ustawić zmienne powłoki i zastosować je do subskrypcji, w której chcesz utworzyć tożsamość zarządzaną platformy Azure. Ustaw SUBSCRIPTIONwartości , VM_NAMEi RESOURCE_GROUP na wartości specyficzne dla witryny.
Utwórz tożsamość zarządzaną dla maszyny wirtualnej. Następujące zestawy poleceń (lub pokazuje, czy jest już ustawiona) tożsamość zarządzana maszyny wirtualnej AzAcSnap:
az vm identity assign --name "${VM_NAME}" --resource-group "${RESOURCE_GROUP}"
Pobierz identyfikator podmiotu zabezpieczeń na potrzeby przypisywania roli:
PRINCIPAL_ID=$(az resource list -n ${VM_NAME} --query [*].identity.principalId --out tsv)
Przypisz rolę Współautor do identyfikatora podmiotu zabezpieczeń:
az role assignment create --assignee "${PRINCIPAL_ID}" --role "${ROLE}" --scope "${SCOPE}"
Opcjonalna kontrola dostępu oparta na rolach
Istnieje możliwość ograniczenia uprawnień dla tożsamości zarządzanej przy użyciu niestandardowej definicji roli w kontroli dostępu opartej na rolach (RBAC). Utwórz odpowiednią definicję roli dla maszyny wirtualnej, aby móc zarządzać migawkami. Przykładowe ustawienia uprawnień można znaleźć w temacie Porady i wskazówki dotyczące korzystania z narzędzia aplikacja systemu Azure Spójne migawki.
Następnie przypisz rolę do identyfikatora jednostki maszyny wirtualnej platformy Azure (wyświetlanego również jako SystemAssignedIdentity):
az role assignment create --assignee ${PRINCIPAL_ID} --role "AzAcSnap on ANF" --scope "${SCOPE}"
Generowanie pliku jednostki usługi
W sesji usługi Cloud Shell upewnij się, że zalogowano się w subskrypcji, w której chcesz domyślnie skojarzyć się z jednostką usługi:
az account show
Jeśli subskrypcja nie jest poprawna, użyj az account set polecenia :
az account set -s <subscription name or id>
Utwórz jednostkę usługi przy użyciu interfejsu wiersza polecenia platformy Azure, jak pokazano w tym przykładzie:
az ad sp create-for-rbac --name "AzAcSnap" --role Contributor --scopes /subscriptions/{subscription-id} --sdk-auth
Polecenie powinno wygenerować dane wyjściowe podobne do tego przykładu:
To polecenie automatycznie przypisuje rolę współautora RBAC do jednostki usługi na poziomie subskrypcji. Zakres można zawęzić do określonej grupy zasobów, w której testy będą tworzyć zasoby.
Wytnij i wklej zawartość wyjściową do pliku o nazwie azureauth.json przechowywanej w tym samym systemie co azacsnap polecenie. Zabezpiecz plik przy użyciu odpowiednich uprawnień systemowych.
Upewnij się, że format pliku JSON jest dokładnie taki, jak opisano w poprzednim kroku, z adresami URL ujętymi w podwójny cudzysłów (").
Ważne
Z poziomu modułu AzAcSnap 10 aplikacja communicatoin z usługą Azure Large Instance Storage używa interfejsu API REST za pośrednictwem protokołu HTTPS. Wersje wcześniejsze niż AzAcSnap 10 używają interfejsu wiersza polecenia za pośrednictwem protokołu SSH.
Interfejs API REST dużego wystąpienia platformy Azure za pośrednictwem protokołu HTTPS
Komunikacja z zapleczem magazynu odbywa się za pośrednictwem szyfrowanego kanału HTTPS przy użyciu uwierzytelniania opartego na certyfikatach. Poniższe przykładowe kroki zawierają wskazówki dotyczące konfigurowania certyfikatu PKCS12 dla tej komunikacji:
Wygeneruj pliki PEM i KEY.
Cn jest równa nazwie użytkownika svM, poproś microsoft Operations o tę nazwę użytkownika SVM.
W tym przykładzie używamy svmadmin01 jako nazwy użytkownika svM, zmodyfikuj to w razie potrzeby dla instalacji.
Generating a RSA private key
........................................................................................................+++++
....................................+++++
writing new private key to 'svmadmin01.key'
-----
Wyprowadź zawartość pliku PEM.
Zawartość pliku PEM jest używana do dodawania klienta-ca do maszyny wektorów nośnych.
! Wyślij zawartość pliku PEM do administratora infrastruktury Microsoft BareMetal Infrastructure (BMI).
Plik svmadmin01.p12 jest używany jako wartość certificateFile w sekcji aliStorageResource pliku konfiguracji AzAcSnap.
Przetestuj plik PKCS12 przy użyciu narzędzia curl.
Po otrzymaniu potwierdzenia od firmy Microsoft Operations zastosowali certyfikat do maszyny svM, aby zezwolić na logowanie oparte na certyfikatach, a następnie przetestują łączność z maszyną wektorów nośnych.
W tym przykładzie używamy pliku PKCS12 o nazwie svmadmin01.p12, aby nawiązać połączenie z hostem SVM "X.X.X.X.X".X" (ten adres IP zostanie udostępniony przez operację Firmy Microsoft).
Interfejs wiersza polecenia dużego wystąpienia platformy Azure za pośrednictwem protokołu SSH
Ostrzeżenie
Te instrukcje dotyczą wersji wcześniejszych niż AzAcSnap 10 i nie aktualizujemy już tej sekcji zawartości regularnie.
Komunikacja z zapleczem magazynu odbywa się za pośrednictwem zaszyfrowanego kanału SSH. Poniższe przykładowe kroki zawierają wskazówki dotyczące konfigurowania protokołu SSH dla tej komunikacji:
Zmodyfikuj plik /etc/ssh/ssh_config.
Zapoznaj się z następującymi danymi wyjściowymi, które zawierają MACs hmac-sha wiersz:
# RhostsRSAAuthentication no
# RSAAuthentication yes
# PasswordAuthentication yes
# HostbasedAuthentication no
# GSSAPIAuthentication no
# GSSAPIDelegateCredentials no
# GSSAPIKeyExchange no
# GSSAPITrustDNS no
# BatchMode no
# CheckHostIP yes
# AddressFamily any
# ConnectTimeout 0
# StrictHostKeyChecking ask
# IdentityFile ~/.ssh/identity
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# Port 22
Protocol 2
# Cipher 3des
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-
cbc
# MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd
MACs hmac-sha
# EscapeChar ~
# Tunnel no
# TunnelDevice any:any
# PermitLocalCommand no
# VisualHostKey no
# ProxyCommand ssh -q -W %h:%p gateway.example.com
Użyj następującego przykładowego polecenia, aby wygenerować parę kluczy prywatnych/publicznych. Nie wprowadzaj hasła podczas generowania klucza.
ssh-keygen -t rsa –b 5120 -C ""
Dane wyjściowe cat /root/.ssh/id_rsa.pub polecenia to klucz publiczny. Wyślij go do programu Microsoft Operations, aby narzędzia migawek mogły komunikować się z podsystemem magazynowania.