Azure Data Studio – Azure-kapcsolat

Az Azure Data Studio alapértelmezés szerint a Microsoft Authentication Library (MSAL) használatával szerez be hozzáférési jogkivonatot a Microsoft Entra ID-ból. A Microsoft Entra-hitelesítésre vonatkozó beállításokat, valamint a gyakran előforduló problémákat és azok megoldásait tárgyaljuk.

Megjegyzés:

Bár a Microsoft Entra ID az Azure Active Directory (Azure AD) új neve, a meglévő környezetek megzavarásának megakadályozása érdekében az Azure AD továbbra is megmarad néhány rögzített elemben, például felhasználói felületi mezőkben, kapcsolatszolgáltatókban, hibakódokban és parancsmagokban. Ebben a cikkben a két név felcserélhető.

Azure: Hitelesítési kódtár

Ez a beállítás csak az Azure Data Studio 1.41 és 1.45 között érhető el. Az Azure Data Studio 1.46-os és újabb verzióiban már nem érhető el.

Ez a beállítás szabályozza az Azure Data Studio által a Microsoft Entra-fiók hozzáadásakor használt hitelesítési kódtárat. A Microsoft Authentication Library (MSAL) az OAuth 2.0 és az OpenID Csatlakozás (OIDC) 1.0 szabványnak megfelelő implementációit használó hitelesítési és engedélyezési szolgáltatásokat kínál. További információ a Microsoft Authentication Library (MSAL) szolgáltatásról. Az Azure Data Studio 1.46-os és újabb verzióiban az MSAL az egyetlen használatban lévő kódtár, mivel az ADAL (Active Directory Authentication Library) elavult.

Azure-hitelesítési módszer

Az Azure Data Studio az alábbi módokon támogatja a Microsoft Entra többtényezős hitelesítést (MFA):

  • Kód megadása hitelesítés használata (alapértelmezés szerint engedélyezve)
  • Eszközkód-hitelesítés használata

Azure > Auth-fiókok>: Kód megadása

Settings.json

"accounts.azure.auth.codeGrant": true

Screenshot of Azure authentication Code Grant option.

A Code Grant metódus ellenőrzésekor a rendszer kéri a felhasználókat, hogy böngészőalapú hitelesítéssel hitelesítsék magukat. A beállítás alapértelmezés szerint engedélyezett.

Azure Auth-fiókok >> : Eszközkód

Settings.json

"accounts.azure.auth.deviceCode": true

Screenshot of Azure authentication Device Code option.

Ha az Eszközkód metódus engedélyezve van, a felhasználók egy kódot és egy URL-címet is megkapnak, amelyet aztán használhatnak a bejelentkezéshez.

Ha mindkét beállítás be van jelölve, a rendszer a Microsoft Entra-fiók hozzáadásakor a két hitelesítési mód egyikének kiválasztására kéri a felhasználókat.

Azure-felhőkonfiguráció

Az Azure Data Studio támogatja a Microsoft Entra hitelesítést nemzeti felhőkkel. Az Azure Public Cloud alapértelmezés szerint engedélyezve van, de a felhasználók szükség szerint engedélyezhetik a többi nemzeti felhőt:

Settings.json

"accounts.azure.cloud.enableChinaCloud": false,
"accounts.azure.cloud.enablePublicCloud": true,
"accounts.azure.cloud.enableUsGovCloud": false

Screenshot of Azure authentication National Clouds.

Egyéni felhővégpontok is definiálhatók. Lásd: Egyéni felhővégpontok konfigurálása.

Azure-erőforráskonfiguráció

Ezek a beállítások szűrőket alkalmaznak az Azure-erőforrásokra és a bérlőkre.

  • Erőforráskonfigurációs szűrő: Belefoglalási szűrőt alkalmaz a megjelenítendő erőforrásokra.
  • Bérlőkonfigurációs szűrő: Kizárási szűrőt alkalmaz azokra a bérlőkre, amelyeket figyelmen kívül kell hagyni.

Settings.json

"azure.resource.config.filter": [],
"azure.tenant.config.filter": [
    "313b5f9e-9b92-414c-8d87-a317e42d0222"
]

