Integrere en app for tokenutvekslingsflyten
Hvis du vil integrere en app med Salesforce for OAuth 2.0-tokenutvekslingsflyten, oppretter du en tilkoblet Salesforce-app eller en ekstern klientapp.
Nødvendige utgaver
| Tilgjengelig i Enterprise, Performance, Unlimited og Developer Edition |
- Alternativ 1: Opprette en tilkoblet app
Følg denne fremgangsmåten for å aktivere en tilkoblet app for tokenutvekslingsflyten. - Alternativ 2: Opprette en ekstern klientapp
Følg denne fremgangsmåten for å aktivere en ekstern klientapp for tokenutvekslingsflyten.
Alternativ 1: Opprette en tilkoblet app
Følg denne fremgangsmåten for å aktivere en tilkoblet app for tokenutvekslingsflyten.
Nødvendige utgaver
| Nødvendige brukertillatelser | |
|---|---|
| For å lese, opprette, oppdatere eller slette tilkoblede apper: | Tilpasse program OG enten Endre alle data ELLER Behandle tilkoblede apper |
| For å oppdatere alle felt unntatt profiler, tillatelsessett og SAML-tjenesteleverandørattributter: | Tilpasse program OG enten Endre alle data ELLER Behandle tilkoblede apper |
| For å oppdatere profiler, tillatelsessett og SAML-tjenesteleverandørattributter: | Tilpasse program OG Endre alle data OG Behandle profiler og tillatelsessett |
| Slik roterer du forbrukernøkkelen og forbrukerhemmeligheten: | Tillat forbrukernøkkel og hemmelig rotasjon |
| For å installere og avinstallere tilkoblede apper: | Tilpasse program OG enten Endre alle data ELLER Behandle tilkoblede apper |
| For å installere og avinstallere pakkede tilkoblede apper: | Laste ned AppExchange OG Tilpasse program OG enten Endre alle data ELLER Behandle tilkoblede apper |
- Opprett en tilkoblet app og fullfør grunnleggende informasjon.
- Aktiver den tilkoblede appens OAuth-innstillinger for API-integrering. I tillegg til å aktivere OAuth og skrive inn en URL-adresse for tilbakekall, bruker du disse innstillingene.
- Velg omfang for å definere appens tillatelser. Når du konfigurerer flyten, kan tokenforespørselen eventuelt inkludere en
scopes-parameter. Omfangene i denne parameteren må samsvare med eller være et delsett av omfangene som er tildelt den tilkoblede appen. - Velg Aktiver tokenutvekslingsflyt.
- Velg eventuelt Kreve hemmelighet for tokenutvekslingsflyt. Vi anbefaler at du aktiverer denne innstillingen bare for private klienter med en sikker klientside. For offentlige kunder som ikke kan holde forbrukerhemmeligheten konfidensiell, som enkeltsideapper og mobilapper, må du ikke aktivere denne innstillingen.
- Hvis du eventuelt vil utstede JSON Web Token (JWT)-baserte tilgangstokener i stedet for opaque tilgangstokener, kan du se Aktivere JSON Web Token (JWT)-baserte tilgangstokener.
- Velg omfang for å definere appens tillatelser. Når du konfigurerer flyten, kan tokenforespørselen eventuelt inkludere en
- Angi OAuth-policyene for den tilkoblede appen. Pass på at du bruker disse innstillingene.
- I policyen Tillatte brukere velger du Administratorgodkjente brukere er forhåndsgodkjent. For å bestemme hvilke brukere som er administratorgodkjent, behandler du hvilke profiler som er tildelt til appen.
- Velg Aktiver tokenutvekslingsflyt.
- Lagre endringene.
Opprett deretter en Apex for tokenutveksling.
Alternativ 2: Opprette en ekstern klientapp
Følg denne fremgangsmåten for å aktivere en ekstern klientapp for tokenutvekslingsflyten.
Før du starter må du konfigurere tillatelser for eksterne klientapper.
- Opprett en lokal ekstern klientapp og konfigurer dens grunnleggende innstillinger.
- Distribuer den eksterne klientappen.
- Konfigurer de globale OAuth-innstillingene for den eksterne klientappen. Pass på å angi disse feltene.
Field Description isTokenExchangeEnabled Boolean field indicating whether the token exchange flow is enabled. Set this field to true.isSecretRequiredForTokenExchange Boolean field indicating whether the app is required to send its consumer secret in the token request. We recommend that you set this field to trueonly if your app has a private client back end that can keep the secret confidential. For public clients such as mobile apps and single-page apps, set this field tofalse.Her er et eksempel på en fil med globale OAuth-innstillinger.<?xml version="1.0" encoding="UTF-8"?> <ExtlClntAppGlobalOauthSettings xmlns="http://soap.sforce.com/2006/04/metadata"> <callbackUrl>https://www.example.com</callbackUrl> <externalClientApplication>myeca</externalClientApplication> <idTokenConfig> <idTokenAudience>SalesforceAudience</idTokenAudience> <idTokenIncludeStandardClaims>true</idTokenIncludeStandardClaims> <idTokenValidityInMinutes>0</idTokenValidityInMinutes> </idTokenConfig> <isConsumerSecretOptional>false</isConsumerSecretOptional> <isIntrospectAllTokens>false</isIntrospectAllTokens> <isPkceRequired>false</isPkceRequired> <isSecretRequiredForRefreshToken>false</isSecretRequiredForRefreshToken> <label>myecaglobalset</label> <shouldRotateConsumerKey>false</shouldRotateConsumerKey> <shouldRotateConsumerSecret>false</shouldRotateConsumerSecret> <isTokenExchangeEnabled>true</isTokenExchangeEnabled> <isSecretRequiredForTokenExchange>true</isSecretRequiredForTokenExchange> </ExtlClntAppGlobalOauthSettings> - Konfigurer OAuth-innstillingene for den eksterne klientappen, som påvirker den lokale forekomsten. I tillegg til de nødvendige feltene kan du eventuelt bruke commaSeparatedOauthScopes-feltet til å angi omfang. Hvis du sender en
scopes-parameter i tokenforespørselen, må omfangene samsvare med eller være et delsett av omfangene som er tildelt den eksterne klientappen. - Konfigurer OAuth-policyene for den eksterne klientappen. Hvis du oppretter en egen policyfil, må du forsikre deg om at
permittedUsersPolicyType-feltet er satt tilAdminApprovedPreAuthorized. - Distribuer OAuth-tillegget for den eksterne klientappen.
Opprett deretter en Apex for tokenutveksling.
