eIAM Access Request (ARQ)
eIAM-AccessRequest Beschreibung
Die Applikation AccessRequest bietet den von eIAM geschützten Applikationen eine Web GUI Schnittstelle in Form einer Web Applikation an. Bei Applikationen innerhalb der Netze der Bundesverwaltung wird der Aufruf von eIAM-Access Request durch das Fehlen der grobgranularen Rolle automatisch ausgelöst. Applikationen ausserhalb der Netze der Bundesverwaltung müssen den eIAM-AccessRequest selber aufrufen. Sie können dies über einen HTTP GET Request mit den nachfolgend beschriebenen Query Parametern machen. Die Applikation kann dazu dem Benutzer eine Hinweisseite mit entsprechendem Link auf die Applikation „AccessRequest“ mit den entsprechenden Parametern anzeigen oder sie kann den Benutzer im Fall von fehlenden Zugriffsrechten automatisch auf die Applikation „AccessRequest“ umleiten. Des Weiteren ist es möglich, dass bereits für die Applikation berechtigte Benutzer aus der Applikation heraus zusätzliche Berechtigungen beantragen können. Dazu kann dem Benutzer innerhalb der Applikation ein Link angeboten werden, mit welchem er eIAM-Access aufrufen kann.Bei der eigenständigen Implementation des Links ist vor allem auf die Usability zu achten.
Die Applikation eIAM-AccessRequest unterstützt zwei Use Cases:
- Im ersten Use Case wird im Verlauf des Zugriffsantrags ein Email an die Berechtigungsverantwortlichen der entsprechenden Applikation (BVA) ausgelöst und somit ein Workflow angestossen. Diese vergeben die notwendigen Berechtigungen. Die Berechtigungsrollen werden nicht automatisch vergeben.
- Im zweiten Use Case wird ein sogenanntes „AutoRole Szenario“ unterstützt. In diesem Modus können dem Benutzer automatisch für die Applikation im eIAM-AM vordefinierte Rollen zugewiesen werden. Es wird in diesem Szenario keine E-Mail Benachrichtigung versandt. Dieser Modus kann verwendet werden, wenn die Applikation spezifische Identitätsattribute erfassen will. Damit ist es möglich, dass der Benutzer auf ein Formular innerhalb der Fachapplikation zugreifen kann, auf dem er applikationsspezifische Attribute erfassen kann.
eIAM-AccessRequest URL
Der Aufruf der Applikation AccessRequest erfolgt über den eIAM-Web PEP. Der zu verwendende absolute URI lautet demzufolge relativ zum verwendeten eIAM-Web PEP:/_pep/accessRequest
Beispiel Aufruf URL aus Sicht des Browsers des Benutzers:
https://www.gate.amt.admin.ch/_pep/accessRequest
eIAM-AccessRequest Query Argumente
Bei innerhalb der Netze der Bundesverwaltung gehosteten Applikationen wird eIAM-AccessRequest vom eIAM-Web PEP vor der Applikation parametrisiert und gesteuert. Beim Zugriff auf die Applikation „AccessRequest“ von extern gehosteten Applikationen, müssen diesem Request einige Query Argumente übergeben werden um zu definieren, auf welche Applikation der Zugriffsantrag erfolgen soll und wie der Benutzer nach Abschluss des Zugriffsantrags wieder in die Applikation zurückgeschickt werden kann.Argument | Beschreibung |
returnURL | • Adresse, auf die der Benutzer nach abgeschlossenem Zugriffsantrag geleitet wird. Die Adresse muss URL-Kodiert sein. • Entweder returnURL oder returnURLb64 muss definiert sein, damit ein Rücksprung zur Applikation möglich ist. • Es ist vor allem im „AutoRole“ Szenario wichtig zu verstehen, dass der Benutzer die beantragten Rollen erst nach einem Logout in der Applikation und dem eIAM-Web PEP und einer erneuten Anmeldung erhält. Daher sollt die returnURL den Benutzer auf eine Seite in der Applikation lenken, die ihn darüber informiert, dass er sich neu anmelden muss oder die returnURL zeigt auf die Logout URL der Applikation und löst dadurch einen SAML Single Logout auch der Session des Benutzers auf dem eIAM-Web PEP aus. |
returnURLb64 | • Adresse, auf die der Benutzer nach abgeschlossenem Zugriffsantrag geleitet wird. Diese muss Base64 kodiert sein. • Entweder returnURL oder returnURLb64 muss definiert sein, damit ein Rücksprung zur Applikation möglich ist. • Es ist vor allem im „AutoRole“ Szenario wichtig zu verstehen, dass der Benutzer die beantragten Rollen erst nach einem Logout in der Applikation und dem eIAM-Web PEP und einer erneuten Anmeldung erhält. Daher sollt die returnURLb64 den Benutzer auf eine Seite in der Applikation lenken, die ihn darüber informiert, dass er sich neu anmelden muss oder die returnURLb64 zeigt auf die Logout URL der Applikation und löst dadurch einen SAML Single Logout auch der Session des Benutzers auf dem eIAM-Web PEP aus. |
appl | • Applikation im eIAM-AM, für die der Zugriffsantrag erfolgen soll. • Entweder applURL oder appl MUSS definiert sein, damit die Applikation für den Antrag identifiziert werden kann. |
applURL | • URL der Applikation für die der Zugriffsantrag erfolgen soll. • Entweder applURL oder appl MUSS definiert sein, damit die Applikation für den Antrag identifiziert werden kann. • Die Adresse muss URL-Kodiert sein. |
client (optional) | • Mandant für den der Zugriffsantrag gelten soll. • Kann zum Beispiel benutzt werden, um bei Applikationen, die mehreren Mandanten zugeordnet sind, die Mandantenauswahl zu unterdrücken. |
CICD (optional) | • Das CICD bestimmt das Aussehen der angezeigten Masken. |
eIAM-AccessRequest Beispiel
Im folgenden Beispiel wird in der Produktionsumgebung die Applikation „AccessRequest“ über den eIAM-Web PEP www.gate.bit.admin.ch aufgerufen um für den Benutzer einen Zugriffsantrag für die Applikation „Statistika“ des Mandanten „BIT“ auszulösen. Nach erfolgtem Zugriffsantrag soll der Benutzer auf die URL https://www.externalhost.admin.ch/statistika/private/logout.do der ausserhalb der Netze der Bundesverwaltung gehosteten Applikation zurückgeleitet werden.Aufruf:
https://www.gate.amt.admin.ch/_pep/accessRequest? applURL=https%3A%2F%2Fwww.gate.bit.admin.ch%2Fstatistika%2Fprivate%2F&
client=BIT&returnURLb64=aHR0cHM6Ly93d3cuZXh0ZXJuYWxob3N0LmFkbWluLmNoL
3N0YXRpc3Rpa2EvcHJpdmF0ZS9sb2dvdXQuZG8
eIAM-AccessRequest Ablauf des Zugriffsantrags
Dieses Kapitel erklärt den Ablauf des Zugriffs eines Benutzers auf eine ausserhalb der Netze der Bundesverwaltung gehosteten Applikation, auf welche er noch nicht berechtigt ist.Die nachstehende Abbildung den Ablauf des Zugriffs eines Benutzers auf eine externe Applikation, auf die er noch nicht berechtigt ist. Das Szenario der externen Applikation wurde gewählt, weil dies der komplexere Fall darstellt.
Der Zugriff auf die Applikation löst die Authentifizierung des Benutzers aus. Anschliessend an die Authentifizierung prüft die Applikation, ob der Benutzer für die Applikation autorisiert ist.
Ist der Benutzer nicht für die Applikation autorisiert, so löst die externe Applikation den Zugriffsantrag mit dem Feature „AccessRequest“ des Services eIAM aus.
-
- Zugriff eines Benutzers auf eine Applikation, auf die er noch nicht berechtigt ist
Durch eIAM-AccessRequest wird als erstes überprüft, ob für den Benutzer bereits Identitätsreferenzen im eIAM-AM erfasst sind. Dies erfolgt sowohl im eIAM-AM Supermandanten, wie auch im eIAM-AM Access Mandant. Allfällig noch fehlende Identitätsreferenzen werden automatisch erzeugt.
Mittels der im Aufruf von eIAM-Access Request mitgegebenen Parameter, wird die richtige Applikation und die zugehörige Profil-Policy im eIAM-AM Access Mandant ermittelt. Dies kann eventuell eine Benutzerinteraktion in der Form einer Auswahl durch den Benutzer erfordern, falls mehrere Applikationen oder Mandanten infrage kommen.
Aus der Profile-Policy der Applikation im eIAM-AM wird die Konfiguration für den eIAM-AccessRequest gelesen, z.B. ob und welche Rollen automatisch vergeben werden sollen. Ebenso wird bestimmt, welcher Information dem Benutzer als Abschlussmeldung angezeigt wird. Dies kann entweder eine Information sein, dass der Zugriff nach der Abmeldung und erneuter Anmeldung bereits möglich sei oder dass ein Administrator den Zugriffsantrag zuerst noch bearbeiten muss und der Benutzer anschliessend vom Administrator entsprechend informiert wird. In der Abschlussmeldung wird dem Benutzer einen Link angezeigt, mit dem er wieder zurück zur Applikation gelangen kann, falls eine Rücksprungadresse mitgegeben wurde.
Die neuen Rollen, die nach dem AccessRequest vergeben wurden, können erst verwendet werden wenn sich der Benutzer abmeldet und frisch anmeldet. Erst dann werden die zugewiesenen Rollen in die neue SAML Assertion übernommen und stehen dem eIAM-Web PEP und der Applikation zur Verfügung. Für Applikationen, die den Service eIAM-Web verwenden und somit von einem eIAM PEP geschützt werden, wird diese Neuanmeldung direkt vom eIAM-Web PEP ausgelöst. Bei externen Applikationen, die nicht hinter dem eIAM-Web PEP stehen, muss dies von der Applikation selber ausgelöst werden. Die Rücksprungadresse in die Applikation MUSS demnach im „AutoRole Szenario“ auf die Logout URL der Applikation zeigen.