Screenshot of Azure authentication resource configuration options.

A Microsoft Entra-hitelesítés proxybeállítása

Ha az Azure Data Studio-t proxy mögött használja, a felhasználóknak meg kell adniuk az Azure Data Studio proxybeállításait a külső végpontokkal való kommunikációhoz. Az Azure Data Studióhoz kétféleképpen adhat meg proxybeállításokat:

  • Proxykonfiguráció beállítása az Azure Data Studióban (Gépház > Http: Proxy Gépház)
  • Környezeti változók beállítása proxykonfigurációhoz

Az Azure Data Studio beállításai elsőbbséget élveznek a környezeti változókkal szemben.

Az Azure Data Studio proxybeállításai

A következő beállítások érhetők el az Azure Data Studióban:

Settings.json

"http.proxy": "https://userName@fqdn:yourPassword@yourProxyURL.com:8080",
"http.proxyStrictSSL": true,
"http.proxyAuthorization": "",
"http.proxySupport" : "override"

Screenshot of Azure authentication proxy settings.

Támogatott környezeti változók proxyhoz

  • 'HTTP_PROXY': 'http://userName@fqdn:yourPassword@yourProxyURL.com:8080'
  • 'HTTPS_PROXY': 'https://userName@fqdn:yourPassword@yourProxyURL.com:8080'

Engedélyezési lista URL-címei

Proxykörnyezetben előfordulhat, hogy a felhasználói alkalmazásoknak engedélyeznie kell az Azure Data Studio által használt meghatározott tartományokat. Azoknak a gazdagépneveknek a neve, amelyeken keresztül szükség lehet a kommunikációra, vagy engedélyezni szeretné a kommunikációt:

Nyilvános Azure

  • https://management.azure.com
  • https://login.microsoftonline.com/

Azure (US Government)

  • https://management.core.usgovcloudapi.net/
  • https://login.microsoftonline.us/

A 21Vianet által üzemeltetett Azure

  • https://management.core.chinacloudapi.cn/
  • https://login.partner.microsoftonline.cn/

Az engedélyezni kívánt URL-címek esetenként esetenként eltérőek lehetnek. Annak ellenőrzéséhez, hogy nem blokkolja-e az URL-címek közötti váltást, lépjen a Fejlesztői eszközök váltása súgóba>, és válassza a Hálózat lapot. A letiltott URL-címek megjelennek a listában, és előfordulhat, hogy engedélyeznie kell ezeknek az URL-címeknek a fiók sikeres hozzáadását.

Egyéni felhővégpontok konfigurálása

Az Azure Data Studio 1.46 támogatja az egyéni végpontok hozzáadását a nem nyilvános felhőkhöz.

Egyéni felhővégpontok hozzáadása

Nyissa meg a Gépház az Azure Data Studióban (Ctrl/Cmd + Shift + P), és írja be az Azure: Egyéni szolgáltató Gépház, majd válassza a Szerkesztés lehetőséget a settings.json fájlban, amely automatikusan megnyitja a fájlt, és hozzáadja a settings.json következőtazure.customProviderSettings:

Screenshot of azure.customProviderSettings added to settings.json file.

A végpont működéséhez a következő bejegyzések szükségesek:

  • host
  • clientId
  • scopes
  • sqlResource
  • microsoftResource
  • armResource
  • graphResource
  • azureStorageResource

Útmutatóként egy példa JSON-bejegyzés jelenik meg egy szolgáltatóhoz:

"azure.customProviderSettings": [
    {
        "name": "Azure Custom",
        "settings": {
            "metadata": {
                "displayName": "Azure Custom Cloud",
                "id": "azure_customCloud",
                "endpoints": {
                    "host": "https://hostendpoint.com/",
                    "clientId": "test",
                    "microsoftResource": "https://microsoftresource.com/",
                    "graphResource": "https://graphresource.com/",
                    "msGraphResource": "https://msgraphresource.com/",
                    "armResource": "https://armresource.com/",
                    "sqlResource": "https://sqlresource.net/",
                    "azureKeyVaultResource": "https://azurekeyvault.net/",
                    "azureLogAnalyticsResource": "https://azure.loganalytic.io/",
                    "azureStorageResource": {
                        "endpoint": "",
                        "endpointSuffix": ".azurestorage.net/"
                    },
                    "azureKustoResource": "https://kusto.net/",
                    "powerBiResource": "https://powerbi.net/",
                    "scopes": "https://management.net/scopes",
                    "portalEndpoint": "https://portal.azure.com"
                }
            }
        }
    }
]

