API db2commexitUserIdentity -Identité de l'utilisateur
Cette fonction est appelée pour fournir l'identité de l'utilisateur pour le socket en cours. Elle s'applique uniquement aux bibliothèques d'exit de mémoire tampon de communication.
Cette fonction est appelée pour informer la bibliothèque d'exit de mémoire tampon de communication du nom d'utilisateur et de l'ID autorisé de session utilisés pour établir la connexion. La fonction est également appelée si ces paramètres changent en raison d'un changement de contexte sécurisé d'utilisateur ou de SET SESSION AUTHORIZATION. Le nom d'utilisateur et l'ID d'autorisation de session ne sont pas déterminés tant que le gestionnaire de base de données n'a pas authentifié l'utilisateur. Cette fonction n'est pas appelée tant que db2commexitRegister et plusieurs fonctions db2commexitSend et db2commexitRecv ne sont pas appelées lors de l'authentification.
Fichier d'en-tête d'API
db2commexit.h
Syntaxe de l'API et de la structure de données
SQL_API_RC ( SQL_API_FN * db2commexitUserIdentity )
(
void * pConnectionContext,
const db2commexitCommInfo_v1 * pCommInfo,
db2int32 state,
db2int32 usernameLen,
const char * pUserame,
db2int32 sessionAuthidLen,
const char * pSessionAuthid,
db2int64 * pReservedFlags,
char ** errormsg,
db2int32 * errormsglen
);Paramètres de l'API db2commexitUserIdentity
- pConnectionContext
- Entrée. Pointeur vers des données spécifiques à la bibliothèque d'exit de mémoire tampon de communication. Ce pointeur est spécifique à la connexion entrante. Ce paramètre est transmis en tant qu'entrée à chaque appel de fonction pour cette connexion. Le gestionnaire de base de données n'accède pas à la mémoire indiquée par ce paramètre.
- pCommInfo
- Entrée. Un pointeur vers une structure contenant des informations qui identifient le serveur de base de données et des informations spécifiques au protocole pour la connexion entrante. Certaines zones de la structure ne sont pas configurées tant que plusieurs mémoires tampon ne sont pas échangées avec le client. Les zones sont disponibles dans les appels ultérieurs à db2commexitRecv et db2commexitSend. Ce scénario s'applique spécifiquement à inbound_appl_id, outbound_appl_idet connection_type.
- State
- Entrée. Indique dans quelle condition la fonction est appelée. Les valeurs admises sont les suivantes :
- DB2COMMEXIT_USERIDENT_NEW_CONNECTION -nouvelle connexion.
- DB2COMMEXIT_USERIDENT_TC_SWITCH_USER -un utilisateur de changement de contexte sécurisé est émis.
- DB2COMMEXIT_USERIDENT_SET_SESSION_USER -L'instruction SQL SET SESSION AUTHORIZATION est émise pour modifier l'ID d'autorisation de session.
- usernameLen
- Entrée. Longueur de pUsername.
- pUsername
- Entrée. Nom d'utilisateur utilisé pour établir la connexion.
- sessionAuthidLen
- Entrée. Longueur de pSessionAuthid.
- pSessionAuthid
- Entrée. ID d'autorisation de session établi pour cette connexion.
- pReservedFlags
- Entrée-sortie. Réservé pour une utilisation ultérieure. La valeur doit être définie sur 0 en sortie.
- msg d'erreur
- Sortie. Pointeur vers l'adresse d'une chaîne de message d'erreur ASCII allouée par la bibliothèque d'exit de la mémoire tampon de communication. Cette chaîne de messages d'erreur peut être renvoyée dans ce paramètre si l'exécution de la fonction échoue. Cette mémoire n'est pas libérée en appelant db2commexitFreeErrormsg.
- message d'erreur
- Sortie. Un pointeur vers un entier qui indique la longueur, en octets, de la chaîne de message d'erreur dans le paramètre errormsg .