Index: stable/HeuristicLab.Clients.Hive.Administrator/3.3/HiveRoles.cs
===================================================================
--- stable/HeuristicLab.Clients.Hive.Administrator/3.3/HiveRoles.cs	(revision 12962)
+++ stable/HeuristicLab.Clients.Hive.Administrator/3.3/HiveRoles.cs	(revision 12963)
@@ -28,5 +28,4 @@
     public const string User = "Hive User";
     public const string Slave = "Hive Slave";
-    public const string IsAllowedPrivileged = "Hive IsAllowedPrivileged";
 
     public static bool CheckAdminUserPermissions() {
Index: stable/HeuristicLab.Clients.Hive.JobManager/3.3/Views/RefreshableHiveJobView.Designer.cs
===================================================================
--- stable/HeuristicLab.Clients.Hive.JobManager/3.3/Views/RefreshableHiveJobView.Designer.cs	(revision 12962)
+++ stable/HeuristicLab.Clients.Hive.JobManager/3.3/Views/RefreshableHiveJobView.Designer.cs	(revision 12963)
@@ -70,5 +70,4 @@
       this.toolTip = new System.Windows.Forms.ToolTip(this.components);
       this.refreshButton = new System.Windows.Forms.Button();
-      this.isPrivilegedCheckBox = new System.Windows.Forms.CheckBox();
       this.UnloadButton = new System.Windows.Forms.Button();
       this.refreshAutomaticallyCheckBox = new System.Windows.Forms.CheckBox();
@@ -332,5 +331,5 @@
       this.resourceNamesTextBox.Location = new System.Drawing.Point(70, 52);
       this.resourceNamesTextBox.Name = "resourceNamesTextBox";
-      this.resourceNamesTextBox.Size = new System.Drawing.Size(385, 20);
+      this.resourceNamesTextBox.Size = new System.Drawing.Size(471, 20);
       this.resourceNamesTextBox.TabIndex = 2;
       this.resourceNamesTextBox.Validated += new System.EventHandler(this.resourceNamesTextBox_Validated);
@@ -365,17 +364,4 @@
       this.refreshButton.UseVisualStyleBackColor = true;
       this.refreshButton.Click += new System.EventHandler(this.refreshButton_Click);
-      // 
-      // isPrivilegedCheckBox
-      // 
-      this.isPrivilegedCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-      this.isPrivilegedCheckBox.AutoSize = true;
-      this.isPrivilegedCheckBox.Location = new System.Drawing.Point(491, 54);
-      this.isPrivilegedCheckBox.Name = "isPrivilegedCheckBox";
-      this.isPrivilegedCheckBox.Size = new System.Drawing.Size(72, 17);
-      this.isPrivilegedCheckBox.TabIndex = 3;
-      this.isPrivilegedCheckBox.Text = "Privileged";
-      this.toolTip.SetToolTip(this.isPrivilegedCheckBox, "If checked, the task will be executed in a privileged sandbox on the slave.");
-      this.isPrivilegedCheckBox.UseVisualStyleBackColor = true;
-      this.isPrivilegedCheckBox.CheckedChanged += new System.EventHandler(this.isPrivilegedCheckBox_CheckChanged);
       // 
       // UnloadButton
@@ -475,5 +461,5 @@
       this.searchButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
       this.searchButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Zoom;
-      this.searchButton.Location = new System.Drawing.Point(461, 50);
+      this.searchButton.Location = new System.Drawing.Point(547, 50);
       this.searchButton.Name = "searchButton";
       this.searchButton.Size = new System.Drawing.Size(24, 24);
@@ -487,5 +473,4 @@
       this.Controls.Add(this.UnloadButton);
       this.Controls.Add(this.searchButton);
-      this.Controls.Add(this.isPrivilegedCheckBox);
       this.Controls.Add(this.infoGroupBox);
       this.Controls.Add(this.refreshAutomaticallyCheckBox);
@@ -542,5 +527,4 @@
     private System.Windows.Forms.Label calculatingLabel;
     private System.Windows.Forms.Label jobsLabel;
-    private System.Windows.Forms.CheckBox isPrivilegedCheckBox;
     private System.Windows.Forms.TabPage stateTabPage;
     private HeuristicLab.MainForm.WindowsForms.ViewHost stateLogViewHost;
Index: stable/HeuristicLab.Clients.Hive.JobManager/3.3/Views/RefreshableHiveJobView.cs
===================================================================
--- stable/HeuristicLab.Clients.Hive.JobManager/3.3/Views/RefreshableHiveJobView.cs	(revision 12962)
+++ stable/HeuristicLab.Clients.Hive.JobManager/3.3/Views/RefreshableHiveJobView.cs	(revision 12963)
@@ -119,5 +119,4 @@
           executionTimeTextBox.Text = string.Empty;
           resourceNamesTextBox.Text = string.Empty;
-          isPrivilegedCheckBox.Checked = false;
           refreshAutomaticallyCheckBox.Checked = false;
           lock (runCollectionViewLocker) {
@@ -132,5 +131,4 @@
           executionTimeTextBox.Text = Content.ExecutionTime.ToString();
           resourceNamesTextBox.Text = Content.Job.ResourceNames;
-          isPrivilegedCheckBox.Checked = Content.Job.IsPrivileged;
           refreshAutomaticallyCheckBox.Checked = Content.RefreshAutomatically;
           logView.Content = Content.Log;
@@ -163,5 +161,4 @@
       searchButton.Enabled = !Locked;
       jobsTreeView.Enabled = !Locked;
-      isPrivilegedCheckBox.Enabled = !Locked;
       refreshAutomaticallyCheckBox.Enabled = !Locked;
       refreshButton.Enabled = !Locked;
@@ -191,5 +188,4 @@
           this.jobsTreeView.ReadOnly = !Content.IsControllable || Content.ExecutionState != ExecutionState.Prepared || alreadyUploaded || Content.IsProgressing;
 
-          this.isPrivilegedCheckBox.Enabled = HiveClient.Instance.IsAllowedPrivileged && Content.IsControllable && !(Content.ExecutionState != ExecutionState.Prepared || alreadyUploaded) && !Content.IsProgressing;
           this.refreshAutomaticallyCheckBox.Enabled = Content.IsControllable && alreadyUploaded && jobsLoaded && Content.ExecutionState == ExecutionState.Started && !Content.IsProgressing;
           this.refreshButton.Enabled = Content.IsDownloadable && alreadyUploaded && !Content.IsProgressing;
@@ -279,9 +275,4 @@
       lock (runCollectionViewLocker) {
         runCollectionViewHost.Content = GetAllRunsFromJob(Content);
-      }
-      if (InvokeRequired) {
-        Invoke(new Action(() => { isPrivilegedCheckBox.Checked = Content.Job.IsPrivileged; }));
-      } else {
-        isPrivilegedCheckBox.Checked = Content.Job.IsPrivileged;
       }
     }
@@ -423,8 +414,4 @@
     }
 
