Single Sign On single-sign-on

CAUTION
AEM 6.4 heeft het einde van de uitgebreide ondersteuning bereikt en deze documentatie wordt niet meer bijgewerkt. Raadpleeg voor meer informatie onze technische ondersteuningsperioden. Ondersteunde versies zoeken hier.

Met Single Sign On (SSO) heeft een gebruiker toegang tot meerdere systemen nadat hij de verificatiegegevens (zoals een gebruikersnaam en wachtwoord) eenmaal heeft opgegeven. Een afzonderlijk systeem (dat als vertrouwde op authentiek wordt bekend) voert de authentificatie uit en verstrekt Experience Manager de gebruikersgeloofsbrieven. De Experience Manager controleert en handhaaft de toegangstoestemmingen voor de gebruiker (d.w.z. bepaalt welke middelen de gebruiker wordt toegestaan om toegang te hebben).

De dienst van de Handler van de Authentificatie SSO ( com.adobe.granite.auth.sso.impl.SsoAuthenticationHandler) verwerkt de verificatieresultaten die door de vertrouwde authenticator worden verschaft. De manager van de Authentificatie SSO zoekt naar een ssid (Herkenningsteken SSO) als waarde van een speciaal attribuut in de volgende plaatsen in deze orde:

  1. Aanvraagkoppen
  2. Cookies
  3. Parameters aanvragen

Wanneer een waarde wordt gevonden, is het onderzoek gebeëindigd en deze waarde wordt gebruikt.

Vorm de volgende twee diensten om de naam van de attributen te erkennen die de steun opslaan:

  • De aanmeldingsmodule.
  • De SSO-verificatieservice.

U moet dezelfde kenmerknaam opgeven voor beide services. Het kenmerk is opgenomen in de SimpleCredentials die worden verstrekt aan Repository.login. De waarde van het kenmerk is irrelevant en wordt genegeerd, de aanwezigheid ervan is alleen belangrijk en geverifieerd.

SSO configureren configuring-sso

Om SSO voor een AEM instantie te vormen, moet u vormen SSO-verificatiehandler:

  1. Wanneer het werken met AEM zijn er verscheidene methodes om de configuratiemontages voor dergelijke diensten te beheren; zie OSGi configureren voor meer details en de aanbevolen werkwijzen.

    Bijvoorbeeld voor NTLM-set:

    • Pad: indien nodig; bijvoorbeeld: /

    • Namen van koptekst: LOGON_USER

    • ID-indeling: ^<DOMAIN>\\(.+)$

      Wanneer <*DOMAIN*> wordt vervangen door uw eigen domeinnaam.
      Voor CoSign:

    • Pad: indien nodig; bijvoorbeeld: /

    • Namen van koptekst: remote_user

    • ID-indeling: asIs

    Voor SiteMinder:

    • Pad: indien nodig; bijvoorbeeld: /
    • Naam koptekst: SM_USER
    • ID-indeling: asIs
  2. Bevestig dat Single Sign On naar wens werkt. met inbegrip van de vergunning.

CAUTION
Zorg ervoor dat de gebruikers tot AEM niet direct kunnen toegang hebben als SSO wordt gevormd.
Door gebruikers te verplichten door een Webserver te gaan die de agent van uw SSO systeem in werking stelt, wordt gewaarborgd dat geen gebruiker een kopbal, een koekje of een parameter kan direct verzenden die de gebruiker zal leiden om door AEM worden vertrouwd, aangezien de agent dergelijke informatie zal filtreren indien verzonden van de buitenkant.
Elke gebruiker die rechtstreeks toegang heeft tot de AEM zonder de webserver te gebruiken, kan als gebruiker optreden door de header, cookie of parameter te verzenden als de namen bekend zijn.
Zorg ook dat van kopballen, koekjes en de namen van de verzoekparameter, u slechts vormt die voor uw opstelling SSO wordt vereist.
NOTE
Single Sign On wordt vaak gebruikt in combinatie met LDAP.
NOTE
Als u ook de Dispatcher met de Microsoft Internet Information Server (IIS) is een aanvullende configuratie vereist in:
  • disp_iis.ini
  • IIS