A végpont hozzáadása után mentse a settings.json fájlt. Az Azure Data Studio értesíti önt az alkalmazás újbóli betöltéséről. Az újratöltés után értesítést kap arról, hogy az egyéni végpontok be lettek töltve:

Screenshot after reloading Azure Data Studio indicating custom endpoints have been loaded.

Ha ez az üzenet nem jelenik meg, ellenőrizze, hogy a végpont összes bejegyzése létezik-e, és ki van-e töltve.

Egyéni felhő hozzáadása után nyissa meg az Azure Linked Accounts panelt, és megjelenik az egyéni felhőnézet. Válassza a Fiók hozzáadása lehetőséget, és válassza ki a hitelesítési módot, ha a rendszer kéri. A rendszer a gazdavégpontra irányítja a hitelesítéshez.

Screenshot of a custom cloud provider in the Azure accounts pane.

Több egyéni felhőszolgáltató

Ugyanezzel a settings.json formátummal további felhőszolgáltatók is hozzáadhatók a fájlhoz.

"azure.customProviderSettings": [
    {
        "name": "Azure Custom",
        "settings": {
            "metadata": {
                "displayName": "Azure Custom Cloud",
                "id": "azure_customCloud",
                "endpoints": {
                    "host": "https://hostendpoint.com/",
                    "clientId": "test",
                    "microsoftResource": "https://microsoftresource.com/",
                    "graphResource": "https://graphresource.com/",
                    "msGraphResource": "https://msgraphresource.com/",
                    "armResource": "https://armresource.com/",
                    "sqlResource": "https://sqlresource.net/",
                    "azureKeyVaultResource": "https://azurekeyvault.net/",
                    "azureLogAnalyticsResource": "https://azure.loganalytic.io/",
                    "azureStorageResource": {
                        "endpoint": "",
                        "endpointSuffix": ".azurestorage.net/"
                    },
                    "azureKustoResource": "https://kusto.net/",
                    "powerBiResource": "https://powerbi.net/",
                    "scopes": "https://management.net/scopes",
                    "portalEndpoint": "https://portal.azure.com"
                }
            }
        }
    },
    {
        "name": "Azure Custom 2",
        "settings": {
            "metadata": {
                "displayName": "Azure Custom Cloud 2",
                "id": "azure_customCloud2",
                "endpoints": {
                    "host": "https://hostendpoint.com/",
                    "clientId": "test",
                    "microsoftResource": "https://microsoftresource.com/",
                    "graphResource": "https://graphresource.com/",
                    "msGraphResource": "https://msgraphresource.com/",
                    "armResource": "https://armresource.com/",
                    "sqlResource": "https://sqlresource.net/",
                    "azureKeyVaultResource": "https://azurekeyvault.net/",
                    "azureLogAnalyticsResource": "https://azure.loganalytic.io/",
                    "azureStorageResource": {
                        "endpoint": "",
                        "endpointSuffix": ".azurestorage.net/"
                    },
                    "azureKustoResource": "https://kusto.net/",
                    "powerBiResource": "https://powerbi.net/",
                    "scopes": "https://management.net/scopes",
                    "portalEndpoint": "https://portal.azure.com"
                }
            }
        }
    }
]

Gyakori hitelesítési problémák

Az Azure-fiók hozzáadásakor felmerülő lehetséges problémákat és megoldásokat tárgyaljuk.

Probléma: SSL-hiba a localhost oldalon (ERR_SSL_PROTOCOL_ERROR)

A felhasználók SSL-hibát tapasztalhatnak a fiókjukba való bejelentkezéskor. Ez a folyamat megnyit egy külső weblapot, amely localhostáltalában arra kéri a felhasználókat, hogy jelentkezzenek be a szokásos Microsoft-hitelesítési kéréseken keresztül. A lap URL-címe a következőhöz hasonló: http://localhost:50055/signin?nonce=...

