// Token: 0x06000011 RID: 17 RVA: 0x000024D8 File Offset: 0x000006D8 private static MailboxConnectivity CheckMailboxConnectivity(MailboxConnectivity mailboxConnectivity) { try { mailboxConnectivity.Message = "Getting ADSessionSettings"; ADSessionSettings adsessionSettings = ADSessionSettings.RootOrgOrSingleTenantFromAcceptedDomainAutoDetect(mailboxConnectivity.TenantAcceptedDomain); if (adsessionSettings == null) { mailboxConnectivity.Message = "ADSessionSettings were not found."; return(mailboxConnectivity); } mailboxConnectivity.Message = "Creating IRecipientSession"; IRecipientSession tenantOrRootOrgRecipientSession = DirectorySessionFactory.Default.GetTenantOrRootOrgRecipientSession(null, true, ConsistencyMode.IgnoreInvalid, null, adsessionSettings, 223, "CheckMailboxConnectivity", "f:\\15.00.1497\\sources\\dev\\Management\\src\\ServiceHost\\Servicelets\\AuditLogSearch\\Program\\AuditLogSearchHealthHandler.cs"); if (tenantOrRootOrgRecipientSession == null) { mailboxConnectivity.Message = "IRecipientSession was not found."; return(mailboxConnectivity); } bool flag = mailboxConnectivity.ExchangeUserId.CompareTo(Guid.Empty) == 0; ADUser aduser; if (flag) { mailboxConnectivity.Message = "Getting OrganizationId"; OrganizationId organizationId = OrganizationId.FromAcceptedDomain(mailboxConnectivity.TenantAcceptedDomain); mailboxConnectivity.Message = "Finding arbitration mailbox"; aduser = AdminAuditLogHelper.GetTenantArbitrationMailbox(organizationId); mailboxConnectivity.ExchangeUserId = aduser.ExchangeGuid; } else { mailboxConnectivity.Message = "Finding ADRecipient"; ADRecipient adrecipient = tenantOrRootOrgRecipientSession.FindByExchangeGuidIncludingAlternate(mailboxConnectivity.ExchangeUserId); aduser = (adrecipient as ADUser); } if (aduser == null) { mailboxConnectivity.Message = "ADUser was not found."; return(mailboxConnectivity); } mailboxConnectivity.Message = "Getting ExchangePrincipal"; ExchangePrincipal principal = ExchangePrincipal.FromADUser(aduser, null); mailboxConnectivity.Message = "Creating EwsAuditClient"; EwsAuditClient client = new EwsAuditClient(new EwsConnectionManager(principal, OpenAsAdminOrSystemServiceBudgetTypeType.Default, ExTraceGlobals.ServiceletTracer), TimeSpan.FromSeconds(5.0), ExTraceGlobals.ServiceletTracer); mailboxConnectivity.Message = "Checking connectivity"; AuditLogSearchHealthHandler.CheckMailboxConnectivity(client, false); mailboxConnectivity.Message = "Checking connectivity (archive)"; AuditLogSearchHealthHandler.CheckMailboxConnectivity(client, true); mailboxConnectivity.Message = "Ok"; mailboxConnectivity.Success = true; } catch (Exception ex) { mailboxConnectivity.Message += " FAILED."; mailboxConnectivity.Exception = ex.ToString(); } return(mailboxConnectivity); }
protected override void InternalBeginProcessing() { TaskLogger.LogEnter(); base.InternalBeginProcessing(); this.CheckTopologyType(); if (this.isRunningOnDatacenter && this.Organization != null) { string acceptedDomain = this.Organization.ToString(); base.CurrentOrganizationId = OrganizationId.FromAcceptedDomain(acceptedDomain); } TaskLogger.LogExit(); }
public static AADClient Create(string smtpAddress, GraphProxyVersions apiVersion = GraphProxyVersions.Version14) { ArgumentValidator.ThrowIfNullOrEmpty("smtpAddress", smtpAddress); SmtpAddress smtpAddress2 = new SmtpAddress(smtpAddress); if (!smtpAddress2.IsValidAddress) { AADClientFactory.Tracer.TraceDebug <string>(0L, "SMTP address {0} is not valid, cannot create AADClient", smtpAddress); return(null); } OrganizationId organizationId = OrganizationId.FromAcceptedDomain(smtpAddress2.Domain); return(AADClientFactory.Create(organizationId, apiVersion)); }
public static OAuthCredentials CreateAsApp(InternalClientContext clientContext, RequestLogger requestLogger) { ArgumentValidator.ThrowIfNull("clientContext", clientContext); OrganizationId organizationId = clientContext.OrganizationId; string domain = clientContext.ADUser.PrimarySmtpAddress.Domain; string text = FaultInjection.TraceTest <string>((FaultInjection.LIDs) 2743479613U); if (!string.IsNullOrEmpty(text)) { domain = SmtpAddress.Parse(text).Domain; organizationId = OrganizationId.FromAcceptedDomain(domain); } OAuthCredentials oauthCredentialsForAppToken = OAuthCredentials.GetOAuthCredentialsForAppToken(organizationId, domain); OAuthCredentialsFactory.SetCredentialsProperties(oauthCredentialsForAppToken, clientContext, requestLogger); return(oauthCredentialsForAppToken); }
internal static ICredentials GetICredentials(bool appOnly, ADUser user, string domain) { ICredentials result; if (appOnly) { OrganizationId organizationId = OrganizationId.FromAcceptedDomain(domain); result = OAuthCredentials.GetOAuthCredentialsForAppToken(organizationId, domain); } else { if (user == null) { throw new Exception(Strings.NullUserError); } OrganizationId organizationId = user.OrganizationId; if (organizationId == null) { throw new Exception(Strings.NullOrgIdException(user.Name)); } result = OAuthCredentials.GetOAuthCredentialsForAppActAsToken(organizationId, user, domain); } return(result); }