| | |
| | | </sequence> |
| | | </testcase> |
| | | </function> |
| | | |
| | | <!--- Test Case information |
| | | #@TestMarker Basic: PTA anon mapped-search use-ssl |
| | | #@TestName Basic: PTA anon mapped-search use-ssl |
| | | #@TestID basic_pta_003 |
| | | #@TestPurpose Verify user with a LDAP PTA mapped-search policy can authenticated to remote server |
| | | #@TestPreamble Setup PTA |
| | | #@TestStep Configure LDAP PTA Policy for mapped-search |
| | | #@TestStep Read back the "authentication policy" object |
| | | #@TestStep Add ds-pwp-password-policy-dn to users entry |
| | | #@TestStep Search users entry as Directory Manager for operational attributes |
| | | #@TestStep Search users entry as self |
| | | #@TestStep Modify the users entry |
| | | #@TestStep ds-pwp-password-policy-dn from users entry |
| | | #@TestStep Remove LDAP PTA Authentication Policy |
| | | #@TestPostamble Cleanup PTA |
| | | #@TestResult Test is successful if the result code is 0 |
| | | --> |
| | | <function name="basic_pta_005" scope="local"> |
| | | <testcase name="getTestCaseName('PTA anon mapped-search use-ssl')"> |
| | | <sequence> |
| | | <try> |
| | | <sequence> |
| | | <call function="'testCase_Preamble'"/> |
| | | <message> |
| | | 'Test Name = %s' % STAXCurrentTestcase |
| | | </message> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Configure LDAP PTA Policy for anon mapped-search over ssl.' } |
| | | </call> |
| | | |
| | | <script> |
| | | options=[] |
| | | options.append('--set primary-remote-ldap-server:%s:%s' % (primaryHost,primarySslPort)) |
| | | options.append('--set mapped-attribute:cn') |
| | | options.append('--set mapped-search-base-dn:dc=AD,dc=com') |
| | | options.append('--set mapping-policy:mapped-search') |
| | | options.append('--set secondary-remote-ldap-server:%s:%s' % (secondaryHost,secondarySslPort)) |
| | | options.append('--set trust-manager-provider:JKS') |
| | | options.append('--set use-ssl:true') |
| | | options.append('--type ldap-pass-through') |
| | | options.append('--policy-name "%s"' % ldapPtaPolicyName) |
| | | dsconfigOptions=' '.join(options) |
| | | </script> |
| | | |
| | | <call function="'dsconfig'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname(), |
| | | 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'subcommand' : 'create-password-policy', |
| | | 'optionsString' : dsconfigOptions |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Read back the "authentication policy" object.' } |
| | | </call> |
| | | |
| | | <script> |
| | | options=[] |
| | | options.append('--policy-name "%s"' % ldapPtaPolicyName) |
| | | dsconfigOptions=' '.join(options) |
| | | </script> |
| | | |
| | | <call function="'dsconfig'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname(), |
| | | 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'subcommand' : 'get-password-policy-prop', |
| | | 'optionsString' : dsconfigOptions |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Add ds-pwp-password-policy-dn to users entry.' } |
| | | </call> |
| | | |
| | | <script> |
| | | remotePTAuserName='uid=jvedder, ou=People, o=example' |
| | | remotePTAuserPSWD='befitting' |
| | | ldapObject=[] |
| | | ldapObject.append('ds-pwp-password-policy-dn: %s' \ |
| | | % ldapPtaPolicyDn) |
| | | </script> |
| | | |
| | | <call function="'modifyAnAttribute'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'DNToModify' : remotePTAuserName , |
| | | 'listAttributes' : ldapObject , |
| | | 'changetype' : 'add' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Search users entry as Directory Manager for operational attributes.' } |
| | | </call> |
| | | |
| | | <call function="'ldapSearchWithScript'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'dsBaseDN' : remotePTAuserName , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'dsAttributes' : '+' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Search users entry as self.' } |
| | | </call> |
| | | |
| | | <call function="'ldapSearchWithScript'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : remotePTAuserName, |
| | | 'dsInstancePswd' : remotePTAuserPSWD , |
| | | 'dsBaseDN' : remotePTAuserName , |
| | | 'dsFilter' : 'objectclass=*' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Modify the users entry.' } |
| | | </call> |
| | | |
| | | <script> |
| | | ldapObject=[] |
| | | ldapObject.append('description: i am now a remote LDAP PTA user') |
| | | </script> |
| | | |
| | | <call function="'modifyAnAttribute'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : remotePTAuserName, |
| | | 'dsInstancePswd' : remotePTAuserPSWD, |
| | | 'DNToModify' : remotePTAuserName , |
| | | 'listAttributes' : ldapObject , |
| | | 'changetype' : 'replace' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Delete ds-pwp-password-policy-dn from users entry.' } |
| | | </call> |
| | | |
| | | <script> |
| | | ldapObject=[] |
| | | ldapObject.append('ds-pwp-password-policy-dn: %s' \ |
| | | % ldapPtaPolicyDn) |
| | | </script> |
| | | |
| | | <call function="'modifyAnAttribute'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'DNToModify' : remotePTAuserName , |
| | | 'listAttributes' : ldapObject , |
| | | 'changetype' : 'delete' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Remove LDAP PTA Authentication Policy.' } |
| | | </call> |
| | | |
| | | <script> |
| | | options=[] |
| | | options.append('--policy-name "%s"' % ldapPtaPolicyName) |
| | | dsconfigOptions=' '.join(options) |
| | | </script> |
| | | |
| | | <call function="'dsconfig'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname(), |
| | | 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'subcommand' : 'delete-password-policy', |
| | | 'optionsString' : dsconfigOptions |
| | | } |
| | | </call> |
| | | |
| | | </sequence> |
| | | |
| | | <catch exception="'STAXException'" typevar="eType" var="eInfo"> |
| | | <message log="1" level="'fatal'"> |
| | | '%s: Test failed. eInfo(%s)' % (eType,eInfo) |
| | | </message> |
| | | </catch> |
| | | <finally> |
| | | <call function="'testCase_Postamble'"/> |
| | | </finally> |
| | | </try> |
| | | </sequence> |
| | | </testcase> |
| | | </function> |
| | | |
| | | <!--- Test Case information |
| | | #@TestMarker Basic: PTA simple mapped-search use-ssl |
| | | #@TestName Basic: PTA simple mapped-search use-ssl |
| | | #@TestID basic_pta_003 |
| | | #@TestPurpose Verify user with a LDAP PTA mapped-search policy can authenticated to remote server |
| | | #@TestPreamble Setup PTA |
| | | #@TestStep Configure LDAP PTA Policy for mapped-search |
| | | #@TestStep Read back the "authentication policy" object |
| | | #@TestStep Add ds-pwp-password-policy-dn to users entry |
| | | #@TestStep Search users entry as Directory Manager for operational attributes |
| | | #@TestStep Search users entry as self |
| | | #@TestStep Modify the users entry |
| | | #@TestStep ds-pwp-password-policy-dn from users entry |
| | | #@TestStep Remove LDAP PTA Authentication Policy |
| | | #@TestPostamble Cleanup PTA |
| | | #@TestResult Test is successful if the result code is 0 |
| | | --> |
| | | <function name="basic_pta_006" scope="local"> |
| | | <testcase name="getTestCaseName('PTA simple mapped-search use-ssl')"> |
| | | <sequence> |
| | | <try> |
| | | <sequence> |
| | | <call function="'testCase_Preamble'"/> |
| | | <message> |
| | | 'Test Name = %s' % STAXCurrentTestcase |
| | | </message> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Configure LDAP PTA Policy for anon mapped-search over ssl.' } |
| | | </call> |
| | | |
| | | <script> |
| | | options=[] |
| | | options.append('--set primary-remote-ldap-server:%s:%s' % (primaryHost,primarySslPort)) |
| | | options.append('--set mapped-attribute:cn') |
| | | options.append('--set mapped-search-base-dn:dc=AD,dc=com') |
| | | options.append('--set mapped-search-bind-dn:"cn=Directory Manager"') |
| | | options.append('--set mapped-search-bind-password:secret12') |
| | | options.append('--set mapping-policy:mapped-search') |
| | | options.append('--set secondary-remote-ldap-server:%s:%s' % (secondaryHost,secondarySslPort)) |
| | | options.append('--set trust-manager-provider:JKS') |
| | | options.append('--set use-ssl:true') |
| | | options.append('--type ldap-pass-through') |
| | | options.append('--policy-name "%s"' % ldapPtaPolicyName) |
| | | dsconfigOptions=' '.join(options) |
| | | </script> |
| | | |
| | | <call function="'dsconfig'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname(), |
| | | 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'subcommand' : 'create-password-policy', |
| | | 'optionsString' : dsconfigOptions |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Read back the "authentication policy" object.' } |
| | | </call> |
| | | |
| | | <script> |
| | | options=[] |
| | | options.append('--policy-name "%s"' % ldapPtaPolicyName) |
| | | dsconfigOptions=' '.join(options) |
| | | </script> |
| | | |
| | | <call function="'dsconfig'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname(), |
| | | 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'subcommand' : 'get-password-policy-prop', |
| | | 'optionsString' : dsconfigOptions |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Add ds-pwp-password-policy-dn to users entry.' } |
| | | </call> |
| | | |
| | | <script> |
| | | remotePTAuserName='uid=jvedder, ou=People, o=example' |
| | | remotePTAuserPSWD='befitting' |
| | | ldapObject=[] |
| | | ldapObject.append('ds-pwp-password-policy-dn: %s' \ |
| | | % ldapPtaPolicyDn) |
| | | </script> |
| | | |
| | | <call function="'modifyAnAttribute'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'DNToModify' : remotePTAuserName , |
| | | 'listAttributes' : ldapObject , |
| | | 'changetype' : 'add' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Search users entry as Directory Manager for operational attributes.' } |
| | | </call> |
| | | |
| | | <call function="'ldapSearchWithScript'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'dsBaseDN' : remotePTAuserName , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'dsAttributes' : '+' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Search users entry as self.' } |
| | | </call> |
| | | |
| | | <call function="'ldapSearchWithScript'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : remotePTAuserName, |
| | | 'dsInstancePswd' : remotePTAuserPSWD , |
| | | 'dsBaseDN' : remotePTAuserName , |
| | | 'dsFilter' : 'objectclass=*' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Modify the users entry.' } |
| | | </call> |
| | | |
| | | <script> |
| | | ldapObject=[] |
| | | ldapObject.append('description: i am now a remote LDAP PTA user') |
| | | </script> |
| | | |
| | | <call function="'modifyAnAttribute'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : remotePTAuserName, |
| | | 'dsInstancePswd' : remotePTAuserPSWD, |
| | | 'DNToModify' : remotePTAuserName , |
| | | 'listAttributes' : ldapObject , |
| | | 'changetype' : 'replace' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Delete ds-pwp-password-policy-dn from users entry.' } |
| | | </call> |
| | | |
| | | <script> |
| | | ldapObject=[] |
| | | ldapObject.append('ds-pwp-password-policy-dn: %s' \ |
| | | % ldapPtaPolicyDn) |
| | | </script> |
| | | |
| | | <call function="'modifyAnAttribute'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname() , |
| | | 'dsInstancePort' : local_ldap_server.getPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'DNToModify' : remotePTAuserName , |
| | | 'listAttributes' : ldapObject , |
| | | 'changetype' : 'delete' |
| | | } |
| | | </call> |
| | | |
| | | <call function="'testStep'"> |
| | | { 'stepMessage' : 'Remove LDAP PTA Authentication Policy.' } |
| | | </call> |
| | | |
| | | <script> |
| | | options=[] |
| | | options.append('--policy-name "%s"' % ldapPtaPolicyName) |
| | | dsconfigOptions=' '.join(options) |
| | | </script> |
| | | |
| | | <call function="'dsconfig'"> |
| | | { 'location' : local_ldap_server.getHostname(), |
| | | 'dsPath' : '%s/%s' \ |
| | | % (local_ldap_server.getDir(),OPENDSNAME), |
| | | 'dsInstanceHost' : local_ldap_server.getHostname(), |
| | | 'dsInstanceAdminPort' : local_ldap_server.getAdminPort(), |
| | | 'dsInstanceDn' : local_ldap_server.getRootDn(), |
| | | 'dsInstancePswd' : local_ldap_server.getRootPwd(), |
| | | 'subcommand' : 'delete-password-policy', |
| | | 'optionsString' : dsconfigOptions |
| | | } |
| | | </call> |
| | | |
| | | </sequence> |
| | | |
| | | <catch exception="'STAXException'" typevar="eType" var="eInfo"> |
| | | <message log="1" level="'fatal'"> |
| | | '%s: Test failed. eInfo(%s)' % (eType,eInfo) |
| | | </message> |
| | | </catch> |
| | | <finally> |
| | | <call function="'testCase_Postamble'"/> |
| | | </finally> |
| | | </try> |
| | | </sequence> |
| | | </testcase> |
| | | </function> |
| | | |
| | | </stax> |