Alltid användaretablering just-in-time-user-provisioning

AEM formulär har stöd för etablering i realtid av användare som ännu inte finns i användarhantering. Med just-in-time-etablering läggs användare automatiskt till i användarhanteringen efter att inloggningsuppgifterna har autentiserats. Dessutom tilldelas relevanta roller och grupper dynamiskt till den nya användaren.

Behovet av användarprovisionering i precis tid need-for-just-in-time-user-provisioning

Så här fungerar traditionell autentisering:

  1. När en användare försöker logga in på AEM skickar användarhanteringen användarens inloggningsuppgifter sekventiellt till alla tillgängliga autentiseringsleverantörer. (Inloggningsuppgifterna innehåller en kombination av användarnamn/lösenord, Kerberos-biljett, PKCS7-signatur och så vidare.)

  2. Autentiseringsprovidern validerar inloggningsuppgifterna.

  3. Autentiseringsprovidern kontrollerar sedan om användaren finns i databasen för användarhantering. Följande resultat är möjliga:

    Finns: Om användaren är aktuell och olåst returnerar Hantering av användare autentiseringen. Om användaren inte är aktuell eller låst returneras ett autentiseringsfel.

    Finns inte: Användarhantering returnerar ett autentiseringsfel.

    Ogiltig: Användarhantering returnerar ett autentiseringsfel.

  4. Resultatet som returneras av autentiseringsprovidern utvärderas. Om autentiseringsprovidern returnerade autentiseringen kan användaren logga in. Annars kontrolleras användarhanteringen med nästa autentiseringsprovider (steg 2-3).

  5. Autentiseringsfel returneras om ingen tillgänglig autentiseringsprovider validerar inloggningsuppgifterna.

När etablering bara är i tid implementeras skapas en ny användare dynamiskt i användarhantering om en av autentiseringsleverantörerna validerar användarens inloggningsuppgifter. (Efter steg 3 i den traditionella autentiseringsproceduren ovan.)

Implementera etablering av användare som bara är i tid implement-just-in-time-user-provisioning

API:er för etablering i precis tid apis-for-just-in-time-provisioning

AEM innehåller följande API:er för etablering i precis tid:

package com.adobe.idp.um.spi.authentication  ;
publ ic interface IdentityCreator {
/**
* Tries  to create a user with the  in formation  provided in the <code>UserProvisioningBO</code> object.
* If the user is successfully created, a valid AuthResponse is returned along with the information using which the user was created.
* It is the responsibility of the IdentityCreator to set the User obje ct  in the cre dential map with th e  ke y  <code>UMA u thenticationUtil.authenticatedUserKey</code>
* The credentials are available in the <code>UserProvisioningBO</code> object in the 'credentials' property.
* If the IdentityCreator is unable to create a user due to any reason, it returns <code>null</code>
* @param userBO An object of <code>com.adobe. i dp.um . spi.authenti c ationUserProvisioningBO</code>
* @return */public AuthResponse create(UserProvisioningBO userBO);
/**
* Returns the name of the IdentityCreator which will be registered in preferences.
* This name is used to associate the IdentityProvider with the Auth Provider Configuration in the domain.
* @return The name of the Identity Creator which is recognized in Configuration.
*/
public String getName();
}
package com.adobe.idp.um.spi.authentication;
import com.adobe.idp.um.api.infomodel.User;
public interface AssignmentProvider {
/**
* Tries to assign roles or permissions or group memberships to users created via Just-in-time provisioning.
* @param user The User created via the Just-in-time provisioning process.
* @return a Boolean flag indicating whether the assignment was successful or not.
*/
public Boolean assign(User user);
/**
* Returns the name of the AssignmentProvider through which it is registered under preferences.
* This name is used to associate the AssignmentProvider with the Auth Provider Configuration in the domain.
* @return The name of the AssignmentProvider which is recognized in Configuration.
*/public String getName();
}

Att tänka på när du skapar en domän som bara är aktiverad vid en viss tidpunkt considerations-while-creating-a-just-in-time-enabled-domain

  • När du skapar en anpassad IdentityCreator för en hybriddomän, se till att ett dummy-lösenord anges för den lokala användaren. Lämna inte det här lösenordsfältet tomt.
  • Rekommendation: Använd DomainSpecificAuthentication för att validera inloggningsuppgifter mot en specifik domän.

Skapa en domän som är aktiverad just-in-time create-a-just-in-time-enabled-domain

  1. Skriv en DSC som implementerar API:erna i avsnittet"API:er för etablering i precis tid".

  2. Distribuera DSC till Forms Server.

  3. Skapa en domän som bara är aktiverad vid en viss tidpunkt:

    • I administrationskonsolen klickar du på Inställningar > Användarhantering > Domänhantering > Ny företagsdomän.
    • Konfigurera domänen och välj Aktivera etablering i realtid.
    • Lägg till autentiseringsproviders. När du lägger till autentiseringsproviders väljer du en registrerad identitetsskapare och tilldelningsprovider på skärmen Ny autentisering.
  4. Spara den nya domänen.

Bakom scenen behind-the-scenes

Anta att en användare försöker logga in AEM formulär och att en autentiseringsleverantör accepterar sina användaruppgifter. Om användaren inte finns i databasen för användarhantering än misslyckas identitetskontrollen för användaren. AEM utför nu följande åtgärder:

  1. Skapa en UserProvisioningBO objektet med autentiseringsdata och placera det i en autentiseringsuppgiftskarta.
  2. Baserat på domäninformation som returneras av UserProvisioningBO, hämta och anropa den registrerade IdentityCreator och AssignmentProvider för domänen.
  3. Anropa IdentityCreator. Om det returnerar en lyckad AuthResponse, extrahera UserInfo från referenskartan. Skicka det till AssignmentProvider för grupp-/rolltilldelning och annan efterbearbetning efter att användaren har skapats.
  4. Om användaren har skapats utan fel returnerar du användarens inloggningsförsök.
  5. För hybriddomäner hämtar du användarinformation från autentiseringsdata som tillhandahålls till autentiseringsprovidern. Om den här informationen har hämtats kan du skapa användaren direkt.
NOTE
Etableringsfunktionen i precis tid levereras med en standardimplementering av IdentityCreator som du kan använda för att dynamiskt skapa användare. Användare skapas med den information som är associerad med katalogerna i domänen.
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2