Magnolia 5.5 reached end of life on November 15, 2019. This branch is no longer supported, see End-of-life policy.
Activation of content from author to public instances is authenticated using public-key cryptography. Public-key cryptography is a system that requires two separate keys: a public key to lock or encrypt the plain text request and a private key to unlock or decrypt the cyphertext request. Neither key can do both and neither is derivable from knowledge of the other. One is published and the other is kept private.
On receiving an activation request, a Magnolia public instance authenticates the author instance using a public key. The author instance generates the key automatically on first activation of content and transfers it to the public instance. You can generate new public keys any time on the author instance. A single public key is used for multiple public instances.
The authentication mechanism requires no configuration. The public key is generated automatically on the first activation of content and transferred to the public instance. The configuration is identical on both instances at Configuration > /server/activation/publicKey
.
Node name | Value |
---|---|
server | |
activation | |
subscribers | |
class | info.magnolia.module.activation.DefaultActivationManager |
publicKey | 30819F300D06092A864886F70D01010105000381... |
The key pair is also stored on the local file system. If you use the default Magnolia bundle, the location is configured in a magnolia.properties
file.
# Location of private and public keys used for activation magnolia.author.key.location=${magnolia.home}/WEB-INF/config/default/magnolia-activation-keypair.properties
You can create a new public key in the Activation Tools app. Key lengths from 512 to 1024 bits are possible.
To generate a new public key:
/server/activation/publicKey
on the public instance.Copy the newly generated public key to all public instances. It is not transferred automatically on activation as is the case with the initial key. You cannot activate the publicKey
node to the public instance as at this point because a mismatch exists between the keys on author and public.
Any type of misconfiguration related either to the keys themselves or the handshaking process between the author and the public instance(s) may lead to activation errors.