Page 1 of 1

Authentication ID case sensitivity ?

Posted: Wed Dec 12, 2007 5:33 pm
by dwerthmu
I've got a username seems to be case sensitive. Both via webmail and outlook client.
I'm using an ldap server to the password storage. Scalix 11.2, on RHEL5

Followed this method to get it all working.
http://www.scalix.com/wiki/index.php?ti ... ing_Scalix

create the corresponding account with --password-locked on the scalix server and it seems to work well but if the user uses a cap with the userid then login fails.

I realize passwords are case sensitive but authid?

Posted: Thu Dec 13, 2007 3:12 am
by Valerion
Yes it is case sensitive.

You can use the first and last name to log in, as well as the email address of the user (not case sensitive). SAC requires the Auth ID, though.

Posted: Thu Dec 13, 2007 10:59 am
by dwerthmu
OK this should be ok to deal with. Aware of a way to change to lower case in a login script?

The user name comes from the PC environment variables.
Like:
Login script
if not exist %TMP% install.ini
then
@ECHO OFF
INSTALL_LOG_FILE=c:\temp\scalix.log

@REM Place the scalix profile setup in the users tmp folder. Only needed at startup.

SET INI_FILE=%TMP%\Install.ini
ECHO [Install Flags] > %INI_FILE%
ECHO InstallWithServerStore=1 >> %INI_FILE%
ECHO InstallAllowSavedPassword=1 >> %INI_FILE%
ECHO InstallSetDefaultProfile=0 >> %INI_FILE%
ECHO InstallMigrateExProfile=0 >> %INI_FILE%
ECHO InstallDefaultProfileName=Scalix1 >> %INI_FILE%
ECHO InstallMailServerName=email.server.tld >> %INI_FILE%
ECHO InstallUsername=%USERNAME% >> %INI_FILE%
ECHO InstallLogFileLocation=%INSTALL_LOG_FILE% >> %INI_FILE%

@rem Config file is there now run the profile setup

"C:\Program Files\Scalix\Connect\sxpro.exe" -i %TMP%

exit

Posted: Thu Dec 13, 2007 4:28 pm
by dwerthmu
Found a solution that may be helpful to others:
Found some free dos code to convert from uppercase to lower and included it in the scalix sxpro config file creator

Place this in a file on the pc hard drive and it will auto create the users outlook profile for use with your scalix server.

@ECHO OFF
set INSTALL_LOG_FILE=c:\temp\scalix.log

@REM Place the scalix profile setup in the users tmp folder. Only needed at startup.
call :end_remarks
SET INI_FILE=%TMP%\Install.ini
ECHO [Install Flags] > %INI_FILE%
ECHO InstallWithServerStore=1 >> %INI_FILE%
ECHO InstallAllowSavedPassword=1 >> %INI_FILE%
ECHO InstallSetDefaultProfile=1 >> %INI_FILE%
ECHO InstallMigrateExProfile=0 >> %INI_FILE%
ECHO InstallDefaultProfileName=Scalix1 >> %INI_FILE%
ECHO InstallMailServerName=mailhost.tld >> %INI_FILE%
ECHO InstallUsername=%convertedstring% >> %INI_FILE%
ECHO InstallLogFileLocation=%INSTALL_LOG_FILE% >> %INI_FILE%

@rem Config file is there now run the profile setup

"C:\Program Files\Scalix\Connect\sxpro.exe" -i %TMP%

exit

@echo off
goto :end_remarks
*************************************************************************************
*
*
* authored:Sam Wofford
* Returns lowercase of a string
* 12:13 PM 11/13/02
**************************************************************************************
:end_remarks

set %1=%USERNAME%
set errorlevel=-1
@REM if {%1}=={} echo NO ARG GIVEN&call :Help &goto :endit
@REM if {%1}=={/?} call :Help &goto :endit
call :set_LCASE_array a b c d e f g h i j k l m n o p q r s t u v w x y z

:start

set input=%USERNAME%
set input=%input:"=%
set totparams=0
call :COUNT_PARAMS %input%
call :MAKE_LOWERCASE %input%
set errorlevel=
@REM echo %convertedstring%
endlocal
goto :eof
:endit
echo %errorlevel%
endlocal
goto :eof

:MAKE_LOWERCASE
:nextstring
if {%1}=={} goto :eof
set string=%1
set /a params+=1
set STRINGCONVERTED=
set pos=0
:NEXT_CHAR
set onechar=%%string^:^~%pos%,1%%
for /f "tokens=1,2 delims==" %%a in ('set onechar') do for /f %%c in ('echo %%b') do call :checkit %%c
if not defined STRINGCONVERTED goto :NEXT_CHAR
shift /1
if %params% LSS %totparams% set convertedstring=%convertedstring% &:add one space,but not at end
goto :nextstring
goto :eof

:Help
echo USAGE:%~n0 string OR %~n0 "with spaces"
echo function returns the lowercase of the string or -1 (error)
echo strings with embedded spaces needs to be in quotes Ex. "lower case"
echo in a batch NTscript "for /f %%%%A in ('lcase STRING') do set var=%%%%A"
set errorlevel=
goto :eof

:checkit
set LCFOUND=
if /i {%1}=={echo} set STRINGCONVERTED=Y&goto :eof
set char=%1
for /f "tokens=2 delims=_=" %%A in ('set LCASE_') do call :findit %%A %char%
:skipit
if defined LCFOUND (set convertedstring=%convertedstring%%ucletter%) else (set convertedstring=%convertedstring%%char%)
set /a pos+=1
goto :eof

:set_LCASE_array
:setit
if {%1}=={} goto :eof
set LCASE_%1_=%1
SHIFT /1
goto :setit

:findit
if defined LCFOUND goto :eof
set ucletter=%1
set lcchar=%2
if /i {%ucletter%}=={%lcchar%} set LCFOUND=yes
goto :eof

:COUNT_PARAMS
:COUNTPARAMS
if {%1}=={} goto :eof
set /a totparams+=1
shift /1
goto :COUNTPARAMS

Posted: Fri Dec 14, 2007 12:38 am
by joako
Valerion wrote:Yes it is case sensitive.

You can use the first and last name to log in, as well as the email address of the user (not case sensitive). SAC requires the Auth ID, though.


When you login to SAC incorrectly it says "passwords are case sensitive" not username... I have auth id that have caps (default behaviour... I figured it was for readability) and never had any issues.