Set_Conversation_Security_Type (CPI-C)

La chiamata Set_Conversation_Security_Type (nome funzione cmscst) viene eseguita dal programma di richiamo per specificare le informazioni richieste dall'unità logica partner (LU) per convalidare l'accesso al programma richiamato.

Sintassi

  
CM_ENTRY Set_Conversation_Security_Type(   
  unsigned char FAR *conversation_ID,          
  CM_INT32 FAR *conversation_security_type,    
    CM_INT32 FAR *return_code                    
);  

Parametri

conversation_ID
Parametro fornito. Specifica l'identificatore per la conversazione. Il valore di questo parametro è stato restituito da Initialize_Conversation.

conversation_security_type
Parametro fornito. Specifica le informazioni richieste dal lu partner per convalidare l'accesso al programma richiamato. In base alla sicurezza della conversazione stabilita per il programma richiamato durante la configurazione, usare uno dei valori seguenti:

CM_SECURITY_NONE
Per indicare che il programma richiamato non utilizza alcuna sicurezza della conversazione.

CM_SECURITY_PROGRAM
Per indicare che il programma richiamato usa la sicurezza della conversazione e quindi richiede un identificatore utente e una password.

CM_SECURITY_SAME
Per indicare che l'ID utente viene inviato nella richiesta di allocazione ai servizi del nodo nell'area lu partner. Questa impostazione viene usata anche per specificare che il programma richiamato, richiamato con un identificatore utente e una password validi, richiama a sua volta un altro programma (come illustrato in Comunicazione tra TPS). Si supponga, ad esempio, che il programma A richiami il programma B con un identificatore utente e una password validi e che il programma B richiami a sua volta il programma C. Se il programma B specifica il valore CM_SECURITY_SAME, CPI-C invierà l'lu per il programma C, l'identificatore utente dal programma A e un indicatore già verificato. Questo indicatore indica al programma C di non richiedere la password (se il programma C è configurato per accettare un indicatore già verificato).

Quando si usa CM_SECURITY_SAME, l'applicazione deve sempre chiamare Set_Conversation_Security_User_ID e Set_Conversation_Security_Password per fornire valori per i parametri security_user_ID e security_password . A seconda delle proprietà negoziate tra il server SNA e l'lu peer, la funzione Allocate invierà uno dei 3 tipi di messaggi Attach (FMH-5), in questo ordine di precedenza:

  1. Se le unità elaborate hanno negoziato la sicurezza già verificata, il collegamento inviato da SNA Server non includerà il contenuto del campo del parametro security_password specificato da Set_Conversation_Security_Password.

  2. Se le unità elaborate hanno negoziato la sicurezza di verifica permanente, il collegamento inviato dal server SNA includerà il parametro security_password specificato da Set_Conversation_Security_Password, ma solo quando attach è il primo per il parametro security_user_ID specificato impostato da Set_Conversation_Security_User_ID dall'inizio della sessione LU-LU e ometterà il parametro security_password in tutti i collegamenti successivi (rilasciati dall'applicazione o da qualsiasi altra applicazione usando triplet in modalità LU-LU).

  3. L'applicazione non è in grado di indicare quale modalità di sicurezza è stata negoziata tra le unità di calcolo, né può indicare se la funzione Allocate viene emittente è la prima per il triplo in modalità LU-LU. Pertanto, l'applicazione deve sempre chiamare Set_Conversation_Security_User_ID e Set_Conversation_Security_Password per impostare i parametri security_user_ID e security_password quando conversation_security_type è impostato su CM_SECURITY_SAME.

    Per altre informazioni sulla verifica permanente e sulla sicurezza già verificata, vedere la Guida ai formati SNA, sezione "Intestazione FM 5: Attach (LU 6.2)."

    Se è necessario usare la funzionalità di accesso automatico CPI-C, questo parametro deve essere impostato su CM_SECURITY_PROGRAM. Per informazioni dettagliate, vedere la sezione Osservazioni più avanti in questo argomento.

    return_code
    Codice restituito da questa chiamata. I codici restituiti validi sono elencati più avanti in questo argomento.

Codici restituiti

CM_OK
Codice restituito primario; la chiamata eseguita correttamente.

CM_PROGRAM_STATE_CHECK
Codice restituito primario; la conversazione non è in stato INITIALIZE.

CM_PROGRAM_PARAMETER_CHECK
Codice restituito primario; il valore specificato da conversation_ID o conversation_security_type non è valido.

CM_PRODUCT_SPECIFIC_ERROR
Codice restituito primario; si è verificato un errore specifico del prodotto ed è stato registrato nel log degli errori dei prodotti.

Modifiche di stato

La conversazione deve essere in stato INITIALIZE.

Non esiste alcuna modifica dello stato.

Commenti

Questa chiamata esegue l'override del tipo di sicurezza iniziale dalle informazioni sul lato specificate da Initialize_Conversation. Questa chiamata non può essere eseguita dopo l'emissione di Allocate .

Se il tipo di sicurezza della conversazione è impostato su CM_SECURITY_NONE, l'identificatore utente e la password vengono ignorati quando viene allocata la conversazione.

Un tipo di sicurezza della conversazione di CM_SECURITY_SAME è destinato all'uso tra nodi con lo stesso set di ID utente e che accettano la convalida utente eseguita in un nodo per convalidare l'utente per tutti i nodi. In questo caso non viene usata una password, ad eccezione della convalida iniziale dell'ID utente.

L'accesso automatico per le applicazioni CPI-C è supportato da Host Integration Server. Questa funzionalità richiede una configurazione specifica da parte dell'amministratore di rete. L'applicazione CPI-C deve essere richiamata sul lato LAN da un client di SNA Server. Il client deve essere connesso a un dominio di Microsoft Windows, ma può essere qualsiasi piattaforma che supporti le API CPI-C del server SNA.

L'applicazione client viene codificata per usare la sicurezza a livello di programma, con un nome utente CPI-C speciale hardcoded MS$SAME e password MS$SAME. Quando questa allocazione di sessione passa dal client al server SNA, il server SNA cerca l'account host e la password corrispondenti all'account di Windows in cui il client è connesso e sostituisce le informazioni sull'account host nel messaggio di collegamento APPC inviato all'host.