#!/bin/sh # Blackbox tests for chainging passwords with kinit and kpasswd # # Copyright (C) 2006-2007 Jelmer Vernooij # Copyright (C) 2006-2008 Andrew Bartlett # Copyright (C) 2016 Andreas Schneider if [ $# -lt 6 ]; then cat < $PREFIX/tmppassfile $samba_kinit --password-file=$PREFIX/tmppassfile $principal $@ } UID_WRAPPER_ROOT=1 export UID_WRAPPER_ROOT CONFIG="--configfile=$PREFIX/etc/smb.conf" export CONFIG testit "reset password policies beside of minimum password age of 0 days" \ $VALGRIND $PYTHON $samba_tool domain passwordsettings set $CONFIG --complexity=default --history-length=default --min-pwd-length=default --min-pwd-age=0 --max-pwd-age=default || failed=`expr $failed + 1` TEST_USERNAME="$(mktemp -u alice-XXXXXX)" TEST_PRINCIPAL="$TEST_USERNAME@$REALM" TEST_PASSWORD="testPaSS@00%" TEST_PASSWORD_NEW="testPaSS@01%" TEST_PASSWORD_SHORT="secret" TEST_PASSWORD_WEAK="Supersecret" testit "create user locally" \ $VALGRIND $PYTHON $newuser $CONFIG $TEST_USERNAME $TEST_PASSWORD || failed=`expr $failed + 1` KRB5CCNAME="$PREFIX/tmpuserccache" export KRB5CCNAME testit "kinit with user password" \ do_kinit $TEST_PRINCIPAL $TEST_PASSWORD || failed=`expr $failed + 1` test_smbclient "Test login with user kerberos ccache" \ "ls" "$SMB_UNC" -k yes || failed=`expr $failed + 1` testit "change user password with 'samba-tool user password' (unforced)" \ $VALGRIND $PYTHON $samba_tool user password -W$DOMAIN -U$TEST_USERNAME%$TEST_PASSWORD -k no --newpassword=$TEST_PASSWORD_NEW || failed=`expr $failed + 1` TEST_PASSWORD_OLD=$TEST_PASSWORD TEST_PASSWORD=$TEST_PASSWORD_NEW TEST_PASSWORD_NEW="testPaSS@02%" testit "kinit with user password" \ do_kinit $TEST_PRINCIPAL $TEST_PASSWORD || failed=`expr $failed + 1` test_smbclient "Test login with user kerberos ccache" \ "ls" "$SMB_UNC" -k yes || failed=`expr $failed + 1` ########################################################### ### check that a short password is rejected ########################################################### cat > $PREFIX/tmpkpasswdscript < $PREFIX/tmpkpasswdscript < $PREFIX/tmpkpasswdscript < $PREFIX/tmpkinitscript <