Standard or organization user id generation was not consistent. Fixed to ensure

consistency.
This commit is contained in:
robvde 2013-11-29 14:35:10 +04:00
parent 872c8a675a
commit 1a278c34fe
2 changed files with 20 additions and 11 deletions

View file

@ -1235,7 +1235,7 @@ namespace WebsitePanel.EnterpriseServer
DataProvider.DeleteExchangeAccount(itemId, accountId); DataProvider.DeleteExchangeAccount(itemId, accountId);
} }
/*
private static string BuildAccountName(string orgId, string name) private static string BuildAccountName(string orgId, string name)
{ {
string accountName = name = name.Replace(" ", ""); string accountName = name = name.Replace(" ", "");
@ -1271,7 +1271,7 @@ namespace WebsitePanel.EnterpriseServer
} }
} }
*/
#endregion #endregion
@ -3041,7 +3041,7 @@ namespace WebsitePanel.EnterpriseServer
if (idx > -1) if (idx > -1)
name = email.Substring(0, idx); name = email.Substring(0, idx);
string accountName = BuildAccountName(org.OrganizationId, name); string accountName = OrganizationController.BuildAccountNameEx(org, name);
// add contact // add contact
int exchangeServiceId = GetExchangeServiceID(org.PackageId); int exchangeServiceId = GetExchangeServiceID(org.PackageId);
@ -3375,7 +3375,7 @@ namespace WebsitePanel.EnterpriseServer
int packageCheck = SecurityContext.CheckPackage(org.PackageId, DemandPackage.IsActive); int packageCheck = SecurityContext.CheckPackage(org.PackageId, DemandPackage.IsActive);
if (packageCheck < 0) return packageCheck; if (packageCheck < 0) return packageCheck;
string accountName = OrganizationController.BuildAccountNameWithOrgId(org.OrganizationId, name, org.ServiceId); string accountName = OrganizationController.BuildAccountNameEx(org, name);
// add account // add account
// add contact // add contact
@ -4179,7 +4179,7 @@ namespace WebsitePanel.EnterpriseServer
if (String.IsNullOrEmpty(name)) if (String.IsNullOrEmpty(name))
name = Utils.CleanIdentifier(folderName); name = Utils.CleanIdentifier(folderName);
string accountName = BuildAccountName(org.OrganizationId, name); string accountName = OrganizationController.BuildAccountNameEx(org, name);
// add mailbox // add mailbox
int exchangeServiceId = GetExchangeServiceID(org.PackageId); int exchangeServiceId = GetExchangeServiceID(org.PackageId);
@ -4324,7 +4324,7 @@ namespace WebsitePanel.EnterpriseServer
if (EmailAddressExists(email)) if (EmailAddressExists(email))
return BusinessErrorCodes.ERROR_EXCHANGE_EMAIL_EXISTS; return BusinessErrorCodes.ERROR_EXCHANGE_EMAIL_EXISTS;
string accountName = BuildAccountName(org.OrganizationId, name); string accountName = OrganizationController.BuildAccountNameEx(org, name);
int exchangeServiceId = GetExchangeServiceID(org.PackageId); int exchangeServiceId = GetExchangeServiceID(org.PackageId);
ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId); ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId);

View file

@ -397,7 +397,7 @@ namespace WebsitePanel.EnterpriseServer
{ {
foreach (AdditionalGroup additionalGroup in GetAdditionalGroups(settings.UserId)) foreach (AdditionalGroup additionalGroup in GetAdditionalGroups(settings.UserId))
{ {
string additionalGroupName = BuildAccountNameWithOrgId(org.OrganizationId, additionalGroup.GroupName.Replace(" ", ""), org.ServiceId); string additionalGroupName = BuildAccountNameEx(org, additionalGroup.GroupName.Replace(" ", ""));
if (orgProxy.CreateSecurityGroup(org.OrganizationId, additionalGroupName) == 0) if (orgProxy.CreateSecurityGroup(org.OrganizationId, additionalGroupName) == 0)
{ {
@ -1372,7 +1372,7 @@ namespace WebsitePanel.EnterpriseServer
return BusinessErrorCodes.ERROR_EXCHANGE_EMAIL_EXISTS; return BusinessErrorCodes.ERROR_EXCHANGE_EMAIL_EXISTS;
// load organization // load organization
Organization org = GetOrganization(itemId); WebsitePanel.Providers.HostedSolution.Organization org = GetOrganization(itemId);
if (org == null) if (org == null)
{ {
@ -1397,7 +1397,7 @@ namespace WebsitePanel.EnterpriseServer
Organizations orgProxy = GetOrganizationProxy(org.ServiceId); Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
string upn = string.Format("{0}@{1}", name, domain); string upn = string.Format("{0}@{1}", name, domain);
string sAMAccountName = AppendOrgId(serviceSettings) ? BuildAccountNameWithOrgId(org.OrganizationId, name, org.ServiceId) : BuildAccountName(org.OrganizationId, name, org.ServiceId); string sAMAccountName = BuildAccountNameEx(org, name);
TaskManager.Write("accountName :" + sAMAccountName); TaskManager.Write("accountName :" + sAMAccountName);
TaskManager.Write("upn :" + upn); TaskManager.Write("upn :" + upn);
@ -1435,6 +1435,15 @@ namespace WebsitePanel.EnterpriseServer
return userId; return userId;
} }
public static string BuildAccountNameEx(Organization org, string name)
{
StringDictionary serviceSettings = ServerController.GetServiceSettings(org.ServiceId);
return AppendOrgId(serviceSettings) ? BuildAccountNameWithOrgId(org.OrganizationId, name, org.ServiceId) : BuildAccountName(org.OrganizationId, name, org.ServiceId);
}
/// <summary> Checks should or not user name include organization id. </summary> /// <summary> Checks should or not user name include organization id. </summary>
/// <param name="serviceSettings"> The service settings. </param> /// <param name="serviceSettings"> The service settings. </param>
/// <returns> True - if organization id should be appended. </returns> /// <returns> True - if organization id should be appended. </returns>
@ -2359,8 +2368,8 @@ namespace WebsitePanel.EnterpriseServer
Organizations orgProxy = GetOrganizationProxy(org.ServiceId); Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
string groupName = BuildAccountNameWithOrgId(org.OrganizationId, displayName.Replace(" ", ""), org.ServiceId); string groupName = BuildAccountNameEx(org, displayName.Replace(" ", ""));
TaskManager.Write("accountName :" + groupName); TaskManager.Write("accountName :" + groupName);
if (orgProxy.CreateSecurityGroup(org.OrganizationId, groupName) == 0) if (orgProxy.CreateSecurityGroup(org.OrganizationId, groupName) == 0)