| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8" standalone="no"?> |
| | | <!DOCTYPE stax SYSTEM "stax.dtd"> |
| | | <!-- |
| | | ! CDDL HEADER START |
| | | ! |
| | | ! The contents of this file are subject to the terms of the |
| | | ! Common Development and Distribution License, Version 1.0 only |
| | | ! (the "License"). You may not use this file except in compliance |
| | | ! with the License. |
| | | ! |
| | | ! You can obtain a copy of the license at |
| | | ! trunk/opends/resource/legal-notices/OpenDS.LICENSE |
| | | ! or https://OpenDS.dev.java.net/OpenDS.LICENSE. |
| | | ! See the License for the specific language governing permissions |
| | | ! and limitations under the License. |
| | | ! |
| | | ! When distributing Covered Code, include this CDDL HEADER in each |
| | | ! file and include the License file at |
| | | ! trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable, |
| | | ! add the following below this CDDL HEADER, with the fields enclosed |
| | | ! by brackets "[]" replaced with your own identifying * information: |
| | | ! Portions Copyright [yyyy] [name of copyright owner] |
| | | ! |
| | | ! CDDL HEADER END |
| | | ! |
| | | ! Portions Copyright 2007 Sun Microsystems, Inc. |
| | | ! --> |
| | | <stax> |
| | | |
| | | <defaultcall function="sasl_digest-md5"/> |
| | | |
| | | <function name="sasl_digest-md5"> |
| | | |
| | | <sequence> |
| | | |
| | | <!--- Test case: DIGEST-MD5 SASL Mechanism --> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Preamble'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: Preamble Step 1 - Admin Changing Pwd Storage to CLEAR' |
| | | </message> |
| | | |
| | | <call function="'modifyEntry'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsInstanceDn' : DIRECTORY_INSTANCE_DN , |
| | | 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD , |
| | | 'entryToBeModified' : '%s/security/sasl/admin_change_CLEAR.ldif' % STAGED_DATA_DIR } |
| | | </call> |
| | | |
| | | <if expr="RC != 0"> |
| | | <tcstatus result="'fail'"/> |
| | | </if> |
| | | |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: Preamble Step 2 - Admin Changing User Password' |
| | | </message> |
| | | |
| | | <call function="'modifyEntry'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsInstanceDn' : DIRECTORY_INSTANCE_DN , |
| | | 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD , |
| | | 'entryToBeModified' : '%s/security/sasl/admin_change_user_pwd3.ldif' % STAGED_DATA_DIR } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Dupe uid (u:) Bind'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User With Dupe uid (u:) Binding' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o authid=u:jsprinter -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult , |
| | | 'expected' : 1 } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: User (u:) Bind'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User (u:) Binding' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o authid=u:jwalleye -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Dupe uid (dn:) Bind'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User With Dupe uid (dn:) Binding' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=dn:uid=jsprinter,ou=People,o=SASL Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: User (dn:) Bind'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User (dn:) Binding' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=dn:uid=jwalleye,ou=People,o=SASL Realm Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test case: Admin creating realm --> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Create Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: Admin Creating Realm' |
| | | </message> |
| | | |
| | | <call function="'modifyEntry'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsInstanceDn' : DIRECTORY_INSTANCE_DN , |
| | | 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD , |
| | | 'entryToBeModified' : '%s/security/sasl/admin_add_realm.ldif' % STAGED_DATA_DIR } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Dupe uid (u:) Bind With Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User With Dupe uid (u:) Binding With Realm' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=u:jsprinter" -o "realm=o=SASL Realm Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult , |
| | | 'expected' : 1 } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: User (u:) Bind With Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User (u:) Binding With Realm' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=u:jwalleye" -o "realm=o=SASL Realm Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Dupe uid (dn:) Bind With Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User With Dupe uid (dn:) Binding With Realm' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=dn:uid=jsprinter,ou=People,o=SASL Tests,dc=example,dc=com" -o "realm=o=SASL Realm Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: User (dn:) Bind With Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User (dn:) Binding With Realm' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=dn:uid=jwalleye,ou=People,o=SASL Realm Tests,dc=example,dc=com" -o "realm=o=SASL Realm Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Dupe uid (u:) Bind With Undefined Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User With Dupe uid (u:) Binding With Undefined Realm' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=u:jsprinter" -o "realm=o=SASL Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult , |
| | | 'expected' : 1 } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: User (u:) Bind With Undefined Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User (u:) Binding With Undefined Realm' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=u:jwalleye" -o "realm=o=SASL Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult , |
| | | 'expected' : 1 } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Dupe uid (dn:) Bind With Undefined Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User With Dupe uid (dn:) Binding With Undefined Realm' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=dn:uid=jsprinter,ou=People,o=SASL Tests,dc=example,dc=com" -o "realm=o=SASL Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult , |
| | | 'expected' : 1 } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test Case : User Bind With DIGEST-MD5 SASL Mechanism--> |
| | | <testcase name="'Security: SASL DIGEST-MD5: User (dn:) Bind With Undeined Realm'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: User (dn:) Binding With Undefined Realm' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=dn:uid=jwalleye,ou=People,o=SASL Realm Tests,dc=example,dc=com" -o "realm=o=SASL Tests,dc=example,dc=com" -w frogleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult , |
| | | 'expected' : 1 } |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <!--- Test case: DIGEST-MD5 SASL Mechanism --> |
| | | <testcase name="'Security: SASL DIGEST-MD5: Postamble'"> |
| | | <sequence> |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: Postamble Step 1 - Admin Changing Pwd Storage to SSHA' |
| | | </message> |
| | | |
| | | <call function="'modifyEntry'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsInstanceDn' : DIRECTORY_INSTANCE_DN , |
| | | 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD , |
| | | 'entryToBeModified' : '%s/security/sasl/admin_change_SSHA.ldif' % STAGED_DATA_DIR } |
| | | </call> |
| | | |
| | | <if expr="RC != 0"> |
| | | <tcstatus result="'fail'"/> |
| | | </if> |
| | | |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: Postamble Step 2 - Admin Changing User Password' |
| | | </message> |
| | | |
| | | <call function="'modifyEntry'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsInstanceDn' : DIRECTORY_INSTANCE_DN , |
| | | 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD , |
| | | 'entryToBeModified' : '%s/security/sasl/admin_change_user_pwd4.ldif' % STAGED_DATA_DIR } |
| | | </call> |
| | | |
| | | <if expr="RC != 0"> |
| | | <tcstatus result="'fail'"/> |
| | | </if> |
| | | |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: Postamble Step 3 - Admin Deleting Realm' |
| | | </message> |
| | | |
| | | <call function="'modifyEntry'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsInstanceDn' : DIRECTORY_INSTANCE_DN , |
| | | 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD , |
| | | 'entryToBeModified' : '%s/security/sasl/admin_del_realm.ldif' % STAGED_DATA_DIR } |
| | | </call> |
| | | |
| | | <if expr="RC != 0"> |
| | | <tcstatus result="'fail'"/> |
| | | </if> |
| | | |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: Postamble Step 4 - User (dn:) Binding With Simple Authentication' |
| | | </message> |
| | | |
| | | <call function="'SearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsInstanceDn' : 'uid=jwalleye,ou=People,o=SASL Realm Tests,dc=example,dc=com' , |
| | | 'dsInstancePswd' : 'catleg' , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-s base' } |
| | | </call> |
| | | |
| | | <if expr="RC != 0"> |
| | | <tcstatus result="'fail'"/> |
| | | </if> |
| | | |
| | | <message> |
| | | 'Security: SASL DIGEST-MD5: Postamble Step 5 - User (dn:) Binding 2' |
| | | </message> |
| | | |
| | | <call function="'AnonSearchObject'"> |
| | | { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , |
| | | 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , |
| | | 'dsBaseDN' : 'dc=example,dc=com' , |
| | | 'dsFilter' : 'objectclass=*' , |
| | | 'extraParams' : '-o mech=DIGEST-MD5 -o "authid=dn:uid=jwalleye,ou=People,o=SASL Realm Tests,dc=example,dc=com" -w catleg' } |
| | | </call> |
| | | |
| | | <call function="'checktestRC'"> |
| | | { 'returncode' : RC , |
| | | 'result' : STAXResult , |
| | | 'expected' : 1} |
| | | </call> |
| | | </sequence> |
| | | </testcase> |
| | | |
| | | <return>RC</return> |
| | | |
| | | </sequence> |
| | | |
| | | </function> |
| | | |
| | | </stax> |