Author |
Topic |
|
Blade
New Member
66 Posts |
Posted - 02 February 2001 : 09:14:21
|
I'm running the board using NT authentication in a multiple domain environment. Does the board recognize logins from different domains? For example, if "bob" from "domain-a" registers an account, and then "bob"(same NT username) from "domain-b" trys to login, will it try to use the already registered account from "domain-a" because it is the same name, or will it allow him to register a new account knowing he is on a different domain? (make sense?) |
|
Kal Corp
Average Member
USA
878 Posts |
Posted - 02 February 2001 : 16:42:14
|
I think that might be a problem. The domain and account is parsed, then the account name is added to the database. You could stop the parsing and have the domain name and account names in the Database.
|
|
|
Blade
New Member
66 Posts |
Posted - 02 February 2001 : 22:23:05
|
How would I do that? |
|
|
Kal Corp
Average Member
USA
878 Posts |
Posted - 04 February 2001 : 11:08:42
|
You would have to change the code in the INC_Functions. there might be other code to change to.
Any thing to do with the Domain Account nees to be looked at. Could be simple or big :-(
|
|
|
Blade
New Member
66 Posts |
Posted - 04 February 2001 : 23:57:44
|
If the section of code is changed where the domain account name is initially written to the database at registration, and it leaves it as "domain\username", wouldn't the rest of the board just read that string as the nt username, and treat it accordingly? I went looking through register.asp and inc_functions.asp, but I couldn't tell where it was writing that information to the database under the M_USERNAME column of FORUM_MEMBERS at the initial registration.
Edited by - blade on 21 February 2001 13:36:34 |
|
|
Kal Corp
Average Member
USA
878 Posts |
Posted - 05 February 2001 : 11:18:06
|
It removes the domain name and just saves the account name. I was thinking you could try to remove that and have the Domain name part of the Account name.
Edited by - kal corp on 05 February 2001 11:21:05 |
|
|
Blade
New Member
66 Posts |
Posted - 05 February 2001 : 14:03:32
|
I figured out the fix to make the board support multiple domains (an enterprise environment):
Replace the following section of code in INC_FUNCTIONS.ASP:
sub NTAuthenticate() dim strUser, strNTUser, checkNT strNTUser = Request.ServerVariables("AUTH_USER") strNTUser = replace(strNTUser, "\", "/") if Session(strCookieURL & "userid") = "" then strUser = Mid(strNTUser,(instr(1,strNTUser,"/")+1),len(strNTUser)) Session(strCookieURL & "userid") = strUser end if if strNTGroups="1" then strNTGroupsSTR = Session(strCookieURL & "strNTGroupsSTR") if Session(strCookieURL & "strNTGroupsSTR") = "" then Set strNTUserInfo = GetObject("WinNT://"+strNTUser) For Each strNTUserInfoGroup in strNTUserInfo.Groups strNTGroupsSTR=strNTGroupsSTR+", "+strNTUserInfoGroup.name NEXT Session(strCookieURL & "strNTGroupsSTR") = strNTGroupsSTR end if end if
if strAutoLogon="1" then strNTUserFullName = Session(strCookieURL & "strNTUserFullName") if Session(strCookieURL & "strNTUserFullName") = "" then Set strNTUserInfo = GetObject("WinNT://"+strNTUser) strNTUserFullName=strNTUserInfo.FullName Session(strCookieURL & "strNTUserFullName") = strNTUserFullName end if end if end sub
with the following:
sub NTAuthenticate() dim strUser, strNTUser, checkNT strNTUser = Request.ServerVariables("AUTH_USER") strNTUser2 = replace(strNTUser, "\", "/") if Session(strCookieURL & "userid") = "" then strUser = strNTUser Session(strCookieURL & "userid") = strUser end if if strNTGroups="1" then strNTGroupsSTR = Session(strCookieURL & "strNTGroupsSTR") if Session(strCookieURL & "strNTGroupsSTR") = "" then Set strNTUserInfo = GetObject("WinNT://"+strNTUser2) For Each strNTUserInfoGroup in strNTUserInfo.Groups strNTGroupsSTR=strNTGroupsSTR+", "+strNTUserInfoGroup.name NEXT Session(strCookieURL & "strNTGroupsSTR") = strNTGroupsSTR end if end if
if strAutoLogon="1" then strNTUserFullName = Session(strCookieURL & "strNTUserFullName") if Session(strCookieURL & "strNTUserFullName") = "" then Set strNTUserInfo = GetObject("WinNT://"+strNTUser2) strNTUserFullName=strNTUserInfo.FullName Session(strCookieURL & "strNTUserFullName") = strNTUserFullName end if end if end sub |
|
|
|
Topic |
|