Konfigurera OAuth för Snowflake-anslutningar

Det finns flera sätt att konfigurera OAuth för Snowflake-kopplingar, beroende på vilken version av Tableau du använder och hur många platser du uppdaterar. Det här ämnet tar upp konfigurationen för varje tillgängligt alternativ.

  • För alla versioner av Tableau upp till och med version 2024.1 använder Tableau Snowflake-kopplingen som standard en OAuth-proxy i AWS (GALOP) som använder ett gemensamt klient-ID och en gemensam hemlighet.
  • Från och med Tableau 2020.4 kan du välja att konfigurera Tableau Server till att använda en ny OAuth-tjänst som körs på samma plats som den instansen av Tableau. Detta kräver att du tillhandahåller ditt eget klient-ID och din egen hemlighet, vilket kallas anpassad OAuth.
  • Från och med 2024.2 kommer GALOP-proxyn att vara inaktuell och instruktionerna nedan för att ställa in anpassad OAuth kommer att vara obligatoriska att följa, eftersom den lokala OAuth-tjänsten nu kommer att användas för autentisering.
  • För Tableau Desktop och Tableau Cloud version 2024.3 och senare kan du konfigurera en extern identitetsprovider (extern OAuth) för Snowflake. Mer information finns i Extern OAuth för Snowflake.

Fördelarna med anpassad OAuth inkluderar:

  • Förbättrad säkerhet

  • Du kan använda OAuth i isolerade miljöer som inte kan ansluta till OAuth Proxy (GALOP).

  • Du behöver inte placera GALOP-IP-adresserna på godkännandelistan för att köra OAuth-flödet i AWS PrivateLink- eller Azure Private Link VPC:er.

Registrera en OAuth-klient med Snowflake

För att använda en anpassad OAuth-konfiguration i Tableau Server måste du först registrera din OAuth-klient och skaffa ett klient-ID och en klienthemlighet för att slutföra konfigurationen. För Tableau Server-version 2024.2 och senare krävs detta steg, oavsett vilket konfigurationsalternativ du använder. Om du vill registrera en anpassad OAuth-klient med Snowflake följer du stegen som beskrivs i Configure Snowflake OAuth for Custom Clients(Länken öppnas i ett nytt fönster) (Konfigurera Snowflake OAuth för anpassade klienter (engelska)).

Efter registrering kan du använda följande Snowflake-parametrar för att konfigurera Tableau Server:

  • URL för konto-instans
  • Klient-ID
  • Klienthemlighet
  • Omdirigerings-URL

Obs! Omdirigeringsadressen är densamma när den anges både på Snowflake- och Tableau-sidan. Formatet är:
https://your_server_url.com/auth/add_oauth_token
Till exempel https://example.com/auth/add_oauth_token

Alternativ 1: Konfigurera OAuth för Snowflake-kopplingar med TSM

Vi rekommenderar att du använder det här alternativet när du behöver uppdatera flera platser samtidigt.

Obs! Det här alternativet kan inte användas för Tableau Cloud.

  1. (Version 2024.1 och tidigare) Kör följande kommando på datorn med Tableau Server för att aktivera Snowflake OAuth-tjänsten:

    tsm configuration set -k native_api.enable_snowflake_privatelink_on_server -v true

    Obs! I version 2024.2 och senare hoppar du över steg 1 oavsett om en privat Snowflake-anslutning används eller inte.

  2. Kopiera, klistra in och anpassa följande kommando i en textredigerare:

    Obs! Om du gör de här konfigurationsändringarna i Tableau Server 2021.1 och senare, observera att formatet för oauth.snowflake.clients-värdet har ändrats.

    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\" }]"

    Nyckeln oauth.snowflake.clients tar en uppsättning nyckelpar. Varje element i nyckelparet måste vara inkapslat med dubbla citattecken. Dubbla citattecken måste avslutas med \".

    För att ange webbadresser för flera kontoinstanser, separera varje ytterligare OAuth-klient inom klammerparenteser ({}) med ett kommatecken (,), som i följande exempel:

    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\" }]"

    Byt ut värdena för varje nyckel:

    • URL för konto-instans oauth.snowflake.instance_url:
    • Klient-ID: oauth.snowflake.client_id
    • Klienthemlighet: oauth.snowflake.client_secret
    • Omdirigerings-URL: oauth.snowflake.redirect_uri

    Obs! Kontrollera syntaxen noga innan du kör kommandot. TSM validerar inte den här inmatningen.

    Kopiera kommandot till TSM CLI och kör kommandot.

  3. Ange följande kommando för att tillämpa ändringarna:

    tsm pending-changes apply

    Om de väntande ändringarna kräver att servern startas om visar kommandot pending-changes apply en kommandotolk så att du vet att en omstart kommer att ske. Kommandotolken visas även om servern stoppas, men i så fall sker ingen omstart. Du kan utelämna tolken med alternativet --ignore-prompt, men det påverkar inte omstartsbeteendet. Om ändringarna inte kräver omstart används de utan någon kommandotolk. Du hittar mer information i tsm pending-changes apply.

