X4 Produktdokumentation

User Identity Adapter

Der Adapter ermöglicht es, Informationen über den aktuell angemeldeten Benutzer abzurufen, z. B. Benutzername, Vor- und Nachname, eingestellte Sprache, E-Mail-Adresse und Gruppen, denen dieser Benutzer angehört.

Eigenschaften (Properties)

Operation

Vom Adapter ausgeführte Operation

Mögliche Werte:

  • GetUserIdentity: Gibt die Informationen über den Benutzer zurück.

  • SetUserIdentity: Ändert die Informationen über den aktuellen Benutzer auf Basis eines JSON Web Tokens (JWT).

Parameter

generateTestGroup

Legt fest, ob ein Test-Gruppeneintrag generiert werden soll, wenn der Adapter im Debug-Modus ausgeführt wird.

info Funktioniert ausschließlich im Debug-Modus.

Mögliche Werte:

  • true: Beispielhaften Gruppeneintrag generieren

  • false: Keinen beispielhaften Gruppeneintrag generieren

testGroupName

Technischer Name des Test-Gruppeneintrags, wenn generateTestGroup auf true gesetzt ist.

Mögliche Werte:

Beliebige Zeichenfolge

testGroupDisplayName

Anzeigename des Test-Gruppeneintrags, wenn generateTestGroup auf true gesetzt ist.

Mögliche Werte:

Beliebige Zeichenfolge

username

Verwendeter Benutzername, wenn generateTestGroup auf true gesetzt ist.

Mögliche Werte:

Beliebige Zeichenfolge

lastname

Verwendeter Nachname, wenn generateTestGroup auf true gesetzt ist.

Mögliche Werte:

Beliebige Zeichenfolge

firstname

Verwendeter Vorname, wenn generateTestGroup auf true gesetzt ist.

Mögliche Werte:

Beliebige Zeichenfolge

email

Verwendete E-Mail-Adresse, wenn generateTestGroup auf true gesetzt ist.

Mögliche Werte:

Beliebige gültige E-Mail-Adresse

timezone

Benutzerzeitzone gemäß ISO 8601, die im Debug-Modus ausgegeben wird.

Mögliche Werte: 

Zeitzone gemäß ISO 8601 duration format, z. B. PT5H

jwtToken

Dieser Parameter wird mit der Operation SetUserIdentity verwendet.

JSON Web Token (JWT) für den Austausch von Claims mit Informationen über den Benutzer

Mögliche Werte:

Beliebiger gültiger Token

jwtUsername

Dieser Parameter wird mit der Operation SetUserIdentity verwendet.

Definiert den Feldnamen für den Benutzernamen im JSON Web Token.

Mögliche Werte:

Beliebige Zeichenfolge

jwtGroups

Dieser Parameter wird mit der Operation SetUserIdentity verwendet.

Definiert den Feldnamen für die Gruppen im JWT. Abhängig von der Struktur werden kommagetrennte Werte verwendet, und es sind nur Elemente der ersten oder zweiten Ebene zulässig.

Mögliche Werte:

Beliebige Zeichenfolge

jwtRoles

Dieser Parameter wird mit der Operation SetUserIdentity verwendet.

Definiert den Feldnamen für die Gruppen im JWT. Abhängig von der Struktur werden kommagetrennte Werte verwendet, und es sind nur Elemente der ersten oder zweiten Ebene zulässig.

Mögliche Werte:

Beliebige Zeichenfolge

Statuswerte

1

Die Adapter-Operation wurde erfolgreich ausgeführt.

-1

Bei der Ausführung des Adapters ist ein Fehler aufgetreten.

Output-XML

XML
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Result>
	<Username></Username>
	<Language></Language>
	<Groups>
		<Group>
			<Name></Name>
			<DisplayName></DisplayName>
		</Group>
		<Group>
			<Name></Name>
			<DisplayName></DisplayName>
		</Group>
	</Groups>
	<Timezone>
		<Offset></Offset>
	</Timezone>
    <AccessToken></AccessToken>
	<SessionId></SessionId>
	<Claims>
		<Claim key="" value=""/>
		<Claim key="" value=""/>
		<ComplexClaim key="" type="">
			<ComplexClaim key="" type="">
				<ComplexClaim key="" type="">
					<Entry value=""/>
					<Entry value=""/>
					<Entry value=""/>
				</ComplexClaim>
				<isParent></isParent>
			</ComplexClaim>
			<isParent></isParent>
		</ComplexClaim>
	</Claims>
</Result>

XSD

XML
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:element name="Result" type="ResultType"/>
	<xs:complexType name="GroupType">
		<xs:sequence>
			<xs:element type="xs:string" name="Name"/>
			<xs:element type="xs:string" name="DisplayName"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GroupsType">
		<xs:sequence>
			<xs:element type="GroupType" name="Group" maxOccurs="unbounded" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="TimezoneType">
		<xs:sequence>
			<xs:element type="xs:duration" name="Offset"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ClaimType">
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute type="xs:string" name="key" use="optional"/>
				<xs:attribute type="xs:string" name="value" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="EntryType">
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute type="xs:string" name="value" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="ComplexClaimType">
		<xs:sequence>
			<xs:element type="EntryType" name="Entry" maxOccurs="unbounded" minOccurs="0"/>
			<xs:element type="ComplexClaimType" name="ComplexClaim" minOccurs="0"/>
			<xs:element type="ClaimType" name="Claim" maxOccurs="unbounded" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute type="xs:string" name="key" use="optional"/>
		<xs:attribute type="xs:string" name="type" use="optional"/>
	</xs:complexType>
	<xs:complexType name="ClaimsType">
		<xs:sequence>
			<xs:element type="ClaimType" name="Claim" maxOccurs="unbounded" minOccurs="0"/>
			<xs:element type="ComplexClaimType" name="ComplexClaim" maxOccurs="unbounded" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ResultType">
		<xs:sequence>
			<xs:element type="xs:string" name="Username"/>
			<xs:element type="xs:string" name="Language"/>
			<xs:element type="GroupsType" name="Groups"/>
			<xs:element type="TimezoneType" name="Timezone"/>
			<xs:element type="xs:string" name="AccessToken"/>
			<xs:element type="xs:string" name="SessionId"/>
			<xs:element type="ClaimsType" name="Claims"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>