#### JDBC

Das Authentifizierungsmodul "Java Database Connectivity (JDBC)" ermöglicht OpenSSO die Authentifizierung von Benutzern über beliebige SQL-Datenbanken (Structured Query Language), die JDBC-fähige Treiber bieten. Die Verbindung zur SQL-Datenbank kann entweder direkt über einen JDBC-Treiber oder über ein JNDI-Verbindungspool erfolgen. Bei den JDBC-Attributen handelt es sich um Bereichsattribute. Es existieren folgende Attribute:

- Verbindungstyp

- JNDI-Name Verbindungspool

- JDBC-Treiber

- JDBC-URL

- Diesen Benutzer mit Datenbank verbinden

- Passwort zum Verbinden mit der Datenbank

- Passwort zum Verbinden mit der Datenbank (Bestätigung)

- Zeichenkette für Passwortspalte

- Vorbereitete Anweisung

- Klasse zum Umwandeln der Passwortsyntax

- Authentifizierungsebene

##### Verbindungstyp

Gibt den Typ der Verbindung zur SQL-Datenbank an, die entweder über ein JNDI (Java Naming and Directory Interface)-Verbindungspool oder einen JDBC-Treiber erfolgt. Es stehen folgende Optionen zur Verfügung:

- Verbindungspool wird über JNDI abgerufen

- Nicht-persistente JDBC-Verbindung

Das JNDI-Verbindungspool verwendet die Konfiguration aus den untergeordnetem Webcontainer.

##### JNDI-Name Verbindungspool

Wenn JNDI als Verbindungstyp ausgewählt wurde, gibt dieses Feld den Verbindungspoolnamen an. Da die JDBC-Authentifizierung das in dem Webcontainer bereitsgestellte JNDI-Verbindungspool verwendet, ist die Konfiguration des JNDI-Verbindungspools möglicherweise nicht mit anderen Webcontainern konsistent. Beispiele finden Sie im OpenSSO Administration Guide.

##### JDBC-Treiber

Wenn unter Verbindungstyp ";JDBC" festgelegt wurde, gibt dieses Feld den von der SQL-Datenbank bereitgestellten JDBC-Treiber an. Beispiel: `com.mysql.jdbc.Driver`.

##### JDBC-URL

Gibt die Datenbank-URL an, wenn unter Verbindungstyp ";JDBC" ausgewählt wurde. Der URL für mySQL lautet beispielsweise `jdbc.mysql://hostname:port/databaseName`.

##### Diesen Benutzer mit Datenbank verbinden

Gibt den Benutzernamen an, unter dem die Datenbankverbindung für die JDBC-Verbindung hergestellt wird.

##### Passwort zum Verbinden mit der Datenbank

Legt das Passwort des in ";Benutzer für die Verbindung mit der Datenbank" angegebenen Benutzers fest.

##### Passwort zum Verbinden mit der Datenbank (Bestätigung)

Bestätigen Sie das Passwort.

##### Zeichenkette für Passwortspalte

Gibt den Passwort-Spaltennamen in der SQL-Datenbank an.

##### Vorbereitete Anweisung

Gibt die SQL-Anweisung an, die das Passwort des sich anmeldenden Benutzers erhält. Beispiel:

     select Password from Employees where USERNAME = ?

##### Klasse zum Umwandeln der Passwortsyntax

Gibt den Namen der Klasse an, die das von der Datenbank erhaltene Passwort für den Passwortvergleich in das Benutzereingabeformat umwandelt. Diese Klasse muss die Schnittstelle `JDBCPasswordSyntaxTransform` implementieren.

##### Authentifizierungsebene

Die Authentifizierungsebene wird für jede Authentifizierungsmethode einzeln festgelegt. Mit diesem Wert wird angegeben, wie stark einem Authentifizierungsmechanismus vertraut wird. Sobald ein Benutzer authentifiziert wurde, wird der Wert im SSO-Token der aktuellen Sitzung gespeichert. Wird der SSO-Token einer Anwendung, auf die der Benutzer zugreifen möchte, vorgelegt, bestimmt die Anwendung anhand des gespeicherten Werts, ob die Ebene ausreicht, um den Benutzer Zugriff zu gewähren. Wenn die im SSO-Token gespeicherte Authentifizierungsebene nicht den erforderlichen Mindestwert aufweist, wird der Benutzer aufgefordert, sich erneut über einen Dienst mit einer höheren Authentifizierungsebene zu authentifizieren. Der Standardwert ist 0.

Hinweis – Hinweis: Wenn keine Authentifizierungsebene angegeben wird, wird im SSO-Token der im Kern-Authentifizierungsattribut Standard-Authentifizierungsebene angegebene Wert verwendet.