PKI TPS Authenticator CLI - dogtagpki/pki GitHub Wiki
To list authenticators:
$ pki -n caadmin tps-authenticator-find ----------------- 1 entries matched ----------------- Authenticator ID: ldap1 Status: Enabled ---------------------------- Number of entries returned 1 ----------------------------
To page the results, specify the index of the first entry to return with --start parameter and the number of entries to return with --size parameter.
To display the authenticator configuration:
$ pki -n caadmin tps-authenticator-show ldap1
---------------------
Authenticator "ldap1"
---------------------
Authenticator ID: ldap1
Status: Enabled
Properties:
auths.instance.ldap1.authCredName: uid
auths.instance.ldap1.dnpattern:
auths.instance.ldap1.externalReg.certs.recoverAttributeName: certsToAdd
auths.instance.ldap1.externalReg.cuidAttributeName: tokenCUID
auths.instance.ldap1.externalReg.tokenTypeAttributeName: tokenType
auths.instance.ldap1.ldap.basedn: dc=example,dc=com
auths.instance.ldap1.ldap.ldapauth.authtype: BasicAuth
auths.instance.ldap1.ldap.ldapauth.bindDN:
auths.instance.ldap1.ldap.ldapauth.bindPWPrompt: ldap1
auths.instance.ldap1.ldap.ldapauth.clientCertNickname: subsystemCert cert-pki-tomcat
auths.instance.ldap1.ldap.ldapconn.host: pki.example.com
auths.instance.ldap1.ldap.ldapconn.port: 389
auths.instance.ldap1.ldap.ldapconn.secureConn: False
auths.instance.ldap1.ldap.ldapconn.version: 3
auths.instance.ldap1.ldap.maxConns: 15
auths.instance.ldap1.ldap.minConns: 3
auths.instance.ldap1.ldapByteAttributes:
auths.instance.ldap1.ldapStringAttributes: mail,cn,uid
auths.instance.ldap1.ldapStringAttributes._000: #################################
auths.instance.ldap1.ldapStringAttributes._001: # For isExternalReg
auths.instance.ldap1.ldapStringAttributes._002: # attributes will be available as
auths.instance.ldap1.ldapStringAttributes._003: # $<attribute>$
auths.instance.ldap1.ldapStringAttributes._004: # attributes example:
auths.instance.ldap1.ldapStringAttributes._005: #mail,cn,uid,edipi,pcc,firstname,lastname,exec-edipi,exec-pcc,exec-mail,certsToAdd,tokenCUID,tokenType
auths.instance.ldap1.ldapStringAttributes._006: #################################
auths.instance.ldap1.pluginName: UidPwdDirAuth
auths.instance.ldap1.ui.description.en: This authenticates user against the LDAP directory.
auths.instance.ldap1.ui.id.PASSWORD.credMap.authCred: pwd
auths.instance.ldap1.ui.id.PASSWORD.credMap.msgCred.extlogin: PASSWORD
auths.instance.ldap1.ui.id.PASSWORD.credMap.msgCred.login: password
auths.instance.ldap1.ui.id.PASSWORD.description.en: LDAP Password
auths.instance.ldap1.ui.id.PASSWORD.name.en: LDAP Password
auths.instance.ldap1.ui.id.UID.credMap.authCred: uid
auths.instance.ldap1.ui.id.UID.credMap.msgCred.extlogin: UID
auths.instance.ldap1.ui.id.UID.credMap.msgCred.login: screen_name
auths.instance.ldap1.ui.id.UID.description.en: LDAP User ID
auths.instance.ldap1.ui.id.UID.name.en: LDAP User ID
auths.instance.ldap1.ui.retries: 3
auths.instance.ldap1.ui.title.en: LDAP Authentication
To download the authenticator configuration into a file:
$ pki -n caadmin tps-authenticator-show ldap1 --output ldap1.xml ------------------------------------------- Stored authenticator "ldap1" into ldap1.xml -------------------------------------------
The configuration is stored in XML format:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Authenticator id="ldap1" xmlns:ns2="http://www.w3.org/2005/Atom">
<Link href="https://pki.example.com:8443/tps/rest/authenticators/ldap1" rel="self"/>
<Properties>
<Property name="auths.instance.ldap1.authCredName">uid</Property>
<Property name="auths.instance.ldap1.dnpattern"></Property>
<Property name="auths.instance.ldap1.externalReg.certs.recoverAttributeName">certsToAdd</Property>
<Property name="auths.instance.ldap1.externalReg.cuidAttributeName">tokenCUID</Property>
<Property name="auths.instance.ldap1.externalReg.tokenTypeAttributeName">tokenType</Property>
<Property name="auths.instance.ldap1.ldap.basedn">dc=example,dc=com</Property>
<Property name="auths.instance.ldap1.ldap.ldapauth.authtype">BasicAuth</Property>
<Property name="auths.instance.ldap1.ldap.ldapauth.bindDN"></Property>
<Property name="auths.instance.ldap1.ldap.ldapauth.bindPWPrompt">ldap1</Property>
<Property name="auths.instance.ldap1.ldap.ldapauth.clientCertNickname">subsystemCert cert-pki-tomcat</Property>
<Property name="auths.instance.ldap1.ldap.ldapconn.host">pki.example.com</Property>
<Property name="auths.instance.ldap1.ldap.ldapconn.port">389</Property>
<Property name="auths.instance.ldap1.ldap.ldapconn.secureConn">False</Property>
<Property name="auths.instance.ldap1.ldap.ldapconn.version">3</Property>
<Property name="auths.instance.ldap1.ldap.maxConns">15</Property>
<Property name="auths.instance.ldap1.ldap.minConns">3</Property>
<Property name="auths.instance.ldap1.ldapByteAttributes"></Property>
<Property name="auths.instance.ldap1.ldapStringAttributes">mail,cn,uid</Property>
<Property name="auths.instance.ldap1.ldapStringAttributes._000">#################################</Property>
<Property name="auths.instance.ldap1.ldapStringAttributes._001"># For isExternalReg</Property>
<Property name="auths.instance.ldap1.ldapStringAttributes._002"># attributes will be available as</Property>
<Property name="auths.instance.ldap1.ldapStringAttributes._003"># $<attribute>$</Property>
<Property name="auths.instance.ldap1.ldapStringAttributes._004"># attributes example:</Property>
<Property name="auths.instance.ldap1.ldapStringAttributes._005">#mail,cn,uid,edipi,pcc,firstname,lastname,exec-edipi,exec-pcc,exec-mail,certsToAdd,tokenCUID,tokenType</Property>
<Property name="auths.instance.ldap1.ldapStringAttributes._006">#################################</Property>
<Property name="auths.instance.ldap1.pluginName">UidPwdDirAuth</Property>
<Property name="auths.instance.ldap1.ui.description.en">This authenticates user against the LDAP directory.</Property>
<Property name="auths.instance.ldap1.ui.id.PASSWORD.credMap.authCred">pwd</Property>
<Property name="auths.instance.ldap1.ui.id.PASSWORD.credMap.msgCred.extlogin">PASSWORD</Property>
<Property name="auths.instance.ldap1.ui.id.PASSWORD.credMap.msgCred.login">password</Property>
<Property name="auths.instance.ldap1.ui.id.PASSWORD.description.en">LDAP Password</Property>
<Property name="auths.instance.ldap1.ui.id.PASSWORD.name.en">LDAP Password</Property>
<Property name="auths.instance.ldap1.ui.id.UID.credMap.authCred">uid</Property>
<Property name="auths.instance.ldap1.ui.id.UID.credMap.msgCred.extlogin">UID</Property>
<Property name="auths.instance.ldap1.ui.id.UID.credMap.msgCred.login">screen_name</Property>
<Property name="auths.instance.ldap1.ui.id.UID.description.en">LDAP User ID</Property>
<Property name="auths.instance.ldap1.ui.id.UID.name.en">LDAP User ID</Property>
<Property name="auths.instance.ldap1.ui.retries">3</Property>
<Property name="auths.instance.ldap1.ui.title.en">LDAP Authentication</Property>
</Properties>
<Status>Enabled</Status>
</Authenticator>
To disable an authenticator, execute the following command:
$ pki -n caadmin tps-authenticator-mod ldap1 --action disable ------------------------------ Modified authenticator "ldap1" ------------------------------
To enable an authenticator, execute the following command:
$ pki -n caadmin tps-authenticator-mod ldap1 --action enable ------------------------------ Modified authenticator "ldap1" ------------------------------
To modify an authenticator configuration, make sure the authenticator is disabled. Download the current configuration into a file using the pki tps-authenticator-show command above, then edit the file:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Authenticator id="ldap1" xmlns:ns2="http://www.w3.org/2005/Atom">
<Link href="https://pki.example.com:8443/tps/rest/authenticators/ldap1" rel="self"/>
<Properties>
...
<Property name="auths.instance.ldap1.ldap.maxConns">20</Property>
<Property name="auths.instance.ldap1.ldap.minConns">5</Property>
...
</Properties>
<Status>Disabled</Status>
</Authenticator>
Then upload the new configuration with the following command:
$ pki -n caadmin tps-authenticator-mod ldap1 --input ldap1.xml ------------------------------ Modified authenticator "ldap1" ------------------------------
Finally, make sure the authenticator is enabled again.
To create a new authenticator, download an existing authenticator configuration into a file using the pki tps-authenticator-show command above. Edit the file, replace the old authenticator ID with the new one, and make the necessary changes.
Then create the new authenticator with the following command:
$ pki -n caadmin tps-authenticator-add --input ldap2.xml --------------------------- Added authenticator "ldap2" ---------------------------
Make sure the new authenticator is enabled.
To delete an authenticator, make sure the authenticator is disabled, then execute the following command:
$ pki -n caadmin tps-authenticator-del ldap2 ----------------------------- Deleted authenticator "ldap2" -----------------------------