Azure Data Studio - Azure-connectiviteit
Azure Data Studio maakt standaard gebruik van de Microsoft Authentication Library (MSAL) om een toegangstoken van Microsoft Entra-id te verkrijgen. De instellingen die van toepassing zijn op Microsoft Entra-verificatie, worden besproken, samen met veelvoorkomende problemen en hun oplossingen.
Notitie
Hoewel Microsoft Entra ID de nieuwe naam is voor Azure Active Directory (Azure AD), om te voorkomen dat bestaande omgevingen worden onderbroken, blijft Azure AD in sommige hardcoded elementen, zoals ui-velden, verbindingsproviders, foutcodes en cmdlets. In dit artikel zijn de twee namen uitwisselbaar.
Azure: Verificatiebibliotheek
Deze instelling is alleen beschikbaar in Azure Data Studio 1.41 tot en met 1.45. Het is niet meer beschikbaar in Azure Data Studio 1.46 en nieuwere versies.
Met deze instelling bepaalt u de verificatiebibliotheek die door Azure Data Studio wordt gebruikt bij het toevoegen van een Microsoft Entra-account. Microsoft Authentication Library (MSAL) biedt verificatie- en autorisatieservices met behulp van standaard-compatibele implementaties van OAuth 2.0 en OpenID Connect (OIDC) 1.0. Meer informatie over Microsoft Authentication Library (MSAL). In Azure Data Studio 1.46 en latere versies is MSAL de enige bibliotheek die wordt gebruikt, omdat ADAL (Active Directory Authentication Library) is afgeschaft.
Verificatiemethode voor Azure
Azure Data Studio biedt ondersteuning voor Meervoudige Verificatie (MFA) van Microsoft Entra met behulp van de volgende modi:
- Verificatie voor code verlenen gebruiken (standaard ingeschakeld)
- Verificatie van apparaatcode gebruiken
> Azure-verificatie voor accounts>: codetoe kennen
Settings.json
"accounts.azure.auth.codeGrant": true
Wanneer de methode Code Grant is ingeschakeld, wordt gebruikers gevraagd om zich te verifiëren met verificatie op basis van een browser. Deze optie is standaard ingeschakeld.
Azure-verificatieaccounts > > : apparaatcode
Settings.json
"accounts.azure.auth.deviceCode": true
Wanneer de methode Apparaatcode is ingeschakeld, krijgen gebruikers een code en een URL om in te voeren die vervolgens kan worden gebruikt om u aan te melden.
Wanneer beide opties zijn ingeschakeld, wordt gebruikers gevraagd een van de twee verificatiemodi te selecteren bij het toevoegen van een Microsoft Entra-account.
Azure-cloudconfiguratie
Azure Data Studio biedt ondersteuning voor Microsoft Entra-verificatie met nationale clouds. Azure Public Cloud is standaard ingeschakeld, maar gebruikers kunnen indien nodig andere nationale clouds inschakelen:
Settings.json
"accounts.azure.cloud.enableChinaCloud": false,
"accounts.azure.cloud.enablePublicCloud": true,
"accounts.azure.cloud.enableUsGovCloud": false
Aangepaste cloudeindpunten kunnen ook worden gedefinieerd. Zie Aangepaste cloudeindpunten configureren.
Azure-resourceconfiguratie
Met deze instellingen worden filters toegepast op Azure-resources en -tenants.
- Resourceconfiguratiefilter: Hiermee past u een opnamefilter toe op resources die moeten worden weergegeven.
- Tenantconfiguratiefilter: Uitsluitingsfilter toepassen op tenants die moeten worden genegeerd.
Settings.json
"azure.resource.config.filter": [],
"azure.tenant.config.filter": [
"313b5f9e-9b92-414c-8d87-a317e42d0222"
]
Proxy-installatie voor Microsoft Entra-verificatie
Als u Azure Data Studio achter een proxy gebruikt, moeten gebruikers proxy-instellingen opgeven voor Azure Data Studio om te communiceren met externe eindpunten. Er zijn twee manieren om proxy-instellingen te bieden voor Azure Data Studio die u kunt gebruiken:
- Proxyconfiguratie instellen in Azure Data Studio (Instellingen > Http: Proxy-instellingen)
- Omgevingsvariabelen instellen voor proxyconfiguratie
Azure Data Studio-instellingen hebben voorrang op omgevingsvariabelen.
Proxy-instellingen voor Azure Data Studio
De volgende instellingen zijn beschikbaar in Azure Data Studio:
Settings.json
"http.proxy": "https://userName@fqdn:yourPassword@yourProxyURL.com:8080",
"http.proxyStrictSSL": true,
"http.proxyAuthorization": "",
"http.proxySupport" : "override"
Ondersteunde omgevingsvariabelen voor proxy
'HTTP_PROXY': 'http://userName@fqdn:yourPassword@yourProxyURL.com:8080'
'HTTPS_PROXY': 'https://userName@fqdn:yourPassword@yourProxyURL.com:8080'
Allowlist-URL's
In een proxyomgeving moeten gebruikerstoepassingen mogelijk specifieke domeinen toestaan die worden gebruikt door Azure Data Studio. Hostnamen waarmee u mogelijk communicatie nodig hebt of wilt toestaan, zijn:
Azure openbaar
https://management.azure.com
https://login.microsoftonline.com/
Azure (Amerikaanse overheid)
https://management.core.usgovcloudapi.net/
https://login.microsoftonline.us/
Azure beheerd door 21Vianet
https://management.core.chinacloudapi.cn/
https://login.partner.microsoftonline.cn/
De TOE te staan URL's kunnen soms per geval verschillen. Als u wilt controleren of u geen URL's blokkeert, gaat u naar Help-hulpprogramma's > voor ontwikkelaars in- en uitschakelen en selecteert u het tabblad Netwerk. Alle URL's die worden geblokkeerd, worden vermeld en mogelijk moet u toestaan dat deze URL's uw account kunnen toevoegen.
Aangepaste cloudeindpunten configureren
Azure Data Studio 1.46 introduceert ondersteuning voor het toevoegen van aangepaste eindpunten voor niet-openbare clouds.
Aangepaste cloudeindpunten toevoegen
Open Instellingen in Azure Data Studio (Ctrl/Cmd + Shift + P) en voer Azure: Aangepaste providerinstellingen in, selecteer vervolgens Bewerken in settings.json, waarmee het bestand automatisch wordt geopend en voegt u het settings.json
volgende toe azure.customProviderSettings
:
De volgende vermeldingen zijn vereist om het eindpunt te laten werken:
host
clientId
scopes
sqlResource
microsoftResource
armResource
graphResource
azureStorageResource
Een voorbeeld van een JSON-vermelding voor één provider wordt weergegeven als richtlijn:
"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"
}
}
}
}
]
Sla het bestand op nadat u het settings.json
eindpunt hebt toegevoegd. Azure Data Studio meldt u dat u de toepassing opnieuw wilt laden. Nadat het opnieuw is geladen, krijgt u een melding dat de aangepaste eindpunten zijn geladen:
Als dit bericht niet wordt weergegeven, controleert u of alle vermeldingen voor het eindpunt bestaan en worden ingevuld.
Nadat u een aangepaste cloud hebt toegevoegd, opent u het deelvenster Gekoppelde Azure-accounts en wordt de aangepaste cloudweergave weergegeven. Selecteer Een account toevoegen en kies de verificatiemodus als hierom wordt gevraagd. U wordt naar het hosteindpunt gebracht om te verifiëren.
Meerdere aangepaste cloudproviders
Aanvullende cloudproviders kunnen met dezelfde indeling aan het settings.json
bestand worden toegevoegd.
"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"
}
}
}
}
]
Veelvoorkomende verificatieproblemen
Mogelijke problemen en oplossingen bij het toevoegen van een Azure-account worden besproken.
Probleem: SSL-fout op de localhost-pagina (ERR_SSL_PROTOCOL_ERROR)
Gebruikers zien mogelijk een SSL-fout bij het aanmelden bij hun account. Met deze stroom wordt een externe webpagina geopend om localhost
gebruikers doorgaans te vragen zich aan te melden via de standaard microsoft-verificatieprompts. De URL voor deze pagina ziet er ongeveer als volgt uit http://localhost:50055/signin?nonce=...
Sommige browsers kunnen zo worden ingesteld dat alle http
koppelingen https
automatisch worden omgeleid, waardoor dit proces wordt verbroken omdat de lokale server die de webpagina bedient, https niet ondersteunt. Als de koppeling in de adresbalk begint https
, krijgt u een SSL-fout en kan de pagina niet worden geladen. In dat geval kunnen de hier vermelde tijdelijke oplossingen het probleem oplossen.
URL wijzigen in http
Wijzig eerst de URL handmatig van https://
in http://
. De browser kan deze weer wijzigen in https. In dat geval is het nodig om een andere optie uit te proberen.
HSTS uitschakelen (HTTP Strict Transport Security)
Voor Edge-/Chrome-browsers kunt u HSTS uitschakelen voor localhost.
- Open Edge/Chrome en typ
edge://net-internals/#hsts
(ofchrome://net-internals/#hsts
voor Chrome) in de adresbalk. - Schuif naar de onderkant van de pagina en druk in de
Delete domain security policies
sectie op Enterlocalhost
en druk eropDelete
.
Zodra dat is voltooid, moet u zich kunnen aanmelden en moet u de browser uw localhost
koppelingen niet automatisch laten omleiden naar https
.
Probleem: Kan geen account toevoegen achter een proxy
Als de gebruikerstoepassing wordt uitgevoerd in een omgeving achter een proxy, is gebruikersverificatie mogelijk niet voltooid en kunnen deze stappen worden gebruikt om het probleem op te lossen.
Controleer omgevingsvariabelen en http.proxy-instellingen opnieuw in Azure Data Studio. Als voor de proxy gebruikersverificatie is vereist, kan het opgeven van een gebruikersnaam/wachtwoord in http.proxy-URL verificatieproblemen oplossen. Anders kan Azure Data Studio geen aangemelde gebruikersreferenties lezen. U kunt azure Data Studio ook als een andere gebruiker uitvoeren, omdat dit kan helpen bij het oplossen van verificatieproblemen met de proxy. De laatste werkt echter alleen voor sommige scenario's.
De TOE te staan URL's kunnen per geval variëren. Als u wilt controleren of er geen URL's worden geblokkeerd, gaat u naar Help-hulpprogramma's > voor ontwikkelaars in- en uitschakelen en selecteert u het tabblad Netwerk. Hier ziet u alle URL's die worden geblokkeerd die u mogelijk moet toestaan om uw account toe te voegen.
Schakel http uit: proxy strikt SSL. Het is mogelijk dat het proxycertificaat niet verifieerbaar is voor de lijst met vertrouwde CA's. Als u strikte SSL uitschakelt, kan het proxycertificaat als een probleem worden uitgesloten.
Tot slot:
Als platformoverschrijdende toepassing haalt Azure Data Studio-proxyomzetting de proxy op uit de instelling binnen de toepassing of via omgevingsvariabelen. Het doel is om interactie met systeeminstellingen te voorkomen, die aanzienlijk kunnen variëren op verschillende besturingssystemen.
Probleem: Azure Core-extensie is uitgeschakeld
Azure Core-extensie is een ingebouwde extensie in Azure Data Studio. Zorg ervoor dat deze niet per ongeluk is uitgeschakeld of verwijderd. Deze extensie is vereist om Microsoft Entra-accounts te verifiëren en verbinding te maken met resources met behulp van MFA.
Probleem: systeem-CA-certificaten zijn verlopen
Het standaardgedrag van Azure Data Studio omvat het valideren van de basis-CA-certificaten van het systeem bij het maken van REST API-aanroepen met behulp van HET HTTPS-protocol. Validatie wordt beheerd met de http:systemCertificates
instelling, die standaard is ingeschakeld:
"http.systemCertificates": true
Als het basis-CA-certificaat van een systeem is verlopen, mislukken verificatieaanvragen voor Microsoft Entra-id en wordt er een fout vastgelegd in de Logboeken van het Azure-account:
error: certificate is expired
Als u deze fout wilt verhelpen, moet u verlopen basis-CA-certificaten verwijderen of de instelling uitschakelen om systeemcertificaten niet te valideren.
Logboeken vastleggen voor Azure-verificatie
Azure Data Studio legt standaard fout gebeurtenissen vast voor Microsoft Entra-accountactiviteit. Als u gedetailleerdere traceringen wilt inschakelen, kunnen gebruikers deze instellingen wijzigen:
Azure: niveau van logboekregistratie
Met deze instelling configureert u het logboekregistratieniveau voor informatie van de Azure-kern die kan worden vastgelegd in Azure Data Studio. Wijzig deze in Uitgebreid of Alles om gedetailleerde logboeken vast te leggen die nuttig kunnen zijn om verificatiefouten vast te stellen. Zie Azure Data Studio-logboeken en -locatie voor meer informatie over het vastleggen van logboekregistratiegegevens.
Settings.json
"azure.loggingLevel": "Verbose"
Azure: PII-logboekregistratie
Gebruikers kunnen piI-logboekregistratie (persoonlijk identificeerbare informatie) inschakelen voor lokale test- en foutopsporingsdoeleinden. Deze instelling maakt uitgebreidere logboekregistratie van het verificatieproces mogelijk, maar kan gevoelige informatie bevatten, zoals toegangstokens of gebruikers-id's bij verificatie met Microsoft Entra-id. Omdat deze logboekregistratie gevoelige informatie vastlegt, is het raadzaam het volgende te doen:
- Deel deze logboeken niet met anderen, met name wanneer u logboeken toevoegt aan GitHub-problemen
- Schakel de instelling uit zodra de benodigde informatie is verzameld
- De logboekbestanden verwijderen zodra de instelling is uitgeschakeld
Settings.json
"azure.piiLogging": true
Azure: Geen systeemsleutelhanger
Met deze instelling wordt integratie van systeemsleutelhangers uitgeschakeld om herhaalde toegangsprompts voor sleutelhangers in macOS te voorkomen. Gebruikersreferenties worden ook opgeslagen in een plat bestand in de basismap van de gebruiker.
Settings.json
"azure.noSystemKeychain": true
Tokencache van Microsoft Entra-account wissen
Azure Data Studio onderhoudt een cache met toegangstokens om te voorkomen dat tokenaanvragen worden beperkt tot Microsoft Entra-id. Het is mogelijk dat de tokencache van Azure Data Studio verouderd is. Hiervoor moeten verlopen toegangstokens uit de toepassingscache worden opgeschoond.
Voer deze opdracht uit vanuit het opdrachtpalet (Ctrl/CMD + Shift + P) om toegangstokens voor gekoppelde Microsoft Entra-accounts te wissen:
Azure Accounts: Clear Azure Account Token Cache (accounts.clearTokenCache)
Alle opgeslagen Microsoft Entra-accounts wissen
Voer deze opdracht uit vanuit het opdrachtpalet (Ctrl/CMD + Shift + P) om alle gekoppelde Microsoft Entra-accounts uit Azure Data Studio te verwijderen:
Alle opgeslagen accounts wissen (clearSavedAccounts)