Vreau să afișez diferite ecrane pe baza aplicației conectate care este utilizată pentru a vă conecta la Salesforce. Poate fluxul de conectare să știe cumva ce aplicație conectată este utilizată?

Există mai multe variabile Flux de conectare pe care le putem utiliza, dar niciuna dintre acestea nu conține aplicația conectată.

Niciuna dintre următoarele nu pare utilă pentru acest scenariu ( sursă ):

  • LoginFlow_LoginType – Această variabilă vă permite să desemnați un tip de utilizator pentru Flow / Org.
  • LoginFlow_IpAddress – Această variabilă acționează ca adresa IP a unui utilizator. Prin intermediul acestei variabile, aveți puterea de a delega o adresă IP pentru un utilizator, profil și alte câmpuri legate de utilizator.
  • LoginFlow_UserAgent – Această variabilă reprezintă șirul de browser al utilizatorului. De asemenea, vă permite să împiedicați utilizatorii să utilizeze Internet
    Explorer pentru a vă conecta la organ.
  • LoginFlow_Platform – Această variabilă vă arată din ce tip de sistem (adică Mac OSX) se conectează utilizatorii dvs.
  • LoginFlow_Application – Similar cu variabila de mai sus; cu toate acestea, arată la ce tip de dispozitiv se conectează utilizatorii dvs. (de exemplu, iPhone, tabletă, desktop etc.), astfel încât să știți în ce locație de finalizare să le mutați.
  • LoginFlow_Community – Această variabilă arată în ce comunitate se află în prezent utilizatorul dvs., dacă este cazul. LoginFlow_SessionLevel – Această variabilă este responsabilă pentru securitate și funcționează fie cu o asigurare ridicată, fie cu o asigurare standard.
  • LoginFlow_UserId – Această variabilă funcționează pentru a afișa ID-uri de caractere (de până la 18 caractere) și vă permite, de asemenea, să căutați utilizatorii dvs. și să căutați în sistem pentru a găsi câmpuri similare.

Comentarii

  • Un singur utilizator va fi desemnat să se conecteze la organizația dvs. de la mai multe aplicații conectate? De asemenea, se vor conecta utilizând SSO sau își vor folosi UserId / PW?
  • Da, pot folosi mai multe aplicații conectate pentru a se conecta. Salesforce este furnizorul de identitate, astfel încât să își poată folosi numele de utilizator / parola Salesforce sau furnizorii de autentificare Facebook sau Google.
  • Se aplică acest lucru pentru TOȚI utilizatorii (intern & extern ) sau numai pentru utilizatorii comunității? Dacă este doar pentru utilizatorii comunității, pot oferi o soluție. Dacă pentru toți utilizatorii, este posibil să nu aveți noroc.
  • Numai utilizatorii comunității. Folosim licența de autentificare comunitară pentru IdP

Răspuns

Este posibil să aveți noroc. Există ceva numit ExperienceID sau expid care ar putea fi folosit pentru a face ceea ce doriți să realizați. Scopul său principal este de a putea personaliza „experiența de branding” pentru clienți, în funcție de de unde sunt trimise către comunitatea dvs.

Puteți afla mai multe despre aceasta citind acest link la Ghidul de implementare a identității externe Salesforce și, de asemenea, citind Schimbați experiența de conectare a utilizatorilor dvs. cu marca dinamică din notele de ediție de iarnă . Dacă asociați fiecare aplicație conectată cu o altă expid, mi s-ar părea că l-ați putea folosi pentru a realiza ceea ce doriți cu aplicațiile dvs. conectate atribuind fiecărei aplicații un expid unic.

Experiența ID poate fi apoi utilizată pentru a extinde un punct final utilizând una dintre cele două strategii diferite așa cum se arată mai jos.

Extindeți următoarele puncte finale cu expid_value.

  • community-url / services / oauth2 / authorize / expid_value
  • community-url / idp / endpoint / HttpPost / expid_value
  • community-url / idp / endpoint / HttpRedirect / expid_value

Extindeți următoarele puncte finale cu expid = {value}.

  • community-url_login_page? Expid = {value}
  • community-url / CommunitiesSelfReg? Expid = {value}
  • community-url / .well-known / auth-configuration? expid = {value}

Treceți o valoare expid diferită la pagina de auto-înregistrare pentru a furniza un flux de înregistrare diferit pentru fiecare brand.

Valoarea ID-ului experienței este capturată într-un cookie mai degrabă decât în adresa URL. De exemplu, dacă expid_value este setat la Clienți, un cookie asociat are valoarea expid_Customers.

Comentarii

  • răspuns destul de inteligent
  • Întrebarea lor vine la ” cum se accesează expidul într-un flux de conectare? ”
  • @FernandoGavinho Depinde dacă ‘ l-ați trecut într-un cookie sau ca parte a valorii expid care poate fi păstrată într-un utilizator comunitar Profilul ‘. De asemenea, l-ați putea folosi ca parametru de pornire pentru fluxul dvs. de conectare, deoarece ‘ l-ați folosit pentru a extinde punctul final de conectare.Se pare că ‘ ai multe opțiuni în funcție de modul în care îl trimiți din aplicația conectată.
  • În cazul meu de utilizare, folosesc punctul final SSO ” community-url / idp / endpoint / HttpPost / expid_value „. Cu toate acestea, nu ‘ nu știu cum să accesez această valoare în flux. Aș putea dacă ar fi o pagină visualforce, dar există o modalitate de a le accesa în flux? Poate numirea unei variabile doar pentru intrare? Am încercat ” expid ” și ” ExpId „, dar nu pare să funcționeze.
  • L-am găsit. Pentru a accesa expId în fluxul de conectare, trebuie să apelați metoda System.Site.getExperienceId (). Acest lucru se poate face în controler dacă este ‘ o pagină Visualforce sau într-o InvocableMethod dacă ‘ este un flux vizual.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *