Loading
Identificer dine brugere, og håndter adgang
OAuth 1.0.A-forløb

OAuth 1.0.A-forløb

Hvis din organisation bruger OAuth 1.0.A-protokollen, skal du bruge dette autorisationsforløb til at integrere en klient – via en tilsluttet app – med Salesforce-API'en.

EditionsHeading

Tilgængelig i: både Salesforce Classic og Lightning Experience
Tilgængelig i: Alle versioner
Brugertilladelser påkrævet
Hvis du vil administrere, oprette, redigere og slette OAuth-apps: Administrer tilsluttede apps

Her er de større autorisationstrin.

Tip
Tip Hvis du vil bruge en tilsluttet app med en sandbox, skal du bruge test.salesforce.com i stedet for login.salesforce.com i følgende afsnit.

Hvis du vil se listen over mulige fejlkoder, der returneres af Salesforce, kan du se OAuth 1.0.A-fejlkoder.

Anmod om et anmodningstoken

For at starte OAuth 1.0.A-forløbet sender den tilsluttede app en anmodning til handlerslutpunktet for Salesforce OAuth-tokenet (https://login.salesforce.com/_nc_external/system/security/oauth/RequestTokenHandler).

Inkluder følgende OAuth-parametre i anmodningen.

Parameter Beskrivelse
oauth_consumer_key Forbrugernøglen for den tilsluttede app. Hvis du vil have adgang til forbrugernøglen, skal du fra Appstyring finde den tilsluttede app og vælge Vis fra rullelisten. Klik derefter på Administrer forbrugerdetaljer. Du bliver nogle gange bedt om at bekræfte din identitet.
oauth_signature_method OAuth-signaturmetoden skal være HMAC-SHA1 for dette forløb.
oauth_signature

OAuth-signaturen, der bruges til login, som du genererer i henhold til OAuth-specifikationen for HMAC-SHA1.

Du kan bruge en af disse metoder til at generere oauth_signature.

  • Brugergrænseflade – brug https://login.salesforce.com til generering af signaturen.
  • API – brug https://login.salesforce.com/services/OAuth/type/api-version til generering af signaturen.

    type skal have en af følgende værdier:

    • u – Partner WSDL
    • c – Enterprise WSDL
    F.eks. https://login.salesforce.com/services/OAuth/u/17.0.
oauth_timestamp Tidsstempel for, hvornår signaturen blev oprettet.
oauth_nonce Valgfri. Giver serviceudbyderen mulighed for at bekræfte, at der ikke er oprettet en anmodning tidligere og hjælper med til at forhindre genafspilningsangreb.
oauth_version Valgfri. Hvis dette er inkluderet, skal OAuth-versionen være 1.0 for dette forløb.
oauth_callback

Skal være én af følgende værdier:

  • URL, som forbrugeren er vært for, f.eks. https://www.appirio.com/sfdc_accounts/access_token_ready.html. Denne URL bruger HTTPS eller en anden protokol. Den kan ikke bruge HTTP.
  • oob, betyder uden for bånd.

Når Salesforce har modtaget anmodningen, gør det følgende:

  • Validerer anmodningen med dets egen kopi af forbrugerhemmeligheden.
  • Genererer et svar, der indeholder et anmodningstoken og anmodningstokenhemmeligheden i HTTP-teksten som navn/værdi-par.
  • Sender svaret tilbage til forbrugeren.

Et anmodningstoken er kun gyldigt i 15 minutter, plus 3 minutter for at tage højde for forskelle mellem maskinernes ure.

Bruger autoriserer adgang

Når den tilsluttede app har oprettet sin indledende anmodning om anmodningstokenet, bliver brugeren bedt om at autorisere adgang.

  • Den tilsluttede app omdirigerer brugeren til https://login.salesforce.com/setup/secur/RemoteAccessAuthorizationPage.apexp. Den rette GET-forespørgselsparameter føjes til denne URL:
    • oauth_token (anmodningstoken)
    • oauth_consumer_key
    Bemærk
    Bemærk Hvis en oauth_callback-parameter er inkluderet, ignoreres den.
  • Brugeren bliver bedt om at autorisere adgang for den tilsluttede app på siden for autorisation af fjernadgang.
  • Når brugeren har autoriseret adgang, genererer Salesforce adgangstokenet og hemmeligheden for adgangstokenet.
    Bemærk
    Bemærk En bruger kan tildele et begrænset antal samtidige adgangtokener til en app. Standarden er fem pr. app pr. bruger. Hvis denne godkendelse overskrider organisationsgrænsen, får brugeren besked, og de sidst brugte tokener tilbagekaldes.
  • Salesforce bekræfter tilbagekalds-URL'en og omdirigerer brugeren på følgende måde.
    • Hvis det oauth_callback, der er defineret i anmodningstokenet er oob, og den tilsluttede apps tilbagekalds-URL er gyldig, omdirigeres brugeren til denne URL.
    • Hvis det oauth_callback, der er defineret i anmodningstokenet, er en gyldig URL, omdirigeres brugeren til denne URL.

Anmod om adgangstokenet

Når brugeren godkender adgang for den tilsluttede app, kan denne udveksle et anmodningstoken for et adgangstoken. Det opretter en HTTPS GET- eller POST-anmodning til https://login.salesforce.com/_nc_external/system/security/oauth/AccessTokenHandler. Medtag disse parametre i forespørgslen eller post-dataene.

Parameter Beskrivelse
oauth_consumer_key Forbrugernøglen for den tilsluttede app. Hvis du vil have adgang til forbrugernøglen, skal du fra Appstyring finde den tilsluttede app og vælge Vis fra rullelisten. Klik derefter på Administrer forbrugerdetaljer, og bekræft din identitet.
oauth_signature_method OAuth-signaturmetoden skal være HMAC-SHA1 for dette forløb.
oauth_signature Den OAuth-signatur, der bruges til login, som du genererer i henhold til OAuth-specifikationen for HMAC-SHA1. Se oauth_signature.
oauth_timestamp Tidsstempel for, hvornår signaturen blev oprettet.
oauth_token Det anmodningstoken, som den tilsluttede app modtog i sin indledende anmodning.
oauth_nonce Valgfri. Giver serviceudbyderen mulighed for at bekræfte, at der ikke er oprettet en anmodning tidligere og hjælper med til at forhindre genafspilningsangreb.
oauth_verifier Den hemmelighed for anmodningstokenet, som den tilsluttede app modtog i sin indledende anmodning.
oauth_version Valgfri. Hvis dette er inkluderet, skal OAuth-versionen være 1.0 for dette forløb.

Salesforce validerer disse elementer i anmodningen:

  • Forbrugerhemmelighed
  • Forbrugernøgle
  • Signatur
  • Om anmodningstokenet har været brugt tidligere
  • Tidsstemplet (skal være inden for 15 minutter, plus 3 minutter for at tage højde for forskelle mellem maskinernes ure)
  • Om Nonce aldrig har været brugt tidligere

Ved valideringen returnerer Salesforce adgangstokenet hemmeligheden for adgangstokenet i HTTP-svarteksten som navn/værdi-par.

Adgang til data

Når den tilsluttede app er i besiddelse af et gyldigt adgangstoken, kan den få adgang til Salesforce-data ved at sende en anmodning til https://login.salesforce.com. Følgende parametre er inkluderet i HTTP POST-autorisationssidehovedet.

Parameter Beskrivelse
oauth_consumer_key Den tilsluttede apps forbrugernøgle. Hvis du vil have adgang til forbrugernøglen, skal du fra Appstyring finde den tilsluttede app og vælge Vis fra rullelisten. Klik derefter på Administrer forbrugerdetaljer. Du bliver nogle gange bedt om at bekræfte din identitet.
oauth_token Det adgangstoken, som den tilsluttede app modtog fra Salesforce.
oauth_signature_method OAuth-signaturmetoden skal være HMAC-SHA1 for dette forløb.
oauth_signature Den OAuth-signatur, der bruges til login, som du genererer i henhold til OAuth-specifikationen for HMAC-SHA1. Se oauth_signature.
oauth_timestamp Tidsstempel for, hvornår signaturen blev oprettet.
oauth_nonce Valgfri. Giver serviceudbyderen mulighed for at bekræfte, at der ikke er oprettet en anmodning tidligere og hjælper med til at forhindre genafspilningsangreb.
oauth_version Valgfri. Hvis dette er inkluderet, skal OAuth-versionen være 1.0 for dette forløb.

Salesforce validerer anmodningen og sender et gyldigt sessions-id til den tilsluttede app. Sessions-id'et har en kort levetid og er kun gyldigt for frontdoor.jsp. Hvis du vil have et session-id, der kan bruges direkte, skal du bruge udveksling af API-adgangstoken.

Adgang til Salesforce-data ved brug af API

Når den tilsluttede app er i besiddelse af et gyldigt adgangstoken, kan den anmode om at få adgang til Salesforce-data ved brug af Lightning-platforms-API. Den tilsluttede app kan sende en anmodning til https://login.salesforce.com/services/OAuth/type/api-version.

Erstat URL-variablerne med følgende:

  • type skal have en af følgende værdier:
    • u – Partner WSDL
    • c – Enterprise WSDL
  • api-version skal være en gyldig API-version.

Medtag følgende parametre i HTTPS POST-autorisationssidehovedet.

ParameterBeskrivelse
oauth_consumer_key Forbrugernøglen for den tilsluttede app. Hvis du vil have adgang til forbrugernøglen, skal du fra Appstyring finde den tilsluttede app og vælge Vis fra rullelisten. Klik derefter på Administrer forbrugerdetaljer. Du bliver nogle gange bedt om at bekræfte din identitet.
oauth_token Det adgangstoken, som den tilsluttede app modtog fra Salesforce.
oauth_signature_method OAuth-signaturmetoden skal være HMAC-SHA1 for dette forløb.
oauth_signature Den OAuth-signatur, der bruges til login, som du genererer i henhold til OAuth-specifikationen for HMAC-SHA1. Se oauth_signature.
oauth_timestamp Tidsstempel for, hvornår signaturen blev oprettet.
oauth_nonce Valgfri. Giver serviceudbyderen mulighed for at bekræfte, at der ikke er oprettet en anmodning tidligere og hjælper med til at forhindre genafspilningsangreb.
oauth_version Valgfri. Hvis dette er inkluderet, skal OAuth-versionen være 1.0 for dette forløb.

Salesforce validerer anmodningen og sender et gyldigt sessions-id til forbrugeren. Svarsidehovedet indeholder følgende indhold.

<response>
    <metadataServerUrl>https://yourInstance.salesforce.com/services/Soap/m/17.0/00D300000006qjK
    </metadataServerUrl>
    <sandbox>false</sandbox>
    <serverUrl>https://yourInstance.salesforce.com/services/Soap/u/17.0/00D300000006qjK
    </serverUrl>
    <sessionId>00D300000006qrN!AQoAQJTMzwTa67tGgQck1ng_xgMSuWVBpFwZ1xUq2kLjMYg6Zq
       GTS8Ezu_C3w0pdT1DMyHiJgB6fbhhEPxKjGqlYnlROIUs1</sessionId>
</response>

 
Indlæser
Salesforce Help | Article