-    private void isPrivilegedCheckBox_CheckChanged(object sender, EventArgs e) {
-      if (Content != null && !SuppressEvents) Content.Job.IsPrivileged = isPrivilegedCheckBox.Checked;
-    }
-
     private void refreshButton_Click(object sender, EventArgs e) {
       var invoker = new Action<RefreshableJob>(HiveClient.LoadJob);
Index: stable/HeuristicLab.Clients.Hive.Slave/3.3/SlaveTask.cs
===================================================================
--- stable/HeuristicLab.Clients.Hive.Slave/3.3/SlaveTask.cs	(revision 12962)
+++ stable/HeuristicLab.Clients.Hive.Slave/3.3/SlaveTask.cs	(revision 12963)
@@ -105,9 +105,5 @@
 
     private AppDomain CreateAppDomain(Task task, String pluginDir, string configFileName) {
-      if (task.IsPrivileged) {
-        appDomain = SandboxManager.CreateAndInitPrivilegedSandbox(task.Id.ToString(), pluginDir, Path.Combine(pluginDir, configFileName));
-      } else {
-        appDomain = SandboxManager.CreateAndInitSandbox(task.Id.ToString(), pluginDir, Path.Combine(pluginDir, configFileName));
-      }
+      appDomain = SandboxManager.CreateAndInitSandbox(task.Id.ToString(), pluginDir, Path.Combine(pluginDir, configFileName));
       appDomain.UnhandledException += new UnhandledExceptionEventHandler(AppDomain_UnhandledException);
 
Index: stable/HeuristicLab.Clients.Hive/3.3/HiveClient.cs
===================================================================
--- stable/HeuristicLab.Clients.Hive/3.3/HiveClient.cs	(revision 12962)
+++ stable/HeuristicLab.Clients.Hive/3.3/HiveClient.cs	(revision 12963)
@@ -68,10 +68,4 @@
       set { alreadyUploadedPlugins = value; }
     }
-
-    private bool isAllowedPrivileged;
-    public bool IsAllowedPrivileged {
-      get { return isAllowedPrivileged; }
-      set { isAllowedPrivileged = value; }
-    }
     #endregion
 
@@ -99,6 +93,4 @@
 
       try {
-        IsAllowedPrivileged = HiveServiceLocator.Instance.CallHiveService((s) => s.IsAllowedPrivileged());
-
         jobs = new HiveItemCollection<RefreshableJob>();
         var jobsLoaded = HiveServiceLocator.Instance.CallHiveService<IEnumerable<Job>>(s => s.GetJobs());
@@ -275,7 +267,5 @@
         refreshableJob.Progress.Status = "Uploading Job...";
         refreshableJob.Job.Id = HiveServiceLocator.Instance.CallHiveService((s) => s.AddJob(refreshableJob.Job));
-        bool isPrivileged = refreshableJob.Job.IsPrivileged;
         refreshableJob.Job = HiveServiceLocator.Instance.CallHiveService((s) => s.GetJob(refreshableJob.Job.Id)); // update owner and permissions
-        refreshableJob.Job.IsPrivileged = isPrivileged;
         cancellationToken.ThrowIfCancellationRequested();
 
@@ -298,5 +288,5 @@
         foreach (HiveTask hiveTask in refreshableJob.HiveTasks) {
           var task = TS.Task.Factory.StartNew((hj) => {
-            UploadTaskWithChildren(refreshableJob.Progress, (HiveTask)hj, null, resourceIds, jobCount, totalJobCount, configFilePlugin.Id, refreshableJob.Job.Id, refreshableJob.Log, refreshableJob.Job.IsPrivileged, cancellationToken);
+            UploadTaskWithChildren(refreshableJob.Progress, (HiveTask)hj, null, resourceIds, jobCount, totalJobCount, configFilePlugin.Id, refreshableJob.Job.Id, refreshableJob.Log, cancellationToken);
           }, hiveTask);
           task.ContinueWith((x) => refreshableJob.Log.LogException(x.Exception), TaskContinuationOptions.OnlyOnFaulted);
@@ -343,5 +333,5 @@
     /// </summary>
     /// <param name="parentHiveTask">shall be null if its the root task</param>
-    private void UploadTaskWithChildren(IProgress progress, HiveTask hiveTask, HiveTask parentHiveTask, IEnumerable<Guid> groups, int[] taskCount, int totalJobCount, Guid configPluginId, Guid jobId, ILog log, bool isPrivileged, CancellationToken cancellationToken) {
+    private void UploadTaskWithChildren(IProgress progress, HiveTask hiveTask, HiveTask parentHiveTask, IEnumerable<Guid> groups, int[] taskCount, int totalJobCount, Guid configPluginId, Guid jobId, ILog log, CancellationToken cancellationToken) {
       taskUploadSemaphore.WaitOne();
       bool semaphoreReleased = false;
@@ -375,5 +365,4 @@
         hiveTask.Task.PluginsNeededIds.Add(configPluginId);
         hiveTask.Task.JobId = jobId;
-        hiveTask.Task.IsPrivileged = isPrivileged;
 
         log.LogMessage(string.Format("Uploading task ({0} kb, {1} objects)", taskData.Data.Count() / 1024, hiveTask.ItemTask.GetObjectGraphObjects().Count()));
@@ -398,5 +387,5 @@
           var task = TS.Task.Factory.StartNew((tuple) => {
             var arguments = (Tuple<HiveTask, HiveTask>)tuple;
-            UploadTaskWithChildren(progress, arguments.Item1, arguments.Item2, groups, taskCount, totalJobCount, configPluginId, jobId, log, isPrivileged, cancellationToken);
+            UploadTaskWithChildren(progress, arguments.Item1, arguments.Item2, groups, taskCount, totalJobCount, configPluginId, jobId, log, cancellationToken);
           }, new Tuple<HiveTask, HiveTask>(child, hiveTask));
           task.ContinueWith((x) => log.LogException(x.Exception), TaskContinuationOptions.OnlyOnFaulted);
@@ -442,5 +431,4 @@
         IDictionary<Guid, HiveTask> allHiveTasks = downloader.Results;
         var parents = allHiveTasks.Values.Where(x => !x.Task.ParentTaskId.HasValue);
-        refreshableJob.Job.IsPrivileged = allHiveTasks.Any(x => x.Value.Task.IsPrivileged);
 
         refreshableJob.Progress.Status = "Downloading/deserializing complete. Displaying tasks...";
Index: stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs
===================================================================
--- stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs	(revision 12962)
+++ stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs	(revision 12963)
@@ -351,7 +351,4 @@
         
         [System.Runtime.Serialization.OptionalFieldAttribute()]
-        private bool IsPrivilegedField;
-        
-        [System.Runtime.Serialization.OptionalFieldAttribute()]
         private System.Guid JobIdField;
         
@@ -415,21 +412,4 @@
                     this.IsParentTaskField = value;
                     this.RaisePropertyChanged("IsParentTask");
-                }
-            }
-        }
-        
-        [System.Runtime.Serialization.DataMemberAttribute()]
-        public bool IsPrivileged
-        {
-            get
-            {
-                return this.IsPrivilegedField;
-            }
-            set
-            {
-                if ((this.IsPrivilegedField.Equals(value) != true))
-                {
-                    this.IsPrivilegedField = value;
-                    this.RaisePropertyChanged("IsPrivileged");
                 }
             }
@@ -2553,7 +2533,4 @@
         System.Collections.Generic.List<HeuristicLab.Clients.Hive.JobPermission> GetJobPermissions(System.Guid jobId);
         
-        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/IsAllowedPrivileged", ReplyAction="http://tempuri.org/IHiveService/IsAllowedPrivilegedResponse")]
-        bool IsAllowedPrivileged();
-        
         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/Hello", ReplyAction="http://tempuri.org/IHiveService/HelloResponse")]
         void Hello(HeuristicLab.Clients.Hive.Slave slave);
@@ -2882,9 +2859,4 @@
         }
         
-        public bool IsAllowedPrivileged()
-        {
-            return base.Channel.IsAllowedPrivileged();
-        }
-        
         public void Hello(HeuristicLab.Clients.Hive.Slave slave)
         {
Index: stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/Job.cs
===================================================================
--- stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/Job.cs	(revision 12962)
+++ stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/Job.cs	(revision 12963)
@@ -27,10 +27,4 @@
   public partial class Job : IDeepCloneable, IContent {
 
-    private bool isPrivileged;
-    public bool IsPrivileged {
-      get { return isPrivileged; }
-      set { isPrivileged = value; }
-    }
-
     #region Constructors and Cloning
     public Job() {
@@ -48,5 +42,4 @@
       this.Description = original.Description;
       this.Id = original.Id;
-      this.IsPrivileged = original.IsPrivileged;
       this.Permission = original.Permission;
     }
Index: stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/Task.cs
===================================================================
--- stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/Task.cs	(revision 12962)
+++ stable/HeuristicLab.Clients.Hive/3.3/ServiceClients/Task.cs	(revision 12963)
@@ -43,5 +43,4 @@
       this.FinishWhenChildJobsFinished = original.FinishWhenChildJobsFinished;
       this.JobId = original.JobId;
-      this.IsPrivileged = original.IsPrivileged;
     }
 
Index: stable/HeuristicLab.PluginInfrastructure/3.3/Sandboxing/SandboxManager.cs
===================================================================
--- stable/HeuristicLab.PluginInfrastructure/3.3/Sandboxing/SandboxManager.cs	(revision 12962)
+++ stable/HeuristicLab.PluginInfrastructure/3.3/Sandboxing/SandboxManager.cs	(revision 12963)
@@ -25,14 +25,11 @@
 using System.Security.Permissions;
 using HeuristicLab.PluginInfrastructure.Manager;
-using System.IO;
 
 namespace HeuristicLab.PluginInfrastructure.Sandboxing {
   public static class SandboxManager {
-
     /// <summary>
-    /// Creates an privileged sandbox, meaning that the executed code is fully trusted and permissions are not restricted.
-    /// This method is a fall back for trusted users in HeuristicLab Hive. 
+    /// Returns a new AppDomain with loaded assemblies/plugins from applicationBase
     /// </summary>    
-    public static AppDomain CreateAndInitPrivilegedSandbox(string appDomainName, string applicationBase, string configFilePath) {
+    public static AppDomain CreateAndInitSandbox(string appDomainName, string applicationBase, string configFilePath) {
       PermissionSet pSet;
       pSet = new PermissionSet(PermissionState.Unrestricted);
@@ -53,45 +50,4 @@
       return applicationDomain;
     }
-
-    /// <summary>
-    /// Creates a sandbox with restricted permissions.
-    /// Code that is executed in such an AppDomain is partially-trusted and is not allowed to call or override
-    /// methods that require full trust. 
-    /// </summary>    
-    public static AppDomain CreateAndInitSandbox(string appDomainName, string applicationBase, string configFilePath) {
-      PermissionSet pSet;
-
-      pSet = new PermissionSet(PermissionState.None);
-      pSet.AddPermission(new SecurityPermission(PermissionState.None));
-      pSet.AddPermission(new SecurityPermission(SecurityPermissionFlag.Execution));
-      pSet.AddPermission(new SecurityPermission(SecurityPermissionFlag.Infrastructure));
-      pSet.AddPermission(new SecurityPermission(SecurityPermissionFlag.UnmanagedCode));
-      pSet.AddPermission(new SecurityPermission(SecurityPermissionFlag.SerializationFormatter));
-      //needed for HeuristicLab.Persistence, see DynamicMethod Constructor (String, Type, array<Type []()>[], Type, Boolean)
-      pSet.AddPermission(new SecurityPermission(SecurityPermissionFlag.ControlEvidence));
-      pSet.AddPermission(new ReflectionPermission(PermissionState.Unrestricted));
-
-      FileIOPermission ioPerm = new FileIOPermission(PermissionState.None);
-      //allow path discovery for system drive, needed by HeuristicLab.Persistence: Serializer.BuildTypeCache() -> Assembly.CodeBase
-      ioPerm.AddPathList(FileIOPermissionAccess.PathDiscovery, Path.GetPathRoot(Path.GetFullPath(Environment.SystemDirectory)));
-      //allow full access to the appdomain's base directory
-      ioPerm.AddPathList(FileIOPermissionAccess.AllAccess, applicationBase);
-      pSet.AddPermission(ioPerm);
-
-      AppDomainSetup setup = new AppDomainSetup();
-      setup.PrivateBinPath = applicationBase;
-      setup.ApplicationBase = applicationBase;
-      setup.ConfigurationFile = configFilePath;
-
-      Type applicationManagerType = typeof(SandboxApplicationManager);
-      AppDomain applicationDomain = AppDomain.CreateDomain(appDomainName, null, setup, pSet, null);
-      SandboxApplicationManager applicationManager = (SandboxApplicationManager)applicationDomain.CreateInstanceAndUnwrap(applicationManagerType.Assembly.FullName, applicationManagerType.FullName, true, BindingFlags.NonPublic | BindingFlags.Instance, null, null, null, null);
-
-      PluginManager pm = new PluginManager(applicationBase);
-      pm.DiscoverAndCheckPlugins();
-      applicationManager.PrepareApplicationDomain(pm.Applications, pm.Plugins);
-
-      return applicationDomain;
-    }
   }
 }
Index: stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.dbml
===================================================================
--- stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.dbml	(revision 12962)
+++ stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.dbml	(revision 12963)
@@ -76,5 +76,4 @@
       <Column Name="Command" Type="global::HeuristicLab.Services.Hive.DataAccess.Command?" DbType="VarChar(30)" CanBeNull="true" />
       <Column Name="JobId" Storage="_HiveExperimentId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
-      <Column Name="IsPrivileged" Type="System.Boolean" DbType="Bit" CanBeNull="false" />
       <Association Name="Task_AssignedResource" Member="AssignedResources" ThisKey="TaskId" OtherKey="TaskId" Type="AssignedResource" />
       <Association Name="Task_RequiredPlugin" Member="RequiredPlugins" ThisKey="TaskId" OtherKey="TaskId" Type="RequiredPlugin" />
Index: stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.dbml.layout
===================================================================
--- stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.dbml.layout	(revision 12962)
+++ stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.dbml.layout	(revision 12963)
@@ -27,8 +27,8 @@
       </nestedChildShapes>
     </classShape>
-    <classShape Id="695bfc39-59f3-4e60-8644-f847964bf62c" absoluteBounds="6.5, 1, 2, 3.3093082682291666">
+    <classShape Id="695bfc39-59f3-4e60-8644-f847964bf62c" absoluteBounds="6.5, 1, 2, 3.1170068359374996">
       <DataClassMoniker Name="/HiveDataContext/Task" />
       <nestedChildShapes>
-        <elementListCompartment Id="a6a30e11-03d1-4869-82e6-b733f4ef9974" absoluteBounds="6.5150000000000006, 1.46, 1.9700000000000002, 2.7493082682291665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+        <elementListCompartment Id="a6a30e11-03d1-4869-82e6-b733f4ef9974" absoluteBounds="6.5150000000000006, 1.46, 1.9700000000000002, 2.5570068359375" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
       </nestedChildShapes>
     </classShape>
@@ -141,5 +141,5 @@
       </nodes>
     </associationConnector>
-    <associationConnector edgePoints="[(8.0192961430407 : 3.90397379557292); (8.0192961430407 : 5.04807657877604); (8.875 : 5.04807657877604)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+    <associationConnector edgePoints="[(8.5 : 4.1170068359375); (8.875 : 4.5)]" fixedFrom="NotFixed" fixedTo="NotFixed">
       <AssociationMoniker Name="/HiveDataContext/Task/Task_AssignedResource" />
       <nodes>
@@ -148,5 +148,5 @@
       </nodes>
     </associationConnector>
-    <associationConnector edgePoints="[(7.20145120722822 : 3.90397379557292); (7.20145120722822 : 5.875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+    <associationConnector edgePoints="[(7.4687475 : 4.1170068359375); (7.4687475 : 5.875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
       <AssociationMoniker Name="/HiveDataContext/Task/Task_RequiredPlugin" />
       <nodes>
@@ -176,5 +176,5 @@
       </nodes>
     </associationConnector>
-    <associationConnector edgePoints="[(6.125 : 3.46715413411458); (6.5 : 3.46715413411458)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+    <associationConnector edgePoints="[(6.125 : 3.37100341796875); (6.5 : 3.37100341796875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
       <AssociationMoniker Name="/HiveDataContext/Job/Job_Task" />
       <nodes>
Index: stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.designer.cs
===================================================================
--- stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.designer.cs	(revision 12962)
+++ stable/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.designer.cs	(revision 12963)
@@ -1620,6 +1620,4 @@
 		private System.Guid _HiveExperimentId;
 		
-		private bool _IsPrivileged;
-		
 		private EntitySet<AssignedResource> _AssignedResources;
 		
@@ -1664,6 +1662,4 @@
     partial void OnJobIdChanging(System.Guid value);
     partial void OnJobIdChanged();
-    partial void OnIsPrivilegedChanging(bool value);
-    partial void OnIsPrivilegedChanged();
     #endregion
 		
@@ -1924,24 +1920,4 @@
 					this.SendPropertyChanged("JobId");
 					this.OnJobIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsPrivileged", DbType="Bit")]
-		public bool IsPrivileged
-		{
-			get
-			{
-				return this._IsPrivileged;
-			}
-			set
-			{
-				if ((this._IsPrivileged != value))
-				{
-					this.OnIsPrivilegedChanging(value);
-					this.SendPropertyChanging();
-					this._IsPrivileged = value;
-					this.SendPropertyChanged("IsPrivileged");
-					this.OnIsPrivilegedChanged();
 				}
 			}
Index: stable/HeuristicLab.Services.Hive.DataAccess/3.3/SQL Scripts/Initialize Hive Database.sql
===================================================================
--- stable/HeuristicLab.Services.Hive.DataAccess/3.3/SQL Scripts/Initialize Hive Database.sql	(revision 12962)
+++ stable/HeuristicLab.Services.Hive.DataAccess/3.3/SQL Scripts/Initialize Hive Database.sql	(revision 12963)
@@ -86,5 +86,4 @@
   [Command] VarChar(30),
   [JobId] UniqueIdentifier NOT NULL,
-  [IsPrivileged] Bit NOT NULL,
   CONSTRAINT [PK_dbo.Task] PRIMARY KEY ([TaskId])
   )
Index: stable/HeuristicLab.Services.Hive.DataAccess/3.3/SQL Scripts/Prepare Hive Database.sql
===================================================================
--- stable/HeuristicLab.Services.Hive.DataAccess/3.3/SQL Scripts/Prepare Hive Database.sql	(revision 12962)
+++ stable/HeuristicLab.Services.Hive.DataAccess/3.3/SQL Scripts/Prepare Hive Database.sql	(revision 12963)
@@ -113,5 +113,5 @@
 CREATE NONCLUSTERED INDEX [TaskJobIdIndex]
 ON [dbo].[Task] ([JobId])
-INCLUDE ([TaskId],[TaskState],[ExecutionTimeMs],[LastHeartbeat],[ParentTaskId],[Priority],[CoresNeeded],[MemoryNeeded],[IsParentTask],[FinishWhenChildJobsFinished],[Command],[IsPrivileged])
+INCLUDE ([TaskId],[TaskState],[ExecutionTimeMs],[LastHeartbeat],[ParentTaskId],[Priority],[CoresNeeded],[MemoryNeeded],[IsParentTask],[FinishWhenChildJobsFinished],[Command])
 GO
 
@@ -119,5 +119,5 @@
 CREATE NONCLUSTERED INDEX [TaskGetWaitingTasksIndex]
 ON [dbo].[Task] ([TaskState],[IsParentTask],[FinishWhenChildJobsFinished],[CoresNeeded],[MemoryNeeded])
-INCLUDE ([TaskId],[ExecutionTimeMs],[LastHeartbeat],[ParentTaskId],[Priority],[Command],[JobId],[IsPrivileged])
+INCLUDE ([TaskId],[ExecutionTimeMs],[LastHeartbeat],[ParentTaskId],[Priority],[Command],[JobId])
 GO
 
Index: stable/HeuristicLab.Services.Hive/3.3/Converter.cs
===================================================================
--- stable/HeuristicLab.Services.Hive/3.3/Converter.cs	(revision 12962)
+++ stable/HeuristicLab.Services.Hive/3.3/Converter.cs	(revision 12963)
@@ -44,8 +44,8 @@
         Command = source.Command.ToDto(),
         JobId = source.JobId,
-        IsPrivileged = source.IsPrivileged,
         PluginsNeededIds = source.RequiredPlugins.Select(x => x.PluginId).ToList(),
         StateLog = source.StateLogs.Select(x => x.ToDto()).OrderBy(x => x.DateTime).ToList(),
-        LastTaskDataUpdate = source.JobData == null ? DateTime.MinValue : source.JobData.LastUpdate
+        LastTaskDataUpdate = source.JobData == null ? DateTime.MinValue : source.JobData.LastUpdate,
+        IsPrivileged = true
       };
     }
@@ -72,5 +72,4 @@
       target.Command = source.Command.ToEntity();
       target.JobId = source.JobId;
-      target.IsPrivileged = source.IsPrivileged;
       var ids = target.RequiredPlugins.Select(x => x.PluginId);
       target.RequiredPlugins.AddRange(source.PluginsNeededIds
Index: stable/HeuristicLab.Services.Hive/3.3/DataTransfer/Task.cs
===================================================================
--- stable/HeuristicLab.Services.Hive/3.3/DataTransfer/Task.cs	(revision 12962)
+++ stable/HeuristicLab.Services.Hive/3.3/DataTransfer/Task.cs	(revision 12963)
@@ -44,9 +44,13 @@
     [DataMember]
     public Guid JobId { get; set; }
+    // BackwardsCompatibility3.3
+    #region Backwards compatible code, remove with 3.4
     [DataMember]
     public bool IsPrivileged { get; set; }
+    #endregion
 
     public Task() {
-      this.PluginsNeededIds = new List<Guid>();
+      PluginsNeededIds = new List<Guid>();
+      IsPrivileged = true;
     }
   }
Index: stable/HeuristicLab.Services.Hive/3.3/HiveRoles.cs
===================================================================
--- stable/HeuristicLab.Services.Hive/3.3/HiveRoles.cs	(revision 12962)
+++ stable/HeuristicLab.Services.Hive/3.3/HiveRoles.cs	(revision 12963)
@@ -25,5 +25,4 @@
     public const string Slave = "Hive Slave";
     public const string Client = "Hive User";
-    public const string IsAllowedPrivileged = "Hive IsAllowedPrivileged";
   }
 }
Index: stable/HeuristicLab.Services.Hive/3.3/HiveService.cs
===================================================================
--- stable/HeuristicLab.Services.Hive/3.3/HiveService.cs	(revision 12962)
+++ stable/HeuristicLab.Services.Hive/3.3/HiveService.cs	(revision 12963)
@@ -469,8 +469,10 @@
     }
 
+    // BackwardsCompatibility3.3
+    #region Backwards compatible code, remove with 3.4
     public bool IsAllowedPrivileged() {
-      RoleVerifier.AuthenticateForAnyRole(HiveRoles.Administrator, HiveRoles.Client);
-      return RoleVerifier.IsInRole(HiveRoles.IsAllowedPrivileged);
-    }
+      return true;
+    }
+    #endregion
     #endregion
 
Index: stable/HeuristicLab.Services.Hive/3.3/ServiceContracts/IHiveService.cs
===================================================================
--- stable/HeuristicLab.Services.Hive/3.3/ServiceContracts/IHiveService.cs	(revision 12962)
+++ stable/HeuristicLab.Services.Hive/3.3/ServiceContracts/IHiveService.cs	(revision 12963)
@@ -97,6 +97,9 @@
     IEnumerable<JobPermission> GetJobPermissions(Guid jobId);
 
+    // BackwardsCompatibility3.3
+    #region Backwards compatible code, remove with 3.4
     [OperationContract]
     bool IsAllowedPrivileged(); // current user may execute privileged task
+    #endregion
     #endregion
 
