Name

USER_KEY_LOAD — Register and existing key.

Synopsis

USER_KEY_LOAD ( in key_name varchar ,
in key_value any ,
in key_type varchar ,
in key_format varchar ,
in key_passwd varchar ,
in key_pkey any );

Description

This function is used to register and persist an existing key in the Virtuoso server. This is needs to be made once per key/certificate, and does not need to be repeated after server restart, unless the key is erased and has to be redefined.

Parameters

key_name

The key reference, as a 'Sample Key' or 'file:keys/srv.pem'

key_value

When the key is an internal reference i.e. non 'file:', the content of a key. The default value is NULL.

key_type

The key algorithm, possible values are "3DES", "RSA", "DSA", "X.509", "AES".

key_format

The format of the key content storage, possible values are "DER", "PEM", "PKCS12".

key_passwd

The password for opening the key if required, this can be NULL to indicate no password required.

key_pkey

When an X.509 certificate is imported, this can be supplied to load the corresponding private key also. This is optional. Note that when the PKCS#12 format is used to import an X.509 certificate, the private key is in the 'key_value', hence this parameter in such case must be omitted.

Return Types

None.

Example

Example24.452.Simple Use

To load and persist an X.509 certificate contained in the file wss.pfx in the server working directory one can use:

USER_KEY_LOAD ('file:wss.pfx', NULL, 'X.509', 'PKCS12', 'virt');

To load and persist a shared secret:

USER_KEY_LOAD ('WSDK Sample Symmetric Key', 'EE/uaFF5N3ZNJWUTR8DYe+OEbwaKQnso', '3DES', 'DER', null);

To load a DSA key contained in a file dsa.der:

USER_KEY_LOAD ('file:dsa.der', NULL, 'DSA', 'DER', null);