Thanks @Marek, your suggestion got worked out. check DeviceEditor control (sitecore\shell\Applications\Layouts\DeviceEditor\DeviceEditor.xml) change CodeBeside to your custom class inheriting from the original Sitecore. Shell.Applications.Layouts.DeviceEditor.DeviceEditorForm overwrite OnLoad method to hide PlaceholdersTab from the DeviceEditor.xml. Here is the custom logic to restrict the access to specific role: public class DeviceEditorForm : Sitecore.Shell.Applications.Layouts.DeviceEditor.DeviceEditorForm { protected override void OnLoad(EventArgs e) { Assert.ArgumentNotNull(e, "e"); base.OnLoad(e); if (!Context.ClientPage.IsEvent && Sitecore.Context.User.IsInRole(ContentAuthor)) { Layout.Visible = false; Placeholders.Visible = false; } } }