Websphere MQ Everyplace

com.ibm.mqe.registry
Class MQePrivateRegistry

java.lang.Object
  |
  +--com.ibm.mqe.MQe
        |
        +--com.ibm.mqe.registry.MQeRegistry
              |
              +--com.ibm.mqe.registry.MQePrivateRegistry
All Implemented Interfaces:
MQeExceptionCodes

public class MQePrivateRegistry
extends MQeRegistry

This class is used to create an MQePrivateRegistry object. MQePrivateRegistry class is a descendent of MQeRegistry and provides controlled access to a set of private and public objects (for example certificates). MQePrivateRegistry objects also support digital signing and decryption services which can use the registry’s private objects (for example an authenticatable entity’s private key) internally, so they do not leave the private registry.

This class is a descendant of MQeRegistry.


Field Summary
 
Fields inherited from class com.ibm.mqe.registry.MQeRegistry
Adapter, CAIPAddrPort, CertReqPIN, DirName, FileRegistry, KeyRingPassword, LocalRegType, PIN, PrivateRegistry, Separator
 
Fields inherited from class com.ibm.mqe.MQe
Admin_Queue_Name, Admin_Reply_Queue_Name, copyright, DeadLetter_Queue_Name, Event_Activate, Event_Attribute, Event_Authenticate, Event_Close, Event_Logoff, Event_Logon, Event_MiniCert_Validate, Event_Queue, Event_QueueManager, Event_UserBase, JMS_Version, MQ_Headers, MQe_Log_Audit_Failure, MQe_Log_Audit_Success, MQe_Log_Error, MQe_Log_Information, MQe_Log_Success, MQe_Log_Warning, Msg_BackoutCount, Msg_CorrelID, Msg_ExpireTime, Msg_LockID, Msg_MsgID, Msg_OriginQMgr, Msg_Priority, Msg_ReplyToQ, Msg_ReplyToQMgr, Msg_Resend, Msg_Style, Msg_Style_Datagram, Msg_Style_Reply, Msg_Style_Request, Msg_Time, Msg_WrapMsg, sccsid, System_Default_Queue_Name, version
 
Fields inherited from interface com.ibm.mqe.MQeExceptionCodes
Except_Active, Except_AdapterException, Except_AdapterMissingRemoteAddress, Except_Admin_ActionNotSupported, Except_Admin_InvalidField, Except_Admin_NotAdminMsg, Except_AdminAction, Except_Authenticate, Except_BadRequest, Except_BridgeListener, Except_Chnl_Attributes, Except_Chnl_ID, Except_Chnl_Limit, Except_Chnl_Overrun, Except_Closed, Except_Con_AdapterRequired, Except_Con_AliasAlreadyExists, Except_Con_AlreadyExists, Except_Con_InvalidName, Except_Connect_Failure, Except_ConnectonType, Except_Cryptor, Except_Data, Except_Duplicate, Except_JmxProperties, Except_Listener, Except_MessageStore, Except_MiniCertReg_ActivateFailed, Except_MiniCertReg_BadPIN, Except_MiniCertReg_NotOpen, Except_NotActive, Except_NotAllowed, Except_NotFound, Except_NotSupported, Except_PrivateReg_ActivateFailed, Except_PrivateReg_BadPIN, Except_PrivateReg_NotOpen, Except_PublicReg_ActivateFailed, Except_PublicReg_InvalidAddress, Except_PublicReg_InvalidRequest, Except_Q_Full, Except_Q_InvalidName, Except_Q_InvalidPriority, Except_Q_MsgTooLarge, Except_Q_NoMatchingMsg, Except_Q_TargetRegistryRequired, Except_QMgr_Activated, Except_QMgr_AlreadyExists, Except_QMgr_InvalidQMgrName, Except_QMgr_InvalidQName, Except_QMgr_NotActive, Except_QMgr_NotBridgeEnabled, Except_QMgr_NotConfigured, Except_QMgr_QDoesNotExist, Except_QMgr_QExists, Except_QMgr_QNotEmpty, Except_QMgr_RegistryDataVersion, Except_QMgr_UnknownQMgr, Except_QMgr_WrongQType, Except_Reg_AddFailed, Except_Reg_AlreadyExists, Except_Reg_AlreadyOpen, Except_Reg_CRTKeyDecFailed, Except_Reg_CRTKeySignFailed, Except_Reg_DeleteFailed, Except_Reg_DeleteRegistryFailed, Except_Reg_DoesNotExist, Except_Reg_InvalidSession, Except_Reg_ListFailed, Except_Reg_NotDefined, Except_Reg_NotSecure, Except_Reg_NullName, Except_Reg_OpenFailed, Except_Reg_ReadFailed, Except_Reg_RenameFailed, Except_Reg_ResetPINFailed, Except_Reg_SearchFailed, Except_Reg_UpdateFailed, Except_RemoteException, Except_Rule, Except_S_BadIntegrity, Except_S_BadSubject, Except_S_CertificateExpired, Except_S_Cipher, Except_S_InvalidAttribute, Except_S_InvalidSignature, Except_S_MiniCertNotAvailable, Except_S_MissingSection, Except_S_NoPresetKeyAvailable, Except_S_RegistryNotAvailable, Except_Stopped, Except_Syntax, Except_TimeOut, Except_Transporter, Except_TriggerTransmission, Except_Trnsport_QMgr, Except_Trnsport_Request, Except_Type, Except_UdpipAdapterStateException, Except_UdpipAdapterTimeOut, Except_UdpipAdapterUnableToConfirmSuccess, Except_UnCoded, Except_Uncontactable_DontTransmit
 
