OAuth 2.0 gebruikers-wachtwoord-stroom voor speciale scenario's
U kunt de gebruikersnaam/wachtwoord-stroom gebruiken om via een verbonden app een client te autoriseren die de inloggegevens van de gebruiker al heeft. Het wordt echter aanbevolen deze stroom te vermijden omdat deze gebruikersgegevens heen en weer stuurt. Gebruik deze alleen als er een grote maten van vertrouwen is tussen de resource-eigenaar en de client, als de client een "interne" app is, als Salesforce op dat moment de gegevens host en als andere verleningdstypen niet beschikbaar zijn. Stel in dergelijke gevallen de gebruikersmachtigingen in op minimale toegang en beveilig opgeslagen inloggegevens tegen ongeoorloofde toegang.
Vereiste editions
| Beschikbaar in: zowel Salesforce Classic als Lightning Experience |
| Beschikbaar in: Alle editions |
Zie Nieuwe verbonden apps kunnen niet meer worden gemaakt in Spring '26 voor meer informatie.
De gebruikersnaam-wachtwoord-stroom genereert toegangstokens als Salesforce-sessie-ID's die niet zichtbaar zijn. Aangezien de toegangstokens tijdelijk zijn, worden verbonden apps die deze stroom gebruiken, niet weergegeven op de pagina OAuth-gebruik van verbonden apps, zelfs niet als ze een actieve sessie hebben. Deze stroom ondersteunt geen bereiken of vernieuwingstokens. Experience Cloud-site biedt geen ondersteuning voor de OAuth 2.0-stroom username-password (gebruikersnaam-wachtwoord).
Dit zijn de belangrijkste stappen in de gebruikersnaam-wachtwoord-stroom.
- De verbonden app verzoekt om een toegangstoken door de inloggegevens van de gebruiker te verzenden naar het Salesforce-tokeneindpunt.
- Nadat het verzoek is geverifieerd, verleent Salesforce een toegangstoken aan de verbonden app.
- De verbonden app kan het toegangstoken gebruiken om namens de gebruiker toegang te krijgen tot de beschermde gegevens.
Toegangstoken aanvragen
De verbonden app vraagt een toegangstoken aan door de gebruikersnaam en het wachtwoord van de gebruiker als een out-of-band POST naar het Salesforce-tokeneindpunt te sturen. Deze POST is een voorbeeld.
grant_type=password&
client_id=3MVG9lKcPoNINVBIPJjdw1J9LLM82HnFVVX19KY1uA5mu0QqEWhqKpoW3svG3XHrXDiCQjK1mdgAvhCscA9GE&
client_secret=1955279925675241571&
username=testuser@salesforce.com&
password=mypasswordNeem deze inloggegevens op in de post.
| Parameter | Beschrijving |
|---|---|
grant_type
|
Het OAuth 2.0-toekenningstype dat de verbonden app aanvraagt. De waarde moet password voor deze stroom zijn. |
client_id
|
De consumentensleutel van de verbonden app. Als u toegang wilt tot de consumentensleutel, zoekt u in Appbeheer de verbonden app en selecteert u Weergeven in de vervolgkeuzelijst. Klik vervolgens op Consumentengegevens beheren. Soms wordt u gevraagd uw identiteit te verifiëren voordat u de consumentensleutel kunt weergeven. |
client_secret
|
Het consumentengeheim van de verbonden app. Als u toegang wilt tot het consumentengeheim, zoekt u in Appbeheer de verbonden app en selecteert u Weergeven in de vervolgkeuzelijst. Klik vervolgens op Consumentengegevens beheren. Soms wordt u gevraagd uw identiteit te verifiëren voordat u het consumentengeheim kunt weergeven. |
username
|
De gebruikersnaam van de gebruiker die door de verbonden app wordt geïmiteerd. |
password
|
Het wachtwoord van de gebruiker die door de verbonden app wordt geïmiteerd. Wanneer de gebruikersnaam-wachtwoord-stroom met een API wordt gebruikt, maakt u in het inlogscherm voor de gebruikersnaam en het wachtwoord een veld waarin gebruikers hun beveiligingstoken kunnen invoeren. Een beveiligingstoken is een automatisch gegenereerde code die u aan het eind van uw wachtwoord moet toevoegen als u zich vanaf een niet-vertrouwd netwerk bij Salesforce aanmeldt. Voeg wachtwoord en token aaneen als u het verificatieverzoek doorgeeft. |
format
|
Als de verwachte retournotatie niet is opgenomen in de header van het verzoek, kunt u deze opgeven. De parameter
|
Salesforce verleent een toegangstoken
Nadat het verzoek is geverifieerd, verzendt Salesforce een reactie naar de client.
Dit is een voorbeeld van een respons.
{"id":"https://login.salesforce.com/id/00Dx0000000BV7z/005x00000012Q9P",
"issued_at":"1278448832702",
"instance_url":"https://yourInstance.salesforce.com/",
"signature":"0CmxinZir53Yex7nE0TD+zMpvIWYGb/bdJh6XfOH6EQ=",
"access_token":"00Dx0000000BV7z!AR8AQAxo9UfVkh8AlV0Gomt9Czx9LjHnSSpwBMmbRcgKFmxOtvxjTrKW19ye6PE3Ds1eQz3z8jr3W7_VbWmEu4Q8TVGSTHxs",
"token_type":"Bearer"}In de hoofdtekst van de respons komen de volgende parameters voor.
| Parameter | Beschrijving |
|---|---|
id
|
Een identiteits-URL die kan worden gebruikt voor het identificeren van de gebruiker en voor het uitvoeren van een query voor meer informatie over de gebruiker. Zie Identiteits-URL's. |
issued_at
|
Het tijdstempel voor wanneer de handtekening is gemaakt, in milliseconden. |
instance_url
|
Een URL die het exemplaar van de organisatie van de gebruiker aangeeft. Bijvoorbeeld: https://yourInstance.salesforce.com/.
|
signature
|
Base64-gecodeerde HMAC-SHA256-handtekening ondertekend met de client_secret. De handtekening kan de aaneengeschakelde ID en issued_at value bevatten, die u kunt gebruiken om te controleren of de identiteits-URL niet is gewijzigd sinds de server deze heeft verzonden. |
access_token
|
Een OAuth-token dat een verbonden app gebruikt om toegang tot een beschermde resource aan te vragen namens de clienttoepassing. Het toegangstoken kan vergezeld gaan van aanvullende machtigingen in de vorm van bereiken. |
token_type
|
Een Bearer, dat wordt gebruikt voor alle responsen die een toegangstoken bevatten.
|
