pta_basic_tests.xml revision a031e6d9877cabf432f5e4f9caafec7f5781198a
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams<?xml version="1.0" encoding="UTF-8" standalone="no"?>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams<!DOCTYPE stax SYSTEM "/shared/stax.dtd">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams<!--
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! CDDL HEADER START
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams !
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! The contents of this file are subject to the terms of the
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! Common Development and Distribution License, Version 1.0 only
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! (the "License"). You may not use this file except in compliance
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! with the License.
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams !
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! You can obtain a copy of the license at
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! trunk/opends/resource/legal-notices/CDDLv1_0.txt
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! or http://forgerock.org/license/CDDLv1.0.html.
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! See the License for the specific language governing permissions
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! and limitations under the License.
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams !
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! When distributing Covered Code, include this CDDL HEADER in each
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! file and include the License file at
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! trunk/opends/resource/legal-notices/CDDLv1_0.txt. If applicable,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! add the following below this CDDL HEADER, with the fields enclosed
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! by brackets "[]" replaced with your own identifying information:
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! Portions Copyright [yyyy] [name of copyright owner]
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams !
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! CDDL HEADER END
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams !
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! Copyright 2011 ForgeRock AS
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ! -->
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams<stax>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <!-- Definition of Test Cases -->
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <!--- Test Cases : Basic : PTA -->
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <!--- Test Case information
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestMarker Basic: PTA anon unmapped
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestName Basic: PTA anon unmapped
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestID basic_pta_001
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestPurpose Verify user with a LDAP PTA unmapped policy can authenticated to remote server
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestPreamble Setup PTA
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Enable AD backend on local server
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Configure LDAP PTA Policy as unmapped
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Read back the "authentication policy" object
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Add ds-pwp-password-policy-dn to users entry
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Search users entry as Directory Manager for operational attributes
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Search users entry as self
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Modify the users entry
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep ds-pwp-password-policy-dn from users entry
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Remove LDAP PTA Authentication Policy
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Disable AD backend on local server
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestPostamble Cleanup PTA
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestResult Test is successful if the result code is 0
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams -->
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <function name="basic_pta_001" scope="local">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <testcase name="getTestCaseName('PTA anon unmapped')">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <sequence>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <try>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <sequence>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testCase_Preamble'"/>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <message>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'Test Name = %s' % STAXCurrentTestcase
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </message>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Enable AD backend on local server.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--backend-name "AD"')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set enabled:true')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams dsconfigOptions=' '.join(options)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'dsconfig'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'subcommand' : 'set-backend-prop',
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'optionsString' : dsconfigOptions
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Configure LDAP PTA Policy as unmapped.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set primary-remote-ldap-server:%s:%s' % (primaryHost,primaryPort))
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set mapping-policy:unmapped')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set secondary-remote-ldap-server:%s:%s' % (secondaryHost,secondaryPort))
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--type ldap-pass-through')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams dsconfigOptions=' '.join(options)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'dsconfig'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'subcommand' : 'create-password-policy',
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'optionsString' : dsconfigOptions
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Read back the "authentication policy" object.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams dsconfigOptions=' '.join(options)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'dsconfig'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'subcommand' : 'get-password-policy-prop',
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'optionsString' : dsconfigOptions
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Add ds-pwp-password-policy-dn to users entry.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams remotePTAuserName='uid=jwallace, ou=People, dc=AD,dc=com'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams remotePTAuserPSWD='linear'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % ldapPtaPolicyDn)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'modifyAnAttribute'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'DNToModify' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'listAttributes' : ldapObject ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'changetype' : 'add'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Search users entry as Directory Manager for operational attributes.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'ldapSearchWithScript'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsBaseDN' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsFilter' : 'objectclass=*' ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsAttributes' : '+'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Search users entry as self.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'ldapSearchWithScript'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : remotePTAuserName,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : remotePTAuserPSWD ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsBaseDN' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsFilter' : 'objectclass=*'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Modify the users entry.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject.append('description: i am now a remote LDAP PTA user')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'modifyAnAttribute'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : remotePTAuserName,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : remotePTAuserPSWD,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'DNToModify' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'listAttributes' : ldapObject ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'changetype' : 'replace'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Delete ds-pwp-password-policy-dn from users entry.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % ldapPtaPolicyDn)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'modifyAnAttribute'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'DNToModify' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'listAttributes' : ldapObject ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'changetype' : 'delete'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Remove LDAP PTA Authentication Policy.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams dsconfigOptions=' '.join(options)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'dsconfig'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'subcommand' : 'delete-password-policy',
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'optionsString' : dsconfigOptions
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Disable AD backend on local server.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--backend-name "AD"')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set enabled:false')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams dsconfigOptions=' '.join(options)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'dsconfig'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'subcommand' : 'set-backend-prop',
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'optionsString' : dsconfigOptions
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </sequence>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <catch exception="'STAXException'" typevar="eType" var="eInfo">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <message log="1" level="'fatal'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams '%s: Test failed. eInfo(%s)' % (eType,eInfo)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </message>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </catch>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <finally>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testCase_Postamble'"/>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </finally>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </try>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </sequence>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </testcase>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </function>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <!--- Test Case information
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestMarker Basic: PTA anon mapped-bind
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestName Basic: PTA anon mapped-bind
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestID basic_pta_002
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestPurpose Verify user with a LDAP PTA mapped-bind policy can authenticated to remote server
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestPreamble Setup PTA
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Configure LDAP PTA Policy for mapped-bind
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Read back the "authentication policy" object
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Add ds-pwp-password-policy-dn to users entry
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Search users entry as Directory Manager for operational attributes
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Search users entry as self
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Modify the users entry
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Delete ds-pwp-password-policy-dn from users entry
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Remove LDAP PTA Authentication Policy
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestPostamble Cleanup PTA
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestResult Test is successful if the result code is 0
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams -->
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <function name="basic_pta_002" scope="local">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <testcase name="getTestCaseName('PTA anon mapped-bind')">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <sequence>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <try>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <sequence>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testCase_Preamble'"/>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <message>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'Test Name = %s' % STAXCurrentTestcase
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </message>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'onfigure LDAP PTA Policy for mapped-bind.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options=[]
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options.append('--set primary-remote-ldap-server:%s:%s' % (primaryHost,primaryPort))
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options.append('--set mapped-attribute:seealso')
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options.append('--set mapping-policy:mapped-bind')
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options.append('--set secondary-remote-ldap-server:%s:%s' % (secondaryHost,secondaryPort))
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options.append('--type ldap-pass-through')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams dsconfigOptions=' '.join(options)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'dsconfig'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'subcommand' : 'create-password-policy',
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'optionsString' : dsconfigOptions
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Read back the "authentication policy" object.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams dsconfigOptions=' '.join(options)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'dsconfig'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'subcommand' : 'get-password-policy-prop',
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'optionsString' : dsconfigOptions
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Add ds-pwp-password-policy-dn to users entry.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams remotePTAuserName='uid=jmcFarla, ou=People, o=example'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams remotePTAuserPSWD='walnut'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams ldapObject=[]
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % ldapPtaPolicyDn)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'modifyAnAttribute'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'DNToModify' : remotePTAuserName ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'listAttributes' : ldapObject ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'changetype' : 'add'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Search users entry as Directory Manager for operational attributes.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'ldapSearchWithScript'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsBaseDN' : remotePTAuserName ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsFilter' : 'objectclass=*' ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsAttributes' : '+'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Search users entry as self.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'ldapSearchWithScript'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : remotePTAuserName,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : remotePTAuserPSWD ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsBaseDN' : remotePTAuserName ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsFilter' : 'objectclass=*'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Modify the users entry.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams ldapObject=[]
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams ldapObject.append('description: i am now a remote LDAP PTA user')
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'modifyAnAttribute'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : remotePTAuserName,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : remotePTAuserPSWD,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'DNToModify' : remotePTAuserName ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'listAttributes' : ldapObject ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'changetype' : 'replace'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Delete ds-pwp-password-policy-dn from users entry.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams ldapObject=[]
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % ldapPtaPolicyDn)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'modifyAnAttribute'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'DNToModify' : remotePTAuserName ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'listAttributes' : ldapObject ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'changetype' : 'delete'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Remove LDAP PTA Authentication Policy.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams dsconfigOptions=' '.join(options)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'dsconfig'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'subcommand' : 'delete-password-policy',
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'optionsString' : dsconfigOptions
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </sequence>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <catch exception="'STAXException'" typevar="eType" var="eInfo">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <message log="1" level="'fatal'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams '%s: Test failed. eInfo(%s)' % (eType,eInfo)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </message>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </catch>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <finally>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testCase_Postamble'"/>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </finally>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </try>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </sequence>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </testcase>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </function>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <!--- Test Case information
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestMarker Basic: PTA anon mapped-search
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestName Basic: PTA anon mapped-search
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestID basic_pta_003
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestPurpose Verify user with a LDAP PTA mapped-search policy can authenticated to remote server
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestPreamble Setup PTA
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Configure LDAP PTA Policy for mapped-search
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Read back the "authentication policy" object
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Add ds-pwp-password-policy-dn to users entry
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Search users entry as Directory Manager for operational attributes
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Search users entry as self
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Modify the users entry
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep ds-pwp-password-policy-dn from users entry
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestStep Remove LDAP PTA Authentication Policy
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams #@TestPostamble Cleanup PTA
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams #@TestResult Test is successful if the result code is 0
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams -->
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <function name="basic_pta_003" scope="local">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <testcase name="getTestCaseName('PTA anon mapped-search')">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <sequence>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <try>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <sequence>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testCase_Preamble'"/>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <message>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'Test Name = %s' % STAXCurrentTestcase
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </message>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Configure LDAP PTA Policy for mapped-search.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set primary-remote-ldap-server:%s:%s' % (primaryHost,primaryPort))
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set mapped-attribute:cn')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set mapped-search-base-dn:dc=AD,dc=com')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set mapping-policy:mapped-search')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set secondary-remote-ldap-server:%s:%s' % (secondaryHost,secondaryPort))
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--type ldap-pass-through')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams dsconfigOptions=' '.join(options)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'dsconfig'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'subcommand' : 'create-password-policy',
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'optionsString' : dsconfigOptions
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Read back the "authentication policy" object.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams dsconfigOptions=' '.join(options)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'dsconfig'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'subcommand' : 'get-password-policy-prop',
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'optionsString' : dsconfigOptions
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Add ds-pwp-password-policy-dn to users entry.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams remotePTAuserName='uid=jvedder, ou=People, o=example'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams remotePTAuserPSWD='befitting'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % ldapPtaPolicyDn)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'modifyAnAttribute'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'DNToModify' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'listAttributes' : ldapObject ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'changetype' : 'add'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Search users entry as Directory Manager for operational attributes.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'ldapSearchWithScript'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsBaseDN' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsFilter' : 'objectclass=*' ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsAttributes' : '+'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Search users entry as self.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'ldapSearchWithScript'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : remotePTAuserName,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : remotePTAuserPSWD ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsBaseDN' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsFilter' : 'objectclass=*'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Modify the users entry.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject.append('description: i am now a remote LDAP PTA user')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'modifyAnAttribute'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : remotePTAuserName,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : remotePTAuserPSWD,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'DNToModify' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'listAttributes' : ldapObject ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'changetype' : 'replace'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Delete ds-pwp-password-policy-dn from users entry.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % ldapPtaPolicyDn)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'modifyAnAttribute'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'DNToModify' : remotePTAuserName ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'listAttributes' : ldapObject ,
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'changetype' : 'delete'
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Remove LDAP PTA Authentication Policy.' }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options=[]
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams dsconfigOptions=' '.join(options)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </script>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'dsconfig'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'location' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsPath' : '%s/%s' \
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'subcommand' : 'delete-password-policy',
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams 'optionsString' : dsconfigOptions
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams }
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </call>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </sequence>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <catch exception="'STAXException'" typevar="eType" var="eInfo">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <message log="1" level="'fatal'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams '%s: Test failed. eInfo(%s)' % (eType,eInfo)
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </message>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </catch>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <finally>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <call function="'testCase_Postamble'"/>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </finally>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </try>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </sequence>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </testcase>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams </function>
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <!--- Test Case information
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestMarker Basic: PTA anon mapped-search
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestName Basic: PTA anon mapped-search
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestID basic_pta_003
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestPurpose Verify user with a LDAP PTA mapped-search policy can authenticated to remote server
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestPreamble Setup PTA
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Configure LDAP PTA Policy using mapped-search-bind credentials
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Read back the "authentication policy" object
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Add ds-pwp-password-policy-dn to users entry
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Search users entry as Directory Manager for operational attributes
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Search users entry as self
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Modify the users entry
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep ds-pwp-password-policy-dn from users entry
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestStep Remove LDAP PTA Authentication Policy
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestPostamble Cleanup PTA
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams #@TestResult Test is successful if the result code is 0
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams -->
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <function name="basic_pta_004" scope="local">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams <testcase name="getTestCaseName('PTA simple mapped-search-bind')">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <sequence>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <try>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <sequence>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'testCase_Preamble'"/>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <message>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'Test Name = %s' % STAXCurrentTestcase
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </message>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams { 'stepMessage' : 'Configure LDAP PTA Policy using mapped-search-bind credentials.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams options=[]
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams options.append('--set primary-remote-ldap-server:%s:%s' % (primaryHost,primaryPort))
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams options.append('--set mapped-attribute:cn')
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams options.append('--set mapped-search-base-dn:dc=AD,dc=com')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set mapped-search-bind-dn:"cn=Directory Manager"')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--set mapped-search-bind-password:secret12')
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams options.append('--set mapping-policy:mapped-search')
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams options.append('--set secondary-remote-ldap-server:%s:%s' % (secondaryHost,secondaryPort))
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams options.append('--type ldap-pass-through')
d5ab1ee6a7f1c8159562af429b861ae32f6aa2d6gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams dsconfigOptions=' '.join(options)
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'dsconfig'">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams { 'location' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsPath' : '%s/%s' \
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'subcommand' : 'create-password-policy',
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'optionsString' : dsconfigOptions
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams }
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </call>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Read back the "authentication policy" object.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams options=[]
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams dsconfigOptions=' '.join(options)
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'dsconfig'">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams { 'location' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsPath' : '%s/%s' \
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'subcommand' : 'get-password-policy-prop',
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'optionsString' : dsconfigOptions
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams }
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </call>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Add ds-pwp-password-policy-dn to users entry.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams remotePTAuserName='uid=jvedder, ou=People, o=example'
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams remotePTAuserPSWD='befitting'
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ldapObject=[]
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % ldapPtaPolicyDn)
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'modifyAnAttribute'">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams { 'location' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsPath' : '%s/%s' \
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'DNToModify' : remotePTAuserName ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'listAttributes' : ldapObject ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'changetype' : 'add'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Search users entry as Directory Manager for operational attributes.' }
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </call>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'ldapSearchWithScript'">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams { 'location' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsPath' : '%s/%s' \
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsBaseDN' : remotePTAuserName ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsFilter' : 'objectclass=*' ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsAttributes' : '+'
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams }
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </call>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Search users entry as self.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'ldapSearchWithScript'">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams { 'location' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsPath' : '%s/%s' \
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceDn' : remotePTAuserName,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePswd' : remotePTAuserPSWD ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsBaseDN' : remotePTAuserName ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsFilter' : 'objectclass=*'
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams }
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </call>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Modify the users entry.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ldapObject=[]
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ldapObject.append('description: i am now a remote LDAP PTA user')
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'modifyAnAttribute'">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams { 'location' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsPath' : '%s/%s' \
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceDn' : remotePTAuserName,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePswd' : remotePTAuserPSWD,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'DNToModify' : remotePTAuserName ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'listAttributes' : ldapObject ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'changetype' : 'replace'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Delete ds-pwp-password-policy-dn from users entry.' }
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </call>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams ldapObject=[]
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % ldapPtaPolicyDn)
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </script>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'modifyAnAttribute'">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams { 'location' : local_ldap_server.getHostname(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsPath' : '%s/%s' \
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePort' : local_ldap_server.getPort(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'DNToModify' : remotePTAuserName ,
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams 'listAttributes' : ldapObject ,
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'changetype' : 'delete'
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'testStep'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'stepMessage' : 'Remove LDAP PTA Authentication Policy.' }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options=[]
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams dsconfigOptions=' '.join(options)
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </script>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams <call function="'dsconfig'">
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams { 'location' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsPath' : '%s/%s' \
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams % (local_ldap_server.getDir(),OPENDSNAME),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'subcommand' : 'delete-password-policy',
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams 'optionsString' : dsconfigOptions
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams }
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams </call>
01e09f486fb36ebba02ca7958e3069a251dd6ce9gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </sequence>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <catch exception="'STAXException'" typevar="eType" var="eInfo">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <message log="1" level="'fatal'">
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams '%s: Test failed. eInfo(%s)' % (eType,eInfo)
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </message>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </catch>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <finally>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams <call function="'testCase_Postamble'"/>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </finally>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </try>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </sequence>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </testcase>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams </function>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <!--- Test Case information
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestMarker Basic: PTA anon mapped-search use-ssl
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestName Basic: PTA anon mapped-search use-ssl
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestID basic_pta_003
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestPurpose Verify user with a LDAP PTA mapped-search policy can authenticated to remote server
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestPreamble Setup PTA
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Configure LDAP PTA Policy for mapped-search
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Read back the "authentication policy" object
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Add ds-pwp-password-policy-dn to users entry
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Search users entry as Directory Manager for operational attributes
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Search users entry as self
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Modify the users entry
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep ds-pwp-password-policy-dn from users entry
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Remove LDAP PTA Authentication Policy
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestPostamble Cleanup PTA
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestResult Test is successful if the result code is 0
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams -->
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <function name="basic_pta_005" scope="local">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <testcase name="getTestCaseName('PTA anon mapped-search use-ssl')">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <sequence>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <try>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <sequence>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testCase_Preamble'"/>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <message>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'Test Name = %s' % STAXCurrentTestcase
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </message>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Configure LDAP PTA Policy for anon mapped-search over ssl.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set primary-remote-ldap-server:%s:%s' % (primaryHost,primarySslPort))
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set mapped-attribute:cn')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set mapped-search-base-dn:dc=AD,dc=com')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set mapping-policy:mapped-search')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set secondary-remote-ldap-server:%s:%s' % (secondaryHost,secondarySslPort))
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set trust-manager-provider:JKS')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set use-ssl:true')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--type ldap-pass-through')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams dsconfigOptions=' '.join(options)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'dsconfig'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'subcommand' : 'create-password-policy',
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'optionsString' : dsconfigOptions
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Read back the "authentication policy" object.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams dsconfigOptions=' '.join(options)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'dsconfig'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'subcommand' : 'get-password-policy-prop',
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'optionsString' : dsconfigOptions
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Add ds-pwp-password-policy-dn to users entry.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams remotePTAuserName='uid=jvedder, ou=People, o=example'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams remotePTAuserPSWD='befitting'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % ldapPtaPolicyDn)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'modifyAnAttribute'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'DNToModify' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'listAttributes' : ldapObject ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'changetype' : 'add'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Search users entry as Directory Manager for operational attributes.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'ldapSearchWithScript'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsBaseDN' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsFilter' : 'objectclass=*' ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsAttributes' : '+'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Search users entry as self.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'ldapSearchWithScript'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : remotePTAuserName,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : remotePTAuserPSWD ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsBaseDN' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsFilter' : 'objectclass=*'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Modify the users entry.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject.append('description: i am now a remote LDAP PTA user')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'modifyAnAttribute'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : remotePTAuserName,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : remotePTAuserPSWD,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'DNToModify' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'listAttributes' : ldapObject ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'changetype' : 'replace'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Delete ds-pwp-password-policy-dn from users entry.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % ldapPtaPolicyDn)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'modifyAnAttribute'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'DNToModify' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'listAttributes' : ldapObject ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'changetype' : 'delete'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Remove LDAP PTA Authentication Policy.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams dsconfigOptions=' '.join(options)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'dsconfig'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'subcommand' : 'delete-password-policy',
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'optionsString' : dsconfigOptions
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </sequence>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <catch exception="'STAXException'" typevar="eType" var="eInfo">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <message log="1" level="'fatal'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams '%s: Test failed. eInfo(%s)' % (eType,eInfo)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </message>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </catch>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <finally>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testCase_Postamble'"/>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </finally>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </try>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </sequence>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </testcase>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </function>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <!--- Test Case information
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestMarker Basic: PTA simple mapped-search use-ssl
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestName Basic: PTA simple mapped-search use-ssl
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestID basic_pta_003
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestPurpose Verify user with a LDAP PTA mapped-search policy can authenticated to remote server
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestPreamble Setup PTA
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Configure LDAP PTA Policy for mapped-search
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Read back the "authentication policy" object
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Add ds-pwp-password-policy-dn to users entry
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Search users entry as Directory Manager for operational attributes
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Search users entry as self
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Modify the users entry
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep ds-pwp-password-policy-dn from users entry
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestStep Remove LDAP PTA Authentication Policy
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestPostamble Cleanup PTA
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams #@TestResult Test is successful if the result code is 0
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams -->
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <function name="basic_pta_006" scope="local">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <testcase name="getTestCaseName('PTA simple mapped-search use-ssl')">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <sequence>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <try>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <sequence>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testCase_Preamble'"/>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <message>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'Test Name = %s' % STAXCurrentTestcase
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </message>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Configure LDAP PTA Policy for anon mapped-search over ssl.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set primary-remote-ldap-server:%s:%s' % (primaryHost,primarySslPort))
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set mapped-attribute:cn')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set mapped-search-base-dn:dc=AD,dc=com')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set mapped-search-bind-dn:"cn=Directory Manager"')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set mapped-search-bind-password:secret12')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set mapping-policy:mapped-search')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set secondary-remote-ldap-server:%s:%s' % (secondaryHost,secondarySslPort))
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set trust-manager-provider:JKS')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--set use-ssl:true')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--type ldap-pass-through')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams dsconfigOptions=' '.join(options)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'dsconfig'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'subcommand' : 'create-password-policy',
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'optionsString' : dsconfigOptions
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Read back the "authentication policy" object.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams dsconfigOptions=' '.join(options)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'dsconfig'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'subcommand' : 'get-password-policy-prop',
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'optionsString' : dsconfigOptions
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Add ds-pwp-password-policy-dn to users entry.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams remotePTAuserName='uid=jvedder, ou=People, o=example'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams remotePTAuserPSWD='befitting'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % ldapPtaPolicyDn)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'modifyAnAttribute'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'DNToModify' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'listAttributes' : ldapObject ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'changetype' : 'add'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Search users entry as Directory Manager for operational attributes.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'ldapSearchWithScript'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsBaseDN' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsFilter' : 'objectclass=*' ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsAttributes' : '+'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Search users entry as self.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'ldapSearchWithScript'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : remotePTAuserName,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : remotePTAuserPSWD ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsBaseDN' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsFilter' : 'objectclass=*'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Modify the users entry.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject.append('description: i am now a remote LDAP PTA user')
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'modifyAnAttribute'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : remotePTAuserName,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : remotePTAuserPSWD,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'DNToModify' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'listAttributes' : ldapObject ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'changetype' : 'replace'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Delete ds-pwp-password-policy-dn from users entry.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams ldapObject.append('ds-pwp-password-policy-dn: %s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % ldapPtaPolicyDn)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'modifyAnAttribute'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname() ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePort' : local_ldap_server.getPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'DNToModify' : remotePTAuserName ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'listAttributes' : ldapObject ,
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'changetype' : 'delete'
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testStep'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'stepMessage' : 'Remove LDAP PTA Authentication Policy.' }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options=[]
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams options.append('--policy-name "%s"' % ldapPtaPolicyName)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams dsconfigOptions=' '.join(options)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </script>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'dsconfig'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams { 'location' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsPath' : '%s/%s' \
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams % (local_ldap_server.getDir(),OPENDSNAME),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceHost' : local_ldap_server.getHostname(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstanceDn' : local_ldap_server.getRootDn(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'dsInstancePswd' : local_ldap_server.getRootPwd(),
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'subcommand' : 'delete-password-policy',
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams 'optionsString' : dsconfigOptions
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams }
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </call>
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </sequence>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <catch exception="'STAXException'" typevar="eType" var="eInfo">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <message log="1" level="'fatal'">
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams '%s: Test failed. eInfo(%s)' % (eType,eInfo)
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </message>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </catch>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <finally>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams <call function="'testCase_Postamble'"/>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </finally>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </try>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </sequence>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </testcase>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams </function>
a031e6d9877cabf432f5e4f9caafec7f5781198agary.williams
9e400e3d1871744e62389a6c84b841e6e6158d63gary.williams</stax>