Loading
Identifiera dina användare och hantera åtkomst
Innehållsförteckningar
Välj filter

          Inga resultat
          Inga resultat
          Här är några söktips

          Kontrollera stavningen av dina nyckelord.
          Använd mer allmänna söktermer.
          Välj färre filter för att utöka din sökning.

          Sök hela Salesforce-hjälpen
          OAuth 2.0-enhetsflöde för IoT-integrering

          OAuth 2.0-enhetsflöde för IoT-integrering

          För att integrera appar som körs på enheter med begränsade möjligheter för inmatning eller visning, till exempel Smart TVs, vitvaror och andra IoT-enheter, använd OAuth 2.0-enhetsflödet. Kommandoradsappar kan också använda detta flöde. Användare kan ansluta dessa appar till Salesforce genom att gå till en webbläsare på en enhet med mer avancerade inmatningsmöjligheter, som en dator eller mobil.

          Versioner som krävs

          Tillgängliga i: både Salesforce Classic och Lightning Experience
          Tillgängliga i: Alla versioner

          Anta till exempel att en kund använder en Bluetooth-enhet för att styra sin hemmabelysning medan han eller hon är borta på kvällen. Du kan skapa en extern klientapp för Bluetooth-enheten för att aktivera detta flöde.

          1. Användaren öppnar bluetoothappen på sin mobilenhet och klickar på Tänd ljuset.
          2. Den externa klientappen publicerar en begäran till Salesforce-tokenslutpunkten.
          3. Salesforce verifierar begäran och returnerar en användarläslig användarkod, verifierings-URL och enhetskod.
          4. Bluetoothappen visar enhetskoden och instruerar användaren att ange den på den specificerade verifierings-URL:en. Appen börjar även utföra pollning för Salesforce-tokenslutpunkten för auktorisering.
          5. Användare klickar på länken till verifierings-URL:en för verifiering och anger koden.
          6. Användaren auktoriserar sedan appen att komma åt deras skyddade data, i detta fall deras bostads plats.
          7. Salesforce skickar en åtkomst- och uppdateringstoken till den externa klientappen.
          8. Bluetoothappen kan komma åt användarens bostad och tända lamporna.

          Låt oss gå igenom stegen i detta auktoriseringsflöde.

          1. Enhet begär auktorisering
          2. Salesforce returnerar verifieringskoder
          3. Användare loggar in och auktoriserar medan enheten utför pollning på tokenslutpunkten
          4. Salesforce beviljar åtkomsttoken

          Enhet begär auktorisering

          För att inleda auktoriseringsflödet publicerar enheten—via en extern klientapp—en auktoriseringsbegäran till Salesforce-tokenslutpunkten.

          Exempel:

          POST /services/oauth2/token  HTTP/1.1
          Host: login.salesforce.com
          Content-Type: application/x-www-form-urlencoded
          
          response_type=device_code&
          client_id=3MVG9PhR6g6B7ps7TTI4cP7Mppg3l7tu.​MRAYULyVqcmA9hGLpHiiS.Q7rO9yjlmffiBUM6tFpYAlXEkRjHb9&scope=api

          Inkludera dessa parametrar i begäran.

          Viktig
          Viktig När du utvecklar OAuth-integreringar, skicka alltid känslig information i brödtexten i en POST-begäran eller i ett begärandesidhuvud. Använd inte GET-parametrar i URL-frågesträngen för att skicka känslig information. Känslig information inkluderar men är inte begränsad till användarnamn, lösenord, OAuth-tokens, klienthemligheter och all personligt identifierande information. Mer information om rekommenderade metoder för säkerhet finns i Lagra känsliga data i Säker kodningsguide.
          Parameter Beskrivning
          Request Header

          Begärans sidhuvud innehåller denna information:

          • Salesforce OAuth 2.0-tokenslutpunkten. Externa klientappar skickar OAuth-tokenbegäranden till denna slutpunkt.
          • Auktoriseringsservern.
          • Innehållstyp för begäran.
          response_type Den OAuth 2.0-beviljandetyp som den externa klientappen begär. Värdet för detta flöde måste vara device_code.
          client_id Konsumentnyckeln för den externa klientappen. För att komma till konsumentnyckeln, hitta den externa klientappen från Hanteraren för externa klienter och välj Redigera inställningar från rullmenyn. Expandera sedan sektionen OAuth-inställningar och klicka på Konsumentnyckel och hemlighet. Ibland ombes du bekräfta din identitet innan du kan se konsumentnyckeln.
          scope Tillval. Behörigheter som definierar vilken typ av skyddade resurser en extern klientapp har åtkomst till. Du tilldelar omfattningar till en extern klientapp när du bygger den, och de inkluderas med OAuth-tokens under auktoriseringsflödet. Om du inte inkluderar denna parameter begärs alla omfattningar som är tilldelade till den externa klientappen. Omfattningen som skickas i denna parameter måste vara en underuppsättning av de registrerade omfången. För giltiga parametrar, se OAuth-omfång.

          Salesforce returnerar verifieringskoder

          Efter att begäran har verifierats returnerar Salesforce en användarläslig användarkod, verifierings-URL och enhetskod.

          Detta exempelsvar returnerar dessa värden med statuskoden 200.

          HTTP/1.1 200 OK
          Content-Type: application/json
          Cache-Control: no-store
          
          {
          "device_code":"M01WRzlQaFI2ZzZCN3BzN1RUSTRjUDdNcHBnM2w3dHUuTVJBWVVMeVZxY21BOWhHTHBIaWlTLlE3ck​85eWpsbWZmaUJVTTZ0RnBZQWxYRWtSakhiOTsxMC4yMi4zNC45MjsxNDc3Njc0NDg3NTA1O1gxRDlTRUVU",
          "user_code":"X1D9SEET",
          "verification_uri":"https://acme.my.salesforce.com/setup/connect",
          "interval":5
          }
          

          Följande parametrar inkluderas i svaret.

          Parameter Beskrivning
          Response Header

          Svarssidhuvudet innehåller denna information:

          • 200 framgång statuskod
          • Innehållstyp för svaret.
          • Indikation att data inte lagras i ett cacheminne.
          device_code

          En verifieringskod för enheten. Denna kod är giltig i 10 minuter. Koden kan innehålla stora bokstäver, små bokstäver och siffror.

          Salesforce kan när som helst ändra hur vi formaterar enhetskoder. När du utvecklar integreringar som använder detta flöde, gör inte antaganden om enhetskodens format och längd.

          user_code En verifieringskod för slutanvändaren, skickad som en 8-siffrig alfanumerisk kod. Användaren måste ange denna kod på verifierings-URL:n. Denna kod är giltig i 10 minuter.
          verification_uri

          Slutanvändarens verifierings-URL på auktoriseringsservern. Användaren måste ange användarkoden på denna verifierings-URL.

          Med verifiering genom en inloggnings-URL för Min domän eller Experience Cloud-webbplats-URL återspeglar verification_uri den URL som utlöste flödet. Till exempel, om enheten skickar en tokenbegäran till https://acme.my.salesforce.com/services/oauth2/token, är verification_uri https://acme.my.salesforce.com/setup/connect.

          Om du vill kan du lägga till parametern prompt i din verification_uri.

          interval Det lägsta antal sekunder vi rekommenderar att vänta mellan pollningsbegäranden till tokenslutpunkten.

          Användare loggar in och auktoriserar medan enheten utför pollning på tokenslutpunkten

          Klientappen på enheten instruerar användaren att gå till verifierings-URL:en på en dator eller mobilenhet och ange användarkoden. Användaren öppnar en webbläsare, går till verifierings-URL:en och anger den kod som visas på enheten. Om koden är giltig loggar användaren in. Efter inloggning beviljar användaren enheten åtkomst till Salesforce-kontodata.

          Samtidigt, efter att ha visat användarkod och verifierings-URL:en, upprepar klientappen på enheten pollning till tokenslutpunkten. Pollning kontrollerar om användaren har auktoriserat åtkomst och om auktoriseringsservern har utfärdat åtkomsttoken.

          Här är ett exempel på en pollningsbegäran:

          POST /services/oauth2/token  HTTP/1.1
          Host: login.salesforce.com
          Content-Type: application/x-www-form-urlencoded
          
          grant_type=device&
          client_id=3MVG9PhR6g6B7ps7TTI4cP7Mppg3l7tu.MRAYULyVqcmA9hGLpHiiS.​Q7rO9yjlmffiBUM6tFpYAlXEkRjHb9&code=M01WRzlQaFI2ZzZCN3BzN1RUSTRjUDdNcHBnM2w3dHUu​TVJBWVVMeVZxY21BOWhHTHBIaWlTLlE3ck85eWpsbWZmaUJVTTZ0RnBZQWxYRWtSakhiOTsxMC4yMi4zNC45MjsxNDc3N​jc0NDg3NTA1O1gxRDlTRUVU

          Pollningsbegäran innehåller dessa parametrar, utöver sidhuvudet.

          Parameter Beskrivning
          grant_type Värdet måste vara device för detta flöde.
          client_id Konsumentnyckeln för den externa klientappen. För att komma till konsumentnyckeln, hitta den externa klientappen från Hanteraren för externa klienter och välj Redigera inställningar från rullmenyn. Expandera sedan sektionen OAuth-inställningar och klicka på Konsumentnyckel och hemlighet. Ibland ombes du bekräfta din identitet innan du kan se konsumentnyckeln.
          code Auktoriseringsservern skapar en auktoriseringskod, som är en kortlivad token, och skickar den till klienten efter framgångsrik autentisering. Klienten skickar auktoriseringskoden till auktoriseringsservern för att få en åtkomsttoken och, i relevanta fall, en uppdateringstoken.

          Salesforce beviljar åtkomsttoken

          Om användaren har auktoriserat åtkomst svarar Salesforce med ett resultatmeddelande och åtkomsttoken tillsammans med andra värden. Exempel:

          {
          "access_token": "00DD00000008Uw2!ARkAQGppKf6n.VwG.EnFSvi731qWh.7vKfaJjL7h49yutIC84gAsxM​rqcE81GjpTjQbDLkytl2ZwosNbIJwUS0X8ahiILj3e"
          "refresh_token": "your token here"
          "signature": "hJuYICd2IHsjyTcFqTYiOr8THmgDmrcjgWaMp13X6dY="
          "scope": "api"
          "instance_url": "https://yourInstance.salesforce.com"
          "id": "https://login.salesforce.com/id/00DD00000008Uw2MAE/005D0000001cAGmIAM"
          "token_type": "Bearer"
          "issued_at": "1477674717112"
          }

          Följande parametrar inkluderas i exempelsvaret.

          Parameter Beskrivning
          access_token OAuth-token som en extern klientapp använder för att begära åtkomst till en skyddad resurs åt klientprogrammet. Ytterligare behörigheter i form av omfattningar kan medfölja åtkomsttoken.
          refresh_token Token som fåtts från webbservern, användaragenten eller hybridappens tokenflöde. Detta värde är en hemlighet. Vidta lämpliga åtgärder för att skydda det. Denna parameter returneras endast om din externa klientapp har konfigurerats med ett refresh_token.
          signature Base64-kodad HMAC-SHA256-signatur signerad med client_secret. Signaturen kan innehålla det sammanlänkade ID:t och issued_at value, som du kan använda för att bekräfta att identitets-URL:en inte har ändrats sedan servern skickade den.
          scope

          De omfattningar som är associerade med åtkomsttoken.

          Omfattningar definierar ytterligare vilken typ av skyddade resurser som klienten kan komma åt. Du tilldelar omfattningar till en extern klientapp när du bygger den, och de inkluderas med OAuth-tokens under auktoriseringsflödet.

          För giltiga parametrar, se OAuth-omfång.

          instance_url En URL som anger instansen för användarens organisation. Exempel: https://yourInstance.salesforce.com/.
          id En identitets-URL som kan användas både för att identifiera användaren och som en sökfråga för mer information om användaren. Se Identitets-URL:er.
          token_type En Bearer som används för alla svar som inkluderar en åtkomsttoken.
          issued_at Tidsstämpel då signaturen skapades i millisekunder.
           
          Laddar
          Salesforce Help | Article