Előfordulhat, hogy egyes böngészők úgy vannak beállítva, hogy automatikusan átirányítsák az összes http hivatkozást https, ami megszakítja ezt a folyamatot, mivel a weblapot kiszolgáló helyi kiszolgáló nem támogatja a https-t. Ha a címsorban lévő hivatkozás a következővel httpskezdődik, SSL-hibaüzenet jelenik meg, és az oldal nem tölthető be. Ebben az esetben az itt felsorolt kerülő megoldások megoldhatják a problémát.

URL-cím módosítása http-ra

Először módosítsa manuálisan az URL-címet a következőre https://http://: . A böngésző visszaállíthatja https-ra, ebben az esetben egy másik lehetőséggel kell próbálkoznia.

HSTS letiltása (HTTP szigorú átviteli biztonság)

Az Edge/Chrome böngészőkben letilthatja a HSTS-t a localhosthoz.

  1. Nyissa meg az Edge/Chrome böngészőt, és a címsorban írja be edge://net-internals/#hsts (vagy chrome://net-internals/#hsts Chrome-hoz).
  2. Görgessen a lap aljára, és a Delete domain security policies szakaszban írja be localhost és nyomja le Deletea billentyűt.

Ha ez befejeződött, be kell tudnia jelentkezni, és nem kell, hogy a böngésző automatikusan httpsátirányítsa a localhost hivatkozásokat.

Probléma: Nem lehet fiókot hozzáadni proxy mögött

Ha a felhasználói alkalmazás proxy mögötti környezetben fut, előfordulhat, hogy a felhasználó hitelesítése nem fejeződik be, és ezek a lépések használhatók a probléma megoldásához.

  1. Ellenőrizze újra a környezeti változókat és a http.proxybeállításokat az Azure Data Studióban. Ha a proxy felhasználói hitelesítést igényel, a http.proxy URL-címében szereplő felhasználónév/jelszó megadása megoldhatja a hitelesítési problémákat; ellenkező esetben az Azure Data Studio nem tudja beolvasni a bejelentkezett felhasználói hitelesítő adatokat. Másik lehetőségként megpróbálhatja más felhasználóként futtatni az Azure Data Studiót, mivel ez segíthet megoldani a proxyval kapcsolatos hitelesítési problémákat. Ez utóbbi azonban csak bizonyos helyzetekben működik.

  2. Az engedélyezendő URL-címek eseti alapon változhatnak. Ha ellenőrizni szeretné, hogy nem blokkolja-e az URL-címek használatát, lépjen a Fejlesztői eszközök váltása súgóba>, és válassza a Hálózat lapot. Itt láthatja azokat az URL-címeket, amelyek blokkolva vannak, és előfordulhat, hogy engedélyeznie kell a fiók sikeres hozzáadását.

  3. Törölje a jelet a Http: Proxy szigorú SSL jelölőnégyzetből. Lehetséges, hogy a proxytanúsítvány nem ellenőrizhető a megbízható hitelesítésszolgáltatók listájában. A szigorú SSL letiltása kizárhatja a proxytanúsítványt problémaként.

Befejezés:

Platformfüggetlen alkalmazásként az Azure Data Studio proxyfeloldása lekéri a proxyt az alkalmazáson belüli beállítástól vagy a környezeti változókon keresztül. A cél az, hogy elkerüljük a rendszerbeállításokkal való interakciót, ami jelentősen eltérhet a különböző operációs rendszereken.

Probléma: Az Azure Core-bővítmény le van tiltva

Az Azure Core-bővítmény egy beépített bővítmény az Azure Data Studióban. Győződjön meg arról, hogy nincs letiltva vagy véletlenül el lett távolítva. Ez a bővítmény szükséges a Microsoft Entra-fiókok hitelesítéséhez és az erőforrásokhoz való kapcsolódáshoz az MFA használatával.

Screenshot of built-in Azure Core extension.

Probléma: A rendszer hitelesítésszolgáltatói tanúsítványai lejártak

