Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’appel Set_Conversation_Security_Type (nom de fonction cmscst) est émis par le programme appelant pour spécifier les informations requises par l’unité logique partenaire (LU) pour valider l’accès au programme appelé.
Syntaxe
CM_ENTRY Set_Conversation_Security_Type(
unsigned char FAR *conversation_ID,
CM_INT32 FAR *conversation_security_type,
CM_INT32 FAR *return_code
);
Paramètres
conversation_ID
Paramètre fourni. Spécifie l’identificateur de la conversation. La valeur de ce paramètre a été retournée par Initialize_Conversation.
conversation_security_type
Paramètre fourni. Spécifie les informations requises par l’unité logique partenaire pour valider l’accès au programme appelé. En fonction de la sécurité de conversation établie pour le programme appelé pendant la configuration, utilisez l’une des valeurs suivantes :
CM_SECURITY_NONE
Pour indiquer que le programme appelé n’utilise aucune sécurité de conversation.
CM_SECURITY_PROGRAM
Pour indiquer que le programme appelé utilise la sécurité des conversations et nécessite donc un identificateur d’utilisateur et un mot de passe.
CM_SECURITY_SAME
Pour indiquer que l’ID utilisateur est envoyé sur la demande d’allocation aux services de nœud dans l’unité logique partenaire. Ce paramètre est également utilisé pour spécifier que le programme appelé, appelé avec un identificateur d’utilisateur et un mot de passe valides, appelle à son tour un autre programme (comme illustré dans Communication Between TPs). Par exemple, supposons que le programme A appelle le programme B avec un identificateur d’utilisateur et un mot de passe valides, et le programme B appelle à son tour le programme C. Si le programme B spécifie la valeur CM_SECURITY_SAME, CPI-C envoie l’unité logique du programme C, l’identificateur utilisateur du programme A et un indicateur déjà vérifié. Cet indicateur indique au programme C de ne pas exiger le mot de passe (si le programme C est configuré pour accepter un indicateur déjà vérifié).
Lorsque CM_SECURITY_SAME est utilisé, votre application doit toujours appeler Set_Conversation_Security_User_ID et Set_Conversation_Security_Password pour fournir des valeurs pour les paramètres security_user_ID et security_password . Selon les propriétés négociées entre le serveur SNA et l’unité logique homologue, la fonction Allocate envoie l’un des 3 types de messages d’attachement (FMH-5), dans cet ordre de priorité :
Si les unités logiques ont négocié une sécurité déjà vérifiée, l’attachement envoyé par le serveur SNA n’inclut pas le contenu du champ de paramètre security_password spécifié par Set_Conversation_Security_Password.
Si les unités logiques ont négocié la sécurité de vérification persistante, l’attachement envoyé par le serveur SNA inclut le paramètre security_password spécifié par Set_Conversation_Security_Password, mais uniquement lorsque l’attachement est le premier pour le paramètre de security_user_ID spécifié défini par Set_Conversation_Security_User_ID depuis le début de la session LU-LU, et omettre le paramètre security_password sur toutes les attaches suivantes (émises par votre application ou toute autre application à l’aide de l’aide de ce triplet en mode LU-LU).
Votre application ne peut pas indiquer quel mode de sécurité a été négocié entre les unités logiques, ni indiquer si la fonction Allocate qu’elle émet est la première pour ce triplet en mode LU-LU. Par conséquent, votre application doit toujours appeler Set_Conversation_Security_User_ID et Set_Conversation_Security_Password pour définir les paramètres security_user_ID et security_password lorsque conversation_security_type est défini sur CM_SECURITY_SAME.
Pour plus d’informations sur la vérification permanente et la sécurité déjà vérifiée, consultez le Guide des formats SNA, section « Fm Header 5 : Attach (LU 6.2). »
Si la fonctionnalité d’ouverture de session automatique CPI-C doit être utilisée, ce paramètre doit être défini sur CM_SECURITY_PROGRAM. Pour plus d’informations, consultez la section Remarques plus loin dans cette rubrique.
return_code
Code retourné à partir de cet appel. Les codes de retour valides sont répertoriés plus loin dans cette rubrique.
Codes de retour
CM_OK
Code de retour principal ; l’appel a été exécuté avec succès.
CM_PROGRAM_STATE_CHECK
Code de retour principal ; la conversation n’est pas dans l’état INITIALIZE.
CM_PROGRAM_PARAMETER_CHECK
Code de retour principal ; la valeur spécifiée par conversation_ID ou conversation_security_type n’est pas valide.
CM_PRODUCT_SPECIFIC_ERROR
Code de retour principal ; une erreur spécifique au produit s’est produite et a été enregistrée dans le journal des erreurs des produits.
Modifications d’état
La conversation doit être dans l’état INITIALIZE.
Il n’y a aucune modification d’état.
Remarques
Cet appel remplace le type de sécurité initial des informations latérales spécifiées par Initialize_Conversation. Cet appel ne peut pas être émis une fois l’allocation émise.
Si le type de sécurité de conversation est défini sur CM_SECURITY_NONE, l’identificateur de l’utilisateur et le mot de passe sont ignorés lorsque la conversation est allouée.
Un type de sécurité de conversation de CM_SECURITY_SAME est destiné à être utilisé entre les nœuds qui ont le même ensemble d’ID d’utilisateur et qui acceptent la validation utilisateur effectuée sur un nœud comme validation de l’utilisateur pour tous les nœuds. Un mot de passe n’est pas utilisé dans ce cas, à l’exception de la validation initiale de l’ID utilisateur.
L’ouverture de session automatique pour les applications CPI-C est prise en charge par Host Integration Server. Cette fonctionnalité nécessite une configuration spécifique par l’administrateur réseau. L’application CPI-C doit être appelée côté réseau local à partir d’un client du serveur SNA. Le client doit être connecté à un domaine Microsoft Windows, mais il peut s’agir de n’importe quelle plateforme prenant en charge les API SNA Server CPI-C.
L’application cliente est codée pour utiliser la sécurité au niveau du programme, avec un nom d’utilisateur spécial CPI-C nom d’utilisateur MS$SAME et mot de passe MS$SAME. Lorsque cette allocation de session passe du client au serveur SNA, le serveur SNA recherche le compte hôte et le mot de passe correspondant au compte Windows sous lequel le client est connecté et remplace les informations du compte hôte dans le message d’attachement APPC qu’il envoie à l’hôte.