In disp_iis.ini set:
(zie Dispatcher installeren met de Microsoft Internet Information Server voor volledige informatie)
  • servervariables=1 (stuurt IIS-servervariabelen als aanvraagheaders door naar de externe instantie)
  • replaceauthorization=1 (Vervangt een koptekst met de naam "Autorisatie", anders dan "Standaard", door de waarde "Standaard".)
In IIS:
  • disable Anonieme toegang

  • enable Geïntegreerde Windows-verificatie

U kunt zien welke authentificatiemanager op om het even welke sectie van de inhoudsboom wordt toegepast door te gebruiken Authenticator optie van de Felix Console; bijvoorbeeld:

http://localhost:4502/system/console/slingauth

De handler die het beste overeenkomt met het pad wordt als eerste gevraagd. Bijvoorbeeld, als u manager-A voor de weg vormt / en handler-B voor het pad /contenten vervolgens een verzoek om /content/mypage.html zal eerst manager-B vragen.

screen_shot_2012-02-15at21006pm

Voorbeeld example

Voor een cookieaanvraag (via de URL) http://localhost:4502/libs/wcm/content/siteadmin.html):

GET /libs/cq/core/content/welcome.html HTTP/1.1
Host: localhost:4502
Cookie: TestCookie=admin

De volgende configuratie gebruiken:

  • Pad: /

  • Namen van koptekst: TestHeader

  • Cookie-namen: TestCookie

  • Parameternamen: TestParameter

  • ID-indeling: AsIs

Het antwoord zou zijn:

HTTP/1.1 200 OK
Connection: Keep-Alive
Server: Day-Servlet-Engine/4.1.24
Content-Type: text/html;charset=utf-8
Date: Thu, 23 Aug 2012 09:58:39 GMT
Transfer-Encoding: chunked

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "https://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>Welcome to Adobe&reg; CQ5</title>
....

Dit werkt ook als u daarom vraagt:
http://localhost:4502/libs/cq/core/content/welcome.html?TestParameter=admin

Of u kunt de volgende krullingsopdracht gebruiken om de TestHeader header naar admin:
curl -D - -H "TestHeader: admin" http://localhost:4502/libs/cq/core/content/welcome.html

NOTE
Wanneer u de aanvraagparameter in een browser gebruikt, ziet u slechts een deel van de HTML - zonder CSS. Dit komt omdat alle verzoeken van de HTML zonder de verzoekparameter worden gedaan.

Wanneer u SSO gebruikt, worden aanmelden en afmelden extern afgehandeld, zodat AEM eigen aftekenkoppelingen niet langer van toepassing zijn en moeten worden verwijderd.

U kunt de koppeling Afmelden op het welkomstscherm als volgt verwijderen.

  1. Bedekking /libs/cq/core/components/welcome/welcome.jsp tot /apps/cq/core/components/welcome/welcome.jsp

  2. het volgende deel uit het gsp verwijderen.

    <a href="#" onclick="signout('<%= request.getContextPath() %>');" class="signout"><%= i18n.get("sign out", "welcome screen") %>

Voer de volgende stappen uit om de koppeling Afmelden die beschikbaar is in het persoonlijke menu van de gebruiker in de rechterbovenhoek te verwijderen:

  1. Bedekking /libs/cq/ui/widgets/source/widgets/UserInfo.js tot /apps/cq/ui/widgets/source/widgets/UserInfo.js

  2. Verwijder het volgende deel uit het bestand:

    code language-none
    menu.addMenuItem({
        "text":CQ.I18n.getMessage("Sign out"),
        "cls": "cq-userinfo-logout",
        "handler": this.logout
    });
    menu.addSeparator();
    
recommendation-more-help
6a71a83d-c2e0-4ce7-a6aa-899aa3885b56