db2secRemapUserid (API) - Zuordnung von Benutzer-ID und Kennwort ändern
Diese API wird vom Db2® -Datenbankmanager auf der Clientseite aufgerufen, um eine bestimmte Benutzer-ID und ein Kennwort (und möglicherweise ein neues Kennwort und einen neuen Benutzernamensbereich) anderen Werten als den beim Herstellen der Verbindung angegebenen zuzuordnen.
Der DB2-Datenbankmanager ruft diese API nur auf, wenn beim Verbindungsaufbau eine Benutzer-ID und ein Kennwort angegeben werden. Dies verhindert, dass ein Plug-in eine Benutzer-ID selbsttätig einem anderen Paar aus Benutzer-ID und Kennwort zuordnet. Diese API ist optional und wird nicht aufgerufen, wenn dies nicht vorgesehen ist oder sie vom Sicherheits-Plug-in nicht implementiert wird.
API- und Datenstruktursyntax
SQL_API_RC ( SQL_API_FN *db2secRemapUserid)
( char userid[DB2SEC_MAX_USERID_LENGTH],
db2int32 *useridlen,
char usernamespace[DB2SEC_MAX_USERNAMESPACE_LENGTH],
db2int32 *usernamespacelen,
db2int32 *usernamespacetype,
char password[DB2SEC_MAX_PASSWORD_LENGTH],
db2int32 *passwordlen,
char newpasswd[DB2SEC_MAX_PASSWORD_LENGTH],
db2int32 *newpasswdlen,
const char *dbname,
db2int32 dbnamelen,
char **errormsg,
db2int32 *errormsglen);Parameter der API 'db2secRemapUserid'
- userid
- Eingabe oder Ausgabe. Die Benutzer-ID, deren Zuordnung zu ändern ist. Wenn ein Eingabewert für die Benutzer-ID angegeben ist, muss die API einen Ausgabewert für die Benutzer-ID bereitstellen, der mit dem Eingabewert für die Benutzer-ID identisch oder ein anderer Wert sein kann. Wenn kein Eingabewert für die Benutzer-ID angegeben ist, sollte die API keinen Ausgabewert für die Benutzer-ID zurückgeben.
- useridlen
- Eingabe oder Ausgabe. Die Länge (in Byte) des Werts des Parametersuserid.
- usernamespace
- Eingabe oder Ausgabe. Der Namensbereich der Benutzer-ID. Dieser Wert kann optional anders zugeordnet werden. Wenn kein Eingabeparameterwert angegeben wird, jedoch ein Ausgabewert zurückgegeben wird, wird der Parameter usernamespace vom DB2-Datenbankmanager nur für den Authentifizierungstyp CLIENT verwendet und für andere Authentifizierungstypen ignoriert.
- usernamespacelen
- Eingabe oder Ausgabe. Die Länge (in Byte) des Werts des Parametersusernamespace. Unter der Einschränkung, dass der Parameter usernamespacetype auf den Wert DB2SEC_NAMESPACE_SAM_COMPATIBLE (in der Datei db2secPlugin.h definiert) gesetzt sein muss, beträgt die gegenwärtig unterstützte Maximallänge 15 Byte.
- usernamespacetype
- Eingabe oder Ausgabe. Der alte und der neue Wert für den Typ des Namensbereichs. Derzeit ist der einzige unterstützte Wert für den Namensbereichstyp DB2SEC_NAMESPACE_SAM_COMPATIBLE (entspricht einem Benutzernamensstil wie
domain\myname). - Kennwort
- Eingabe oder Ausgabe. Als Eingabe ist dieser Wert das Kennwort, das anders zuzuordnen ist. Als Ausgabe ist dieser Wert das anders zugeordnete Kennwort. Wenn ein Eingabewert für diesen Parameter angegeben wird, muss die API einen Ausgabewert zurückgeben können, der sich vom Eingabewert unterscheidet. Wenn kein Eingabeparameter angegeben wird, darf die API keinen Ausgabewert für das Kennwort zurückgeben.
- passwordlen
- Eingabe oder Ausgabe. Die Länge (in Byte) des Werts des Parameterspassword.
- newpasswd
- Eingabe oder Ausgabe. Als Eingabe ist dieser Wert das neue Kennwort, das festzulegen ist. Als Ausgabe ist dieser Wert das bestätigte neue Kennwort.Hinweis: Dies ist das neue Kennwort, das vom Db2 -Datenbankmanager an den Parameter newpassword der db2secValidatePassword -API auf dem Client oder dem Server übergeben wird (abhängig vom Wert des Konfigurationsparameters authentication des Datenbankmanagers). Wenn ein neues Kennwort als Eingabe übergeben wurde, muss die API einen Ausgabewert zurückgeben können, bei dem es sich um ein anderes neues Kennwort handeln kann. Wenn kein neues Kennwort als Eingabe übergeben wird, sollte die API kein neues Kennwort als Ausgabe zurückgeben.
- newpasswdlen
- Eingabe oder Ausgabe. Die Länge (in Byte) des Werts des Parametersnewpasswd.
- dbname
- Eingabe. Der Name der Datenbank, zu der der Client die Verbindung herstellt.
- dbnamelen
- Eingabe. Die Länge (in Byte) des Werts des Parametersdbname.
- errormsg
- Ausgabe. Ein Zeiger auf die Adresse einer vom Plug-in zugeordneten ASCII-Fehlernachrichtenzeichenfolge, die in diesem Parameter zurückgegeben wird, wenn die db2secRemapUserid -API-Ausführung nicht erfolgreich ist.
- errormsglen
- Ausgabe. Ein Zeiger auf einen ganzzahligen Wert (Integer), der die Länge (in Byte) derFehlernachrichtenzeichenfolge im Parameter errormsg angibt.