OAuth configureren voor Snowflake-verbindingen
Er zijn verschillende manieren om OAuth te configureren voor Snowflake-verbindingen, afhankelijk van de versie van Tableau die u gebruikt en hoeveel sites u bijwerkt. In dit onderwerp wordt de configuratie voor elke beschikbare optie besproken.
- Voor alle versies van Tableau tot en met versie 2024.1 maakt de Tableau Snowflake-connector standaard gebruik van een OAuth-proxy die wordt gehost in AWS (GALOP), die gebruikmaakt van een gemeenschappelijk(e) client-ID en geheim.
- Vanaf Tableau 2020.4 kunt u desgewenst Tableau Server configureren om een nieuwe OAuth-service te gebruiken die op dezelfde locatie wordt uitgevoerd als die instantie van Tableau. Hiervoor moet u uw eigen client-ID en geheim opgeven, ook wel aangepaste OAuth genoemd.
- Vanaf 2024.2 is de GALOP-proxy verouderd en zijn de onderstaande instructies voor het instellen van aangepaste OAuth vereist, omdat de lokale OAuth-service nu wordt gebruikt voor verificatie.
- Voor Tableau Desktop en Tableau Cloud versie 2024.3 en later kunt u een externe IdP (externe OAuth) configureren voor Snowflake. Zie Externe OAuth voor Snowflake voor meer informatie.
De voordelen van aangepaste OAuth zijn onder meer:
Verbeterde beveiliging
U kunt OAuth gebruiken in geïsoleerde omgevingen die geen verbinding kunnen maken met de OAuth-proxy (GALOP).
U hoeft de GALOP IP-adressen niet op een toelatingslijst te plaatsen om de OAuth-flow uit te voeren in VPC's van AWS PrivateLink of Azure Private Link.
OAuth-client registreren bij Snowflake
Als u een aangepaste OAuth-set-up wilt gebruiken in Tableau Server, dient u eerst uw OAuth-client registreren en een client-ID en clientgeheim te verkrijgen om de configuratie te voltooien. Voor Tableau Server versie 2024.2 en hoger is deze stap vereist, ongeacht de configuratieoptie die u gebruikt. Als u een aangepaste OAuth-client bij Snowflake wilt registreren, volgt u de stappen in Configure Snowflake OAuth for Custom Clients (Snowflake OAuth configureren voor aangepaste clients)(Link wordt in een nieuw venster geopend).
Nadat u de registratie hebt voltooid, gebruikt u de volgende Snowflake-parameters om Tableau Server te configureren:
- Accountinstantie-URL
- Client-ID
- Clientgeheim
- Omleiding-URL
Opmerking: U voert dezelfde omleidings-URL in aan de Snowflake- en Tableau-zijde. Gebruik deze notatie:
https://your_server_url.com/auth/add_oauth_token
Bijvoorbeeld: https://example.com/auth/add_oauth_token
Optie 1: OAuth configureren voor Snowflake-verbindingen met behulp van TSM
Wij raden u aan deze optie te gebruiken als u meerdere sites tegelijk wilt bijwerken.
Opmerking: Deze configuratie-optie is niet beschikbaar voor gebruik in Tableau Cloud.
(Versie 2024.1 en eerder) Voer op de Tableau Server-computer de volgende opdracht uit om de Snowflake OAuth-service in te schakelen:
tsm configuration set -k native_api.enable_snowflake_privatelink_on_server -v true
Opmerking: Voor versie 2024.2 en nieuwer slaat u stap 1 over, ongeacht of er een Snowflake-privéverbinding wordt gebruikt.
U kopieert en plakt de volgende opdracht in een teksteditor en past deze hierin aan:
Opmerking: Als u deze configuratiewijzigingen aanbrengt in Tableau Server 2021.1 en hoger, dient u te weten dat de indeling van de waarde oauth.snowflake.clients is gewijzigd.
tsm configuration set -k oauth.snowflake.clients -v " [{\"oauth.snowflake.instance_url\":\"https://account.snowflakecomputing.com\", \"oauth.snowflake.client_id\":\"client_id_string\", \"oauth.snowflake.client_secret\":\"client_secret_string\", \"oauth.snowflake.redirect_uri\":\"http://your_server_url.com/auth/add_oauth_token\" }]"
De sleutel
oauth.snowflake.clients
neemt een array van sleutelparen op. Elk element in het sleutelpaar moet tussen dubbele aanhalingstekens worden geplaatst. Dubbele aanhalingstekens moeten worden genegeerd, hetgeen wordt aangegeven met een\"
(escape-teken).Als u meerdere accountinstantie-URL's wilt opgeven, scheidt u elke aanvullende OAuth-client die tussen accolades ({}) is geplaatst met een komma (,), zoals in dit voorbeeld:
tsm configuration set -k oauth.snowflake.clients -v " [{\"oauth.snowflake.instance_url\":\"https://account.snowflakecomputing.com\",\"oauth.snowflake.client_id\":\"client_id_string1\",\"oauth.snowflake.client_secret\":\"client_secret_string1\",\"oauth.snowflake.redirect_uri\":\"http://your_server_url.com/auth/add_oauth_token\" },{\"oauth.snowflake.instance_url\":\"https://account2.snowflakecomputing.com\",\"oauth.snowflake.client_id\":\"client_id_string2\",\"oauth.snowflake.client_secret\":\"client_secret_string2\",\"oauth.snowflake.redirect_uri\":\"http://your_server_url.com/auth/add_oauth_token\" }]"
Vervang de waarden voor elke sleutel:
- Accountinstantie-URL:
oauth.snowflake.instance_url
- Client-ID:
oauth.snowflake.client_id
- Clientgeheim:
oauth.snowflake.client_secret
- Omleiding-URL:
oauth.snowflake.redirect_uri
Opmerking: controleer de syntaxis zorgvuldig voordat u de opdracht uitvoert. TSM valideert deze invoer niet.
Kopieer de opdracht naar TSM CLI en voer de opdracht uit.
- Accountinstantie-URL:
Voer de volgende opdracht in om de wijzigingen toe te passen:
tsm pending-changes apply
Als voor de in behandeling zijnde wijzigingen de Server opnieuw moet worden opgestart, geeft de opdracht
pending-changes apply
een prompt weer om u te laten weten dat de server opnieuw wordt gestart. Deze prompt verschijnt ook als de server is gestopt, maar in dat geval vindt er geen herstart plaats. U kunt de prompt onderdrukken met de optie--ignore-prompt
, maar dit verandert niets aan het herstartgedrag. Als opnieuw opstarten niet nodig is voor de wijzigingen, worden de wijzigingen zonder waarschuwing van een prompt toegepast. Zie tsm pending-changes apply voor meer informatie.
Optie 2: OAuth configureren voor Snowflake-verbindingen per site
Opmerking: Deze optie is ook beschikbaar voor Tableau Cloud vanaf versie 2024.2.
U kunt een aangepaste Snowflake OAuth-client op siteniveau configureren via de gebruikersinterface van Tableau Server.
U kunt een aangepaste OAuth-client configureren om 1) een OAuth-client te overschrijven als deze voor de server is geconfigureerd, of 2) ondersteuning te bieden voor een veilige verbinding met data waarvoor unieke OAuth-clients nodig zijn.
Wanneer een aangepaste OAuth-client is geconfigureerd, heeft de configuratie op siteniveau voorrang op eventuele configuraties aan de serverzijde en maken alle nieuwe OAuth-referenties standaard gebruik van de OAuth-client op siteniveau. U hoeft Tableau Server niet opnieuw op te starten om de configuraties van kracht te laten worden.
Belangrijk: Bestaande OAuth-referenties die zijn ingesteld voordat de aangepaste OAuth-client is geconfigureerd, zijn tijdelijk bruikbaar, maar zowel serverbeheerders als gebruikers moeten hun opgeslagen referenties bijwerken om ononderbroken toegang tot data te garanderen.
1: Bereid de OAuth-client-ID, het clientgeheim en de omleiding-URL voor
Voordat u de aangepaste OAuth-client kunt configureren, hebt u de onderstaande informatie nodig. Nadat u deze informatie hebt voorbereid, kunt u de aangepaste OAuth-client voor de site registreren. Zie de bovenstaande sectie OAuth-client registreren bij Snowflake, boven voor meer informatie.
OAuth-client-ID en clientgeheim: Registreer eerst de OAuth-client bij de dataprovider (connector) om de client-ID en het geheim op te halen die voor Tableau Server zijn gegenereerd.
Omleiding-URL: Let op de juiste omleiding-URL. U hebt deze nodig tijdens het registratieproces in Stap 2 hieronder.
https://<uw_servernaam>.com/auth/add_oauth_token
Bijvoorbeeld: https://example.com/auth/add_oauth_token
2: Registreer de OAuth-client-ID en het clientgeheim
Voer de hieronder beschreven procedure uit om de aangepaste OAuth-client op de site te registreren.
(Versie 2024.1 en eerder) Voer op de Tableau Server -computer de volgende opdracht uit om de Snowflake OAuth-service in te schakelen:
tsm configuration set -k native_api.enable_snowflake_privatelink_on_server -v true
Opmerking: Voor versie 2024.2 en nieuwer slaat u stap 1 over, ongeacht of er een Snowflake-privéverbinding wordt gebruikt.
Meld u aan bij uw Tableau Server-site met uw beheerdersreferenties en navigeer naar de pagina Instellingen.
Ga naar Register OAuth-clients en klik op de knop OAuth-client toevoegen.
Vul de vereiste informatie in, inclusief de informatie van Stap 1 hierboven:
Bij Verbindingstype selecteert u de connector waarvan u de aangepaste OAuth-client wilt configureren.
URL voor OAuth-instantie is vereist als er meerdere OAuth-clients worden geregistreerd. Anders is het optioneel.
Bij Klant-ID, Klantgeheim en Omleiding-URL, voert u de informatie in die u hebt voorbereid in Stap 1 hierboven.
Klik op de knop OAuth-client toevoegen om het registratieproces te voltooien.
(Optioneel) Herhaal stap 3 voor alle ondersteunde connectors.
- Klik op de knop Opslaan onder- of bovenaan de pagina Instellingen om de wijzigingen op te slaan.
3: Valideer de opgeslagen referenties en werk deze bij
U (en uw sitegebruikers) moeten de eerder opgeslagen referenties verwijderen en deze opnieuw toevoegen om de aangepaste OAuth-client voor de site te gebruiken en ononderbroken toegang tot de data te garanderen.
Navigeer naar de pagina Mijn accountinstellingen.
Voer de volgende stappen uit onder Opgeslagen referenties voor databronnen:
Klik op Verwijderen naast de bestaande opgeslagen referenties voor de connector waarvan u de aangepaste OAuth-client hebt geconfigureerd in Stap 2 hierboven.
Klik naast de connectornaam op Toevoegen en volg de aanwijzingen om 1) verbinding te maken met de aangepaste OAuth-client die is geconfigureerd in Stap 2 hierboven en 2) om de meest recente referenties op te slaan.
4: Informeer gebruikers dat ze hun opgeslagen referenties moeten bijwerken
Laat uw sitegebruikers weten dat ze hun opgeslagen referenties moeten bijwerken voor de connector waarvan u de aangepaste OAuth-client hebt geconfigureerd in Stap 2 hierboven. Sitegebruikers kunnen hun opgeslagen referenties bijwerken aan de hand van de procedure die wordt beschreven in Opgeslagen referenties bijwerken.