private void PropagateExchangePropertyContainer() { ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication = this.ClientApplication; if (this.IsInnerRunspaceThrottlingEnabled && base.ExchangeRunspaceConfig != null && clientApplication == ExchangeRunspaceConfigurationSettings.ExchangeApplication.Unknown) { clientApplication = base.ExchangeRunspaceConfig.ConfigurationSettings.ClientApplication; } ADServerSettings adServerSettingsOverride = null; base.CurrentTaskContext.TryGetItem <ADServerSettings>("CmdletServerSettings", ref adServerSettingsOverride); ExchangePropertyContainer.PropagateExchangePropertyContainer(base.SessionState, this.monadConnection.RunspaceProxy, this.IsInnerRunspaceRBACEnabled, this.IsInnerRunspaceThrottlingEnabled, adServerSettingsOverride, clientApplication); }
// Token: 0x060013F3 RID: 5107 RVA: 0x0004646C File Offset: 0x0004466C internal static string AddClientApplicationToUrl(string url, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApp) { if (ExchangeRunspaceConfigurationSettings.regExForClientApp.IsMatch(url)) { return(ExchangeRunspaceConfigurationSettings.regExForClientApp.Replace(url, clientApp.ToString())); } if (string.IsNullOrEmpty(new Uri(url).Query)) { return(string.Format("{0}?clientApplication={1}", url, clientApp.ToString())); } return(url += string.Format("{0}clientApplication={1}", url.EndsWith(";") ? string.Empty : ";", clientApp.ToString())); }
public WorkloadSettings GetWorkloadSettings() { ExchangeRunspaceConfigurationSettings.ExchangeApplication exchangeApplication = ExchangeRunspaceConfigurationSettings.ExchangeApplication.Unknown; if (this.context.SessionState != null) { exchangeApplication = ExchangePropertyContainer.GetPropagatedClientAppId(this.context.SessionState); } if (exchangeApplication == ExchangeRunspaceConfigurationSettings.ExchangeApplication.Unknown && this.context.ExchangeRunspaceConfig != null) { exchangeApplication = this.context.ExchangeRunspaceConfig.ConfigurationSettings.ClientApplication; } return(this.GetWorkloadSettings(exchangeApplication)); }
// Token: 0x060013D2 RID: 5074 RVA: 0x00046180 File Offset: 0x00044380 internal ExchangeRunspaceConfigurationSettings(Uri connectionUri, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string tenantOrganization, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, PSLanguageMode languageMode, ExchangeRunspaceConfigurationSettings.ProxyMethod proxyMethod, bool proxyFullSerialization, bool encodeDecodeKey, bool isProxy, ExchangeRunspaceConfigurationSettings.ExchangeUserType user, IEnumerable <KeyValuePair <string, string> > additionalConstraints) { this.clientApplication = clientApplication; this.serializationLevel = serializationLevel; this.tenantOrganization = tenantOrganization; this.languageMode = languageMode; this.originalConnectionUri = connectionUri; this.proxyMethod = proxyMethod; this.proxyFullSerialization = proxyFullSerialization; this.EncodeDecodeKey = encodeDecodeKey; this.IsProxy = isProxy; this.UserType = user; this.additionalConstraints = additionalConstraints; }
// Token: 0x060013F2 RID: 5106 RVA: 0x00046384 File Offset: 0x00044584 internal static ExchangeRunspaceConfigurationSettings CreateConfigurationSettingsFromNameValueCollection(Uri uri, NameValueCollection collection, ExchangeRunspaceConfigurationSettings.ExchangeApplication defaultApplication) { string text = collection.Get("organization"); ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel = ExchangeRunspaceConfigurationSettings.SerializationLevel.Partial; if (collection.Get("serializationLevel") != null) { Enum.TryParse <ExchangeRunspaceConfigurationSettings.SerializationLevel>(collection.Get("serializationLevel"), true, out serializationLevel); } string text2 = collection.Get("clientApplication"); ExchangeRunspaceConfigurationSettings.ExchangeApplication exchangeApplication = defaultApplication; if (text2 != null) { Enum.TryParse <ExchangeRunspaceConfigurationSettings.ExchangeApplication>(text2, true, out exchangeApplication); } PSLanguageMode pslanguageMode = PSLanguageMode.NoLanguage; if (exchangeApplication == ExchangeRunspaceConfigurationSettings.ExchangeApplication.EMC) { pslanguageMode = PSLanguageMode.NoLanguage; } ExchangeRunspaceConfigurationSettings.ProxyMethod proxyMethod = ExchangeRunspaceConfigurationSettings.ProxyMethod.None; if (collection.Get("proxyMethod") != null) { Enum.TryParse <ExchangeRunspaceConfigurationSettings.ProxyMethod>(collection.Get("proxyMethod"), true, out proxyMethod); } bool flag = false; if (collection.Get("proxyFullSerialization") != null) { bool.TryParse(collection.Get("proxyFullSerialization"), out flag); } bool encodeDecodeKey = true; if (collection.Get("X-EncodeDecode-Key") != null) { bool.TryParse(collection.Get("X-EncodeDecode-Key"), out encodeDecodeKey); } bool isProxy = ExchangeRunspaceConfigurationSettings.IsCalledFromProxy(collection); return(new ExchangeRunspaceConfigurationSettings(uri, exchangeApplication, text, serializationLevel, pslanguageMode, proxyMethod, flag, encodeDecodeKey, isProxy)); }
private WorkloadSettings GetWorkloadSettings(ExchangeRunspaceConfigurationSettings.ExchangeApplication application) { switch (application) { case ExchangeRunspaceConfigurationSettings.ExchangeApplication.PowerShell: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.EMC: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.ECP: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.EWS: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.ManagementShell: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.DebugUser: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.ReportingWebService: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.PswsClient: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.Office365Partner: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.Intune: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.CRM: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.ActiveMonitor: case ExchangeRunspaceConfigurationSettings.ExchangeApplication.OSP: return(new WorkloadSettings(WorkloadType.PowerShell)); case ExchangeRunspaceConfigurationSettings.ExchangeApplication.GalSync: return(new WorkloadSettings(WorkloadType.PowerShellGalSync, true)); case ExchangeRunspaceConfigurationSettings.ExchangeApplication.ForwardSync: return(new WorkloadSettings(WorkloadType.PowerShellForwardSync, true)); case ExchangeRunspaceConfigurationSettings.ExchangeApplication.BackSync: return(new WorkloadSettings(WorkloadType.PowerShellBackSync, true)); case ExchangeRunspaceConfigurationSettings.ExchangeApplication.NonInteractivePowershell: return(new WorkloadSettings(WorkloadType.PowerShell, true)); case ExchangeRunspaceConfigurationSettings.ExchangeApplication.DiscretionaryScripts: return(new WorkloadSettings(WorkloadType.PowerShellDiscretionaryWorkFlow, true)); } return(new WorkloadSettings(WorkloadType.PowerShellLowPriorityWorkFlow, true)); }
internal static void PropagateExchangePropertyContainer(ISessionState sessionState, RunspaceProxy runspace, bool propagateRBAC, bool propagateBudget, ADServerSettings adServerSettingsOverride, ExchangeRunspaceConfigurationSettings.ExchangeApplication application) { ExchangePropertyContainer propertyContainer = ExchangePropertyContainer.GetPropertyContainer(sessionState); ExchangePropertyContainer exchangePropertyContainer = new ExchangePropertyContainer(); if (propertyContainer.exchangeRunspaceConfiguration != null) { propertyContainer.exchangeRunspaceConfiguration.TryGetExecutingUserId(out exchangePropertyContainer.executingUserId); exchangePropertyContainer.executingUserOrganizationId = propertyContainer.exchangeRunspaceConfiguration.OrganizationId; if (propagateRBAC) { exchangePropertyContainer.exchangeRunspaceConfiguration = propertyContainer.exchangeRunspaceConfiguration; } exchangePropertyContainer.propagatedClientAppId = application; if (propertyContainer.budget != null && propagateBudget) { exchangePropertyContainer.budget = ExchangePropertyContainer.AcquirePowerShellBudget(propertyContainer.exchangeRunspaceConfiguration); } } else { exchangePropertyContainer.executingUserId = propertyContainer.executingUserId; exchangePropertyContainer.executingUserOrganizationId = propertyContainer.executingUserOrganizationId; } exchangePropertyContainer.logEntries = propertyContainer.logEntries; exchangePropertyContainer.logEnabled = propertyContainer.logEnabled; if (adServerSettingsOverride == null) { exchangePropertyContainer.serverSettings = propertyContainer.serverSettings; } else { exchangePropertyContainer.serverSettings = adServerSettingsOverride; } runspace.SetVariable(ExchangePropertyContainer.ExchangePropertyContainerName, exchangePropertyContainer); }
public MonadConnectionInfo(Uri server, PSCredential credentials, string shellUri, string typesFile, AuthenticationMechanism authenticationMechanism, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string clientVersion, int maxRedirectionCount, bool skipCertificateCheck) : base(server, credentials, shellUri, typesFile, authenticationMechanism, skipCertificateCheck, maxRedirectionCount) { Uri uri = server; if (serializationLevel != ExchangeRunspaceConfigurationSettings.SerializationLevel.Partial) { uri = MonadConnectionInfo.AppendUriProperty(uri, "serializationLevel".ToString(), serializationLevel.ToString()); } if (clientApplication != ExchangeRunspaceConfigurationSettings.ExchangeApplication.Unknown) { uri = MonadConnectionInfo.AppendUriProperty(uri, "clientApplication".ToString(), clientApplication.ToString()); } if (MonadConnectionInfo.exchangeClientVersion != null) { uri = MonadConnectionInfo.AppendUriProperty(uri, "ExchClientVer", MonadConnectionInfo.exchangeClientVersion); } this.serverUri = uri; this.clientApplication = clientApplication; this.serializationLevel = serializationLevel; this.clientVersion = clientVersion; }
public MonadConnectionInfo(Uri server, PSCredential credentials, string shellUri, string typesFile, AuthenticationMechanism authenticationMechanism, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string clientVersion) : this(server, credentials, shellUri, typesFile, authenticationMechanism, serializationLevel, clientApplication, clientVersion, 0, true) { }
// Token: 0x06001230 RID: 4656 RVA: 0x000392BD File Offset: 0x000374BD internal static bool IsClientApplicationMonitored(ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication) { return(!ProvisioningMonitoringConfig.excludedClientApplications.Contains(clientApplication)); }
// Token: 0x060013D1 RID: 5073 RVA: 0x0004615C File Offset: 0x0004435C internal ExchangeRunspaceConfigurationSettings(Uri connectionUri, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string tenantOrganization, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, PSLanguageMode languageMode, ExchangeRunspaceConfigurationSettings.ProxyMethod proxyMethod, bool proxyFullSerialization, bool encodeDecodeKey, bool isProxy) : this(connectionUri, clientApplication, tenantOrganization, serializationLevel, languageMode, proxyMethod, proxyFullSerialization, encodeDecodeKey, isProxy, ExchangeRunspaceConfigurationSettings.ExchangeUserType.Unknown, null) { }
// Token: 0x060013CF RID: 5071 RVA: 0x00046118 File Offset: 0x00044318 internal ExchangeRunspaceConfigurationSettings(Uri connectionUri, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string tenantOrganization, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, PSLanguageMode languageMode, ExchangeRunspaceConfigurationSettings.ProxyMethod proxyMethod) : this(connectionUri, clientApplication, tenantOrganization, serializationLevel, languageMode, proxyMethod, false, false) { }
// Token: 0x060013CD RID: 5069 RVA: 0x000460FB File Offset: 0x000442FB internal ExchangeRunspaceConfigurationSettings(ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string tenantOrganization, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel) : this(null, clientApplication, tenantOrganization, serializationLevel, PSLanguageMode.NoLanguage) { }
// Token: 0x060013F1 RID: 5105 RVA: 0x00046358 File Offset: 0x00044558 internal static ExchangeRunspaceConfigurationSettings FromRequestHeaders(string connectionString, ExchangeRunspaceConfigurationSettings.ExchangeApplication defaultApplication) { Uri uri = new Uri(connectionString, UriKind.Absolute); return(ExchangeRunspaceConfigurationSettings.CreateConfigurationSettingsFromNameValueCollection(uri, HttpContext.Current.Request.Headers, defaultApplication)); }
// Token: 0x060013F0 RID: 5104 RVA: 0x00046318 File Offset: 0x00044518 internal static ExchangeRunspaceConfigurationSettings FromUriConnectionString(string connectionString, ExchangeRunspaceConfigurationSettings.ExchangeApplication defaultApplication, out string vdirPath) { Uri uri = new Uri(connectionString, UriKind.Absolute); vdirPath = ExchangeRunspaceConfigurationSettings.GetVDirPathFromUriLocalPath(uri); if (string.IsNullOrEmpty(uri.Query)) { return(ExchangeRunspaceConfigurationSettings.GetDefaultInstance()); } NameValueCollection nameValueCollectionFromUri = LiveIdBasicAuthModule.GetNameValueCollectionFromUri(uri); return(ExchangeRunspaceConfigurationSettings.CreateConfigurationSettingsFromNameValueCollection(uri, nameValueCollectionFromUri, defaultApplication)); }