Constructor Summary
MQePrivateRegistry()
          Constructs an MQePrivateRegistry object.
 
Method Summary
 void activate(java.lang.String name, java.lang.String dirName, java.lang.String pin, java.lang.Object keyRingPassword, java.lang.Object certReqPIN, java.lang.Object caIPAddrPort)
          Opens and activates the MQePrivateRegistry instance.
 void close()
          Close the registry.
 void deleteCertificate(java.lang.String certificateOwner)
          Deletes the certificate owner’s mini-certificate.
 MQeFields getCertificate(java.lang.String certificateOwner)
          Returns the certificate owner’s mini-certificate.
 
Methods inherited from class com.ibm.mqe.MQe
abbreviate, alias, asciiToByte, byteToAscii, byteToHex, byteToHex, byteToInt, byteToLong, byteToShort, byteToUnicode, fileSeparator, getEventLogHandler, hexToAscii, hexToByte, intToByte, isCLDC, loadClass, loadObject, log, setEventLogHandler, setLoader, sliceByteArray, type, unicodeToByte, uniqueValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MQePrivateRegistry

public MQePrivateRegistry()

Constructs an MQePrivateRegistry object.

See Also:
MQePrivateRegistry
Method Detail

activate

public void activate(java.lang.String name,
                     java.lang.String dirName,
                     java.lang.String pin,
                     java.lang.Object keyRingPassword,
                     java.lang.Object certReqPIN,
                     java.lang.Object caIPAddrPort)
              throws java.lang.Exception

Opens and activates the MQePrivateRegistry instance.

If a private registry with this entityName exists, activate() attempts to open the private registry using the given pin. If it does not exist, activate() creates and opens a new private registry and makes it accessible with the given pin. If a non-null mini-certificate server address (caIPAddrPort) is provided, activate() searches the private registry to discover if the owner is already registered (already has its own mini-certificate). If it is not registered (no mini-certificate), activate() executes autoregistration. This autoregisters the entityName, performing the following tasks:

Parameters:
name - PrivateRegistry owner EntityName.
dirName - Path to PrivateRegistry.
pin - Number, password or passphrase to be used to open the private registry.
keyRingPassword - String password or passphrase used to protect the entity's private key.
certReqPIN - String with one-time-use Certificate Request Number preallocated for the entity by the mini-certificate server administrator to enable it to autoregister.
caIPAddrPort - String containing information on how the certificate issuance server can be contacted.

The format of the string, in BNF notation, is: [<optional_adapter_name>]':'<ip_address>':'<port>

The optional_adapter_name is the name of a communications adapter class, without the .class suffix, or an MQe alias of the class set up using MQe.alias(java.lang.String, java.lang.String). This part of the string, and the colon following is optional. The adapter indicates which protocol is used to communicate with the certificate issuance server, so it should match the protocol being used by the certificate issuance server. If this part of the string is missing, then a default of MQeTcpipHttpAdapter is assumed.

The ip_address part of the string is a dotted-ip address, or DNS host name (if DNS is available) indicating the address of the certicate issuance service. This part of the string is mandatory.

The port part of the string is the port number on which the issuance server is listening.

For example, com.ibm.mqe.adapters.MQeTcpipHttpAdapter:aname.hursley.ibm.com:8082

Throws:
java.lang.Exception -
  • Except_PrivateReg_BadPIN "Activating_EntityName_PrivateRegistry"
  • Except_PrivateReg_ActivateFailed "no keyRingPassword"
Example:
 try {
     // setup Private Registry activate parameters
     String entityName = "Bruce";
     String dirName = ".//" + entityName;
     String entityPIN = "12345678";
     Object keyRingPassword = "It_is_a_secret";
     Object certReqPIN = "12345678";
     Object caIPAddrPort = "aname.hursley.ibm.com:8082";
 
     // instantiate and activate a Private Registry...
     MQePrivateRegistry preg = new MQePrivateRegistry();
 
     // instantiate and activate the Private Registry
     preg.activate(entityName,        // name of entity owning privreg
         dirName,           // params to open file regsess'n
         entityPIN,         // Private Registry access PIN
         keyRingPassword,   // pwd/phrase protecting CRTKey
         certReqPIN,        // prereg MiniCertSvr certreqPIN
         caIPAddrPort);     // trusted MiniCertSvr addr:port
 } catch (Exception e) {// Handle the exception here.
 }
 
 

getCertificate

public MQeFields getCertificate(java.lang.String certificateOwner)
                         throws MQeException

Returns the certificate owner’s mini-certificate.

Parameters:
certificateOwner - Private registry owner's name.
Returns:
mini-certificate.
Throws:
MQeException - Except_reg_readFailed, "Error reading entry"
See Also:
deleteCertificate(java.lang.String)

deleteCertificate

public void deleteCertificate(java.lang.String certificateOwner)
                       throws java.lang.Exception

Deletes the certificate owner’s mini-certificate.

Parameters:
certificateOwner - Private registry owner's name.
Returns:
void
Throws:
java.lang.Exception -
  • Except_Reg_DeleteFailed, "Error deleting entry"
  • Except_Reg_DoesNotExist, "Entry does not Exist"
See Also:
getCertificate(java.lang.String)

close

public void close()
Close the registry. The registry cannot be used after it has been closed.


Websphere MQ Everyplace