Alternativ 2: Konfigurera OAuth för Snowflake-kopplingar efter plats

Obs! Det här alternativet är också tillgängligt för Tableau Cloud från och med version 2024.2.

Du kan konfigurera en anpassad Snowflake OAuth-klient på platsnivå genom att använda Tableau Server UI.

Överväg att konfigurera en anpassad OAuth-klient för att 1) åsidosätta en OAuth-klient om den är konfigurerad för servern eller 2) aktivera stöd för säker anslutning till data som kräver unika OAuth-klienter.

När en anpassad OAuth-klient konfigureras har konfigurationen på platsnivå företräde framför alla konfigurationer på serversidan och alla nya OAuth-uppgifter som skapas använder OAuth-klienten på platsnivå som standard. Ingen omstart av Tableau Server krävs för att konfigurationerna ska träda i kraft.

Viktigt: Befintliga OAuth-uppgifter som upprättats innan den anpassade OAuth-klienten konfigureras är tillfälligt användbara, men både serveradministratörer och användare måste uppdatera sina sparade autentiseringsuppgifter för att säkerställa oavbruten dataåtkomst.

1: Förbereda klient-ID:t, klienthemligheten och omdirigerings-URL:en för OAuth

Innan du kan konfigurera den anpassade OAuth-klienten behöver du ha informationen nedan. När du har förberett denna information kan du registrera den anpassade OAuth-klienten för platsen. Mer information finns i avsnittet Registrera OAuth-klienten med Snowflake ovan.

  • OAuth-klient-ID och klienthemlighet: Registrera först OAuth-klienten hos dataleverantören (anslutaren) för att hämta klient-ID och hemlighet som genereras för Tableau Server.

  • Omdirigerings-URL: Notera korrekt omdirigerings-URL. Du behöver detta under registreringsprocessen i steg 2 nedan.

    https://<your_server_name>.com/auth/add_oauth_token

    Till exempel https://example.com/auth/add_oauth_token

2: Registrera klient-ID:t och klienthemligheten för OAuth

Följ proceduren som beskrivs nedan för att registrera den anpassade OAuth-klienten på webbplatsen.

  1. (Version 2024.1 och tidigare) Kör följande kommando på datorn med Tableau Server för att aktivera Snowflake OAuth-tjänsten:

    tsm configuration set -k native_api.enable_snowflake_privatelink_on_server -v true

    Obs! I version 2024.2 och senare hoppar du över steg 1 oavsett om en privat Snowflake-anslutning används eller inte.

  2. Logga in på din Tableau Server-webbplats med dina administratörsuppgifter och navigera till sidan Inställningar.

  3. Klicka på knappen Lägg till OAuth-klient under Register för OAuth-klienter.

  4. Ange nödvändig information, inklusive information från Steg 1 ovan:

    1. För Anslutningstyp, välj den anslutare vars anpassade OAuth-klient du vill konfigurera.

    2. URL för OAuth-instans krävs om flera OAuth-klienter registreras. Annars är det valfritt.

    3. För Klient-ID, Klienthemlighet och Omdirigerings-URL anger du den information som du förberedde i Steg 1 ovan.

    4. Klicka på knappen Lägg till OAuth-klinet för att slutföra registreringsprocessen.

  5. (Valfritt) Upprepa steg 3 för alla kontakter som stöds.

  6. Klicka på knappen Spara längst ned eller högst upp på sidan Inställningar för att spara ändringarna.

3: Validera och uppdatera sparade inloggningsuppgifter

För att säkerställa oavbruten dataåtkomst måste du (och dina webbplatsanvändare) ta bort de tidigare sparade autentiseringsuppgifterna och lägga till dem igen för att använda den anpassade OAuth-klienten för webbplatsen.

  1. Gå till sidan Mina kontoinställningar.

  2. Gör följande under Sparade inloggningsuppgifter för datakällor:

    1. Klicka på Ta bort bredvid befintliga sparade inloggningsuppgifter för den koppling vars anpassade OAuth-klient du konfigurerade i Steg 2 ovan.

    2. Bredvid anslutningsnamnet klickar du på Lägg till och följer anvisningarna för att 1) ansluta till den anpassade OAuth-klienten som konfigurerats i Steg 2 ovan och 2) spara de senaste användaruppgifterna.

4: Meddela användarna att de ska uppdatera sina sparade inloggningsuppgifter

Se till att du meddelar dina webbplatsanvändare att de ska uppdatera sina sparade autentiseringsuppgifter för den anslutare vars anpassade OAuth-klient du konfigurerade i Steg 2 ovan. Platsanvändare kan uppdatera sina sparade inloggningsuppgifter genom att följa stegen som beskrivs i Uppdatera sparade inloggningsuppgifter.

Tack för din feedback!Din feedback har skickats in. Tack!