problem with SSO and UNICODE username
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-30-2009 02:11 PM
Hi guys,
i'm using alfresco 3c.
I succesfully configured alfresco with SSO login chaining ntlm and ldap.
It works for every user but one that is like usernameù. Th problem is the character ù .
I investigated and the problem id in the class NTLMAuthenticationComponentImpl.
At the line :
it throws a SMBException.
Can u help me?
Is there a way to let people with unicode character in the username to login using SSO?
thanks
i'm using alfresco 3c.
I succesfully configured alfresco with SSO login chaining ntlm and ldap.
It works for every user but one that is like usernameù. Th problem is the character ù .
I investigated and the problem id in the class NTLMAuthenticationComponentImpl.
At the line :
authSess.doSessionSetup(username, lmPwd, ntlmPwd);
it throws a SMBException.
Can u help me?
Is there a way to let people with unicode character in the username to login using SSO?
thanks
Labels:
- Labels:
-
Archive
3 REPLIES 3
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-24-2014 06:44 AM
And 5 years later here it come's the first reply to this post… ouu yeahh
Unfortunately is not to post the solution by the way
I run to similar problem, after making Alfresco 4.2.c work with a custom external authentication. This custom authenticator is based on the SSOAuthenticationFilter that comes out-of-the-box with Share.
At this point, after doing some processing to my custom header (which is handled by an external system) I set this two session attributes when a valid request comes in
session.setAttribute(UserFactory.SESSION_ATTRIBUTE_KEY_USER_ID, userName);
session.setAttribute(UserFactory.SESSION_ATTRIBUTE_EXTERNAL_AUTH, Boolean.TRUE);
So everyone else in the authentication chain is aware that the session is valid, that's fine, works as spected for my user registry except for those wiht non-ascii characters in the username
for example
iñaki
is created as
i?aki
So, I tried
session.setAttribute(UserFactory.SESSION_ATTRIBUTE_KEY_USER_ID, URLEnconder.endode(userName));
which is deprecated, should be
session.setAttribute(UserFactory.SESSION_ATTRIBUTE_KEY_USER_ID, URLEnconder.endode(userName, "UTF-8"));
but then iñaki is created as
i\u00f1aki
This looks fine, but is not. The user home folder is created as i_u00f1aki
If I try to create a user with the Share Admin Console, I can create iñaki user, correctly stored like "iñaki" in the Alfresco Database, but that is happening in a diferent process, webscript talking to the repo to create the user.
Instead my user is created thanks to "createMissingPeople" boolean with says, ok the user is valid and doesn't exist, let's create it for you, which is finally handled by the PesonService.
So what is Alfresco repo specting in that session attibute to create "iñaki" username?
Thanks
Unfortunately is not to post the solution by the way

I run to similar problem, after making Alfresco 4.2.c work with a custom external authentication. This custom authenticator is based on the SSOAuthenticationFilter that comes out-of-the-box with Share.
At this point, after doing some processing to my custom header (which is handled by an external system) I set this two session attributes when a valid request comes in
session.setAttribute(UserFactory.SESSION_ATTRIBUTE_KEY_USER_ID, userName);
session.setAttribute(UserFactory.SESSION_ATTRIBUTE_EXTERNAL_AUTH, Boolean.TRUE);
So everyone else in the authentication chain is aware that the session is valid, that's fine, works as spected for my user registry except for those wiht non-ascii characters in the username
for example
iñaki
is created as
i?aki
So, I tried
session.setAttribute(UserFactory.SESSION_ATTRIBUTE_KEY_USER_ID, URLEnconder.endode(userName));
which is deprecated, should be
session.setAttribute(UserFactory.SESSION_ATTRIBUTE_KEY_USER_ID, URLEnconder.endode(userName, "UTF-8"));
but then iñaki is created as
i\u00f1aki
This looks fine, but is not. The user home folder is created as i_u00f1aki
If I try to create a user with the Share Admin Console, I can create iñaki user, correctly stored like "iñaki" in the Alfresco Database, but that is happening in a diferent process, webscript talking to the repo to create the user.
Instead my user is created thanks to "createMissingPeople" boolean with says, ok the user is valid and doesn't exist, let's create it for you, which is finally handled by the PesonService.
So what is Alfresco repo specting in that session attibute to create "iñaki" username?
Thanks
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-24-2014 01:44 PM
That's a Java String, it should not need "encoding".
If it doesn't work then please raise an issue in JIRA with as much information as possible.
If it doesn't work then please raise an issue in JIRA with as much information as possible.
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-26-2014 07:21 AM
