Authenticate via a PKI certificate.
This module is Experimental and should be used with caution
Provides an authenticate function that will allow the caller to authenticate a user via their public cert against a pre-defined Certificate Authority.
TODO: Add a 'ca_dir' option to configure a directory of CA files, a la Apache.
auth(username, password, **kwargs)¶
Returns True if the given user cert (password is the cert contents) was issued by the CA and if cert's Common Name is equal to username.
Returns False otherwise.
username: we need it to run the auth function from CLI/API;
it should be in master config auth/acl
password: contents of user certificate (pem-encoded user public key);
why "password"? For CLI, it's the only available name
Configure the CA cert in the master config file:
external_auth: pki: ca_file: /etc/pki/tls/ca_certs/trusted-ca.crt your_user: - .*