Az Azure Data Studio alapértelmezett viselkedése magában foglalja a rendszer legfelső szintű hitelesítésszolgáltatói tanúsítványainak érvényesítését a REST API-hívások HTTPS Protokoll használatával történő végrehajtásakor. Az ellenőrzés a http:systemCertificates beállítással van szabályozva, amely alapértelmezés szerint engedélyezve van:

Screenshot of system certificates setting.

"http.systemCertificates": true

Ha egy rendszer legfelső szintű hitelesítésszolgáltatói tanúsítványa lejárt, a Microsoft Entra-azonosítóra irányuló hitelesítési kérelmek sikertelenek, és a rendszer hibát rögzít az Azure-fióknaplókban:

error: certificate is expired

A hiba elhárításához távolítsa el a lejárt legfelső szintű hitelesítésszolgáltatói tanúsítványokat, vagy tiltsa le a beállítást, hogy ne érvényesítse a rendszertanúsítványokat.

Naplók rögzítése az Azure-hitelesítéshez

Az Azure Data Studio alapértelmezés szerint rögzíti a Microsoft Entra-fióktevékenység hibaeseményeit. A részletesebb nyomkövetések engedélyezéséhez a felhasználók módosíthatják ezeket a beállításokat:

Azure: Naplózási szint

Ez a beállítás konfigurálja a naplózási szintet az Azure Core-ból származó, az Azure Data Studióban rögzíthető információkhoz. Módosítsa részletesre vagy mindre a hitelesítési hibák diagnosztizálásához hasznos részletes naplók rögzítéséhez. További információkért tekintse meg az Azure Data Studio naplóit és helyét , ahol megtudhatja, hogyan rögzítheti a naplózási adatokat.

Settings.json

"azure.loggingLevel": "Verbose"

Screenshot of Azure authentication logging Level configuration.

Azure: PII-naplózás

A felhasználók helyi tesztelési és hibakeresési célból engedélyezhetik a PII-naplózást (személyazonosításra alkalmas adatok). Ez a beállítás lehetővé teszi a hitelesítési folyamat alaposabb naplózását, de bizalmas információkat tartalmazhat, például hozzáférési jogkivonatokat vagy felhasználói azonosítókat a Microsoft Entra-azonosítóval való hitelesítéskor. Mivel ez a naplózás bizalmas adatokat rögzít, a következőket javasoljuk:

  • Ne ossza meg ezeket a naplókat másokkal, különösen ha naplókat ad hozzá a GitHubhoz
  • A beállítás letiltása a szükséges információk összegyűjtése után
  • A beállítás letiltása után törölje a naplófájlokat

Settings.json

"azure.piiLogging": true

Screenshot of Azure authentication PII logging option.

Azure: Nincs rendszerkulcslánc

Ez a beállítás letiltja a rendszer kulcskarika-integrációját, hogy megakadályozza az ismétlődő kulcskarika-hozzáférési kéréseket a macOS rendszeren. A felhasználói hitelesítő adatokat a rendszer egy egyszerű fájlban tárolja a felhasználó kezdőlapján.

Settings.json

"azure.noSystemKeychain": true

Screenshot of Azure authentication keychain configuration.

A Microsoft Entra-fiók jogkivonat-gyorsítótárának törlése

Az Azure Data Studio fenntartja a hozzáférési jogkivonatok gyorsítótárát, hogy megakadályozza a jogkivonat-kérelmek szabályozását a Microsoft Entra ID-ra. Előfordulhat, hogy az Azure Data Studio jogkivonat-gyorsítótára elavult, ami megköveteli a lejárt hozzáférési jogkivonatok eltávolítását az alkalmazás-gyorsítótárból.

Futtassa ezt a parancsot a Parancskatalógusból (Ctrl/CMD + Shift + P) a csatolt Microsoft Entra-fiókok hozzáférési jogkivonatainak törléséhez:

Azure Accounts: Clear Azure Account Token Cache (accounts.clearTokenCache)

Az összes mentett Microsoft Entra-fiók törlése

Futtassa ezt a parancsot a Parancskatalógusból (Ctrl/CMD + Shift + P) az összes csatolt Microsoft Entra-fiók azure Data Studióból való eltávolításához:

Az összes mentett fiók törlése (clearSavedAccounts)