How do I find what permission my security role is missing from error message?

book

Article ID: 170964

calendar_today

Updated On:

Products

Management Platform (Formerly known as Notification Server)

Issue/Introduction

​While trying to access Software Management Policy with limited Altiris user account, the page errors out. 

 

HTTP Request failed:
 /Altiris/SoftwareManagementSolution/ManagedDelivery/TaskDetails.aspx?ItemGuid=93578573-d178-444a-80b4-cd567bd2a591
The caller 'AltirisJava' does not have permission bf3778ac-5e4c-40ce-85a9-3488fb20128f on the specified item 8be9d7aa-097f-4a91-bfae-c906fb1ce3cd
   [Altiris.NS.Exceptions.AeXSecurityException @ Altiris.NS]
   at Altiris.NS.Security.ItemPermission.Demand(Guid entity, Guid permission, Boolean throwIfNotGranted)
   at Altiris.Resource.ResourceDataTable.LoadData(Boolean onlySchema)
   at Altiris.Resource.ResourceDataClass.GetResourceTable(Guid resourceGuid, Boolean load)
   at Altiris.Resource.ResourceDataClass.GetResourceTable(Guid resourceGuid)
   at Altiris.Resource.ResourceDataTableCollection.get_Item(String strName)
   at Altiris.SoftwareManagement.Utilities.DataclassHelper.GetSingleDataRow(ResourceItem res, String tableName)
   at Altiris.SoftwareManagement.Utilities.DataclassHelper.GetStringColumn(ResourceItem res, String tableName, String columnName)
   at Altiris.SoftwareManagement.Resources.SoftwareComponentResource.get_DisplayImageUrl()
   at Altiris.SoftwareManagementSolution.SoftwareDelivery.ManagedDeliveryPolicy.get_PublishingDisplayImageUrl()
   at Altiris.SoftwareManagementSolution.Controls.UserPortal.ctrlMDPublishing.ShowDisplayIcon()
   at Altiris.SoftwareManagementSolution.Controls.UserPortal.ctrlMDPublishing.LoadUI()
   at Altiris.SoftwareManagementSolution.Controls.UserPortal.ctrlMDPublishing.OnLoad(EventArgs e)
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Exception logged from: 
   at Altiris.NS.UI.AltirisWebApplication.ReportApplicationError(System.Web.HttpContext)
   at Altiris.NS.UI.AltirisWebApplication.Application_Error(Object, EventArgs)
   at EventHandler.Invoke(Object, EventArgs)
   at System.Web.HttpApplication.RaiseOnError()
   at System.Web.HttpApplication+PipelineStepManager.ResumeSteps(Exception)
   at System.Web.HttpApplication.BeginProcessRequestNotification(System.Web.HttpContext, AsyncCallback)
   at System.Web.HttpRuntime.ProcessRequestNotificationPrivate(System.Web.Hosting.IIS7WorkerRequest, System.Web.HttpContext)
   at System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(IntPtr, IntPtr, IntPtr, Int32)
   at System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(IntPtr, IntPtr, IntPtr, Int32)
   at System.Web.Hosting.UnsafeIISMethods.MgdIndicateCompletion(IntPtr, System.Web.RequestNotificationStatus&)
   at System.Web.Hosting.UnsafeIISMethods.MgdIndicateCompletion(IntPtr, System.Web.RequestNotificationStatus&)
   at System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(IntPtr, IntPtr, IntPtr, Int32)
   at System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(IntPtr, IntPtr, IntPtr, Int32)

User [Domain\User], Auth [AccountName], AppDomain [/LM/W3SVC/1/ROOT/Altiris/SoftwareManagementSolution-6-131622735692261487]

HTTP [GET]: https://SMPName/Altiris/SoftwareManagementSolution/ManagedDelivery/TaskDetails.aspx?ItemGuid=93578573-d178-444a-80b4-cd567bd2a591
 ip: [x.x.x.x.]; languages: [en-US];
 response: [200 OK]; x-smp-nsversion: [8.1.4528.0];

 

Cause

The user account is missing a permission. 

Environment

ITMS 8.x

Resolution

Get the permission guid and the item guid from the error message: 

The caller 'AltirisJava' does not have permission bf3778ac-5e4c-40ce-85a9-3488fb20128f on the specified item 8be9d7aa-097f-4a91-bfae-c906fb1ce3cd

For missing permission:

Select [Name] as [Permission], Description
from sec_Permission
where Guid = 'bf3778ac-5e4c-40ce-85a9-3488fb20128f'

For item that needs missing permission:

select [Name]
from Item
where Guid = '8be9d7aa-097f-4a91-bfae-c906fb1ce3cd'

Use the Security Role Manager (Console > Settings > Security > Security Role Manager) to modify the item for the role missing the permission. 

Attachments