/// <summary> /// Construct an application domain for running a test package /// </summary> /// <param name="package">The TestPackage to be run</param> public AppDomain CreateDomain(TestPackage package) { // Save package for use when we unload _package = package; AppDomainSetup setup = CreateAppDomainSetup(package); string hashCode = string.Empty; if (package.Name != null) { hashCode = package.Name.GetHashCode().ToString("x") + "-"; } string domainName = "domain-" + hashCode + package.Name; log.Info("Creating application domain " + domainName); AppDomain runnerDomain = AppDomain.CreateDomain(domainName, /*evidence*/ null, setup); // Set PrincipalPolicy for the domain if called for in the package settings if (package.Settings.ContainsKey(EnginePackageSettings.PrincipalPolicy)) { PrincipalPolicy policy = (PrincipalPolicy)Enum.Parse(typeof(PrincipalPolicy), package.GetSetting(EnginePackageSettings.PrincipalPolicy, "UnauthenticatedPrincipal")); runnerDomain.SetPrincipalPolicy(policy); } return(runnerDomain); }
public override void StartService() { try { // DomainManager has a soft dependency on the SettingsService. // If it's not available, default values are used. var settings = ServiceContext.GetService <ISettings>(); if (settings != null) { var pathSetting = settings.GetSetting("Options.TestLoader.ShadowCopyPath", ""); if (pathSetting != "") { _shadowCopyPath = Environment.ExpandEnvironmentVariables(pathSetting); } _setPrincipalPolicy = settings.GetSetting("Options.TestLoader.SetPrincipalPolicy", false); _principalPolicy = settings.GetSetting("Options.TestLoader.PrincipalPolicy", PrincipalPolicy.UnauthenticatedPrincipal); } Status = ServiceStatus.Started; } catch { Status = ServiceStatus.Error; throw; } }
public void SetPrincipalPolicy(PrincipalPolicy policy) { if (IsFinalizingForUnload()) { throw new AppDomainUnloadedException(); } _principalPolicy = policy; _principal = null; }
/// <summary> /// Construct an application domain for running a test package /// </summary> /// <param name="package">The TestPackage to be run</param> public AppDomain CreateDomain(TestPackage package) { AppDomainSetup setup = CreateAppDomainSetup(package); string hashCode = string.Empty; if (package.Name != null) { hashCode = package.Name.GetHashCode().ToString("x") + "-"; } string domainName = "domain-" + hashCode + package.Name; // TODO: Make sure this is not needed before deleting // // Setup the Evidence // Evidence evidence = new Evidence(AppDomain.CurrentDomain.Evidence); //#pragma warning disable 618 // if (evidence.Count == 0) // { // Zone zone = new Zone(SecurityZone.MyComputer); // evidence.AddHost(zone); // Assembly assembly = Assembly.GetExecutingAssembly(); // Url url = new Url(assembly.CodeBase); // evidence.AddHost(url); // Hash hash = new Hash(assembly); // evidence.AddHost(hash); // } //#pragma warning restore 618 log.Info("Creating application domain " + domainName); AppDomain runnerDomain = AppDomain.CreateDomain(domainName, /*evidence*/ null, setup); // Set PrincipalPolicy for the domain if called for in the package settings if (package.Settings.ContainsKey(EnginePackageSettings.PrincipalPolicy)) { PrincipalPolicy policy = (PrincipalPolicy)Enum.Parse(typeof(PrincipalPolicy), package.GetSetting(EnginePackageSettings.PrincipalPolicy, "UnauthenticatedPrincipal")); runnerDomain.SetPrincipalPolicy(policy); } return(runnerDomain); }
/// <summary> /// Construct an application domain for running a test package /// </summary> /// <param name="package">The TestPackage to be run</param> public AppDomain CreateDomain(TestPackage package) { AppDomainSetup setup = CreateAppDomainSetup(package); string hashCode = string.Empty; if (package.Name != null) { hashCode = package.Name.GetHashCode().ToString("x") + "-"; } string domainName = "domain-" + hashCode + package.Name; // Setup the Evidence Evidence evidence = new Evidence(AppDomain.CurrentDomain.Evidence); #pragma warning disable CS0618 // Type or member is obsolete if (evidence.Count == 0) #pragma warning restore CS0618 // Type or member is obsolete { Zone zone = new Zone(SecurityZone.MyComputer); evidence.AddHostEvidence(zone); Assembly assembly = Assembly.GetExecutingAssembly(); Url url = new Url(assembly.CodeBase); evidence.AddHostEvidence(url); Hash hash = new Hash(assembly); evidence.AddHostEvidence(hash); } log.Info("Creating AppDomain " + domainName); AppDomain runnerDomain = AppDomain.CreateDomain(domainName, evidence, setup); // Set PrincipalPolicy for the domain if called for in the package settings if (package.Settings.ContainsKey(EnginePackageSettings.PrincipalPolicy)) { PrincipalPolicy policy = (PrincipalPolicy)Enum.Parse(typeof(PrincipalPolicy), package.GetSetting(EnginePackageSettings.PrincipalPolicy, "UnauthenticatedPrincipal")); runnerDomain.SetPrincipalPolicy(policy); } return(runnerDomain); }
public void SetPrincipalPolicy(PrincipalPolicy policy) { _PrincipalPolicy = policy; }
public void SetPrincipalPolicy (PrincipalPolicy policy) { if (IsFinalizingForUnload ()) throw new AppDomainUnloadedException (); _principalPolicy = policy; _principal = null; }
public void SetPrincipalPolicy(PrincipalPolicy policy) { _principalPolicy = policy; }
public void SetPrincipalPolicy(PrincipalPolicy policy) { }
public void SetPrincipalPolicy (PrincipalPolicy policy) { if (IsFinalizingForUnload ()) throw new AppDomainUnloadedException (); #if MOBILE _principalPolicy = (int)policy; #else _principalPolicy = policy; #endif _principal = null; }
// Set the policy for principals. public void SetPrincipalPolicy(PrincipalPolicy policy) { // Nothing to do here: we don't use such policies. }
public override void StartService() { try { // DomainManager has a soft dependency on the SettingsService. // If it's not available, default values are used. var settings = ServiceContext.GetService<ISettings>(); if (settings != null) { var pathSetting = settings.GetSetting("Options.TestLoader.ShadowCopyPath", ""); if (pathSetting != "") _shadowCopyPath = Environment.ExpandEnvironmentVariables(pathSetting); _setPrincipalPolicy = settings.GetSetting("Options.TestLoader.SetPrincipalPolicy", false); _principalPolicy = settings.GetSetting("Options.TestLoader.PrincipalPolicy", PrincipalPolicy.UnauthenticatedPrincipal); } Status = ServiceStatus.Started; } catch { Status = ServiceStatus.Error; throw; } }