Prior to using message-level security to protect messages using MQeMTrustAttribute, the application must use private registry services to ensure that the initiating and recipient entities have credentials. This requires the following steps:
/* SIMPLE MQePrivateRegistry FRAGMENT */ MQePrivateRegistryHndl preg; MQERETURN rc; MQeExceptBlock exceptBlock; /* setup PrivateRegistry parameters */ rc = mqePrivateRegistry_new(&Block, &preg); rc = mqePrivateRegistry_activate( preg, &Block, MQeString("Bruce"), /* entity name */ MQeString(".\\MQeNode_PrivateRegistry"), /* directory root */ MQeString("11111111"), /* private reg access PIN */ MQeString("It_is_a_secret"), /* private credential keyseed */ MQeString("12345678"), /* on-time-use Cert Req PIN */ MQeString("9.20.X.YYY:8082")); /* addr and port MiniCertSvr */
/* SIMPLE MQePrivateRegistry FRAGMENT*/ try { /* setup PrivateRegistry parameters */ String EntityName = "Bruce"; String EntityPIN = "11111111"; Object KeyRingPassword = "It_is_a_secret"; Object CertReqPIN = "12345678"; Object CAIPAddrPort = "9.20.X.YYY:8082"; /* instantiate and activate a Private Registry. */ MQePrivateRegistry preg = new MQePrivateRegistry( ); preg.activate( EntityName, /* entity name */ ".//MQeNode_PrivateRegistry", /* directory root */ EntityPIN, /* private reg access PIN */ KeyRingPassword, /* private credential keyseed */ CertReqPIN, /* on-time-use Cert Req PIN */ CAIPAddrPort ); /* addr and port MiniCertSvr */ trace(">>> PrivateRegistry activated OK ..."); } catch (Exception e) { e.printStackTrace( ); }