I just implemented something similar. You will need a Business Rule of type Wcf Event Handler
Then the code is something like:
Try
' OneStream provides the lines below Dim returnValue As Object = args.DefaultReturnValue args.UseReturnValueFromBusinessRule = False args.Cancel = False
' before consol starts If ( args.IsBeforeEvent And (args.WcfServiceType = WcfServiceType.Calculate Or args.OperationName= "StartConsolidation" Or args.OperationName= "StartProcessCube") ) ' check if user is in security group OK_CONSOL if he is not then cancel running If ( Not brapi.Security.Authorization.IsUserInGroup(si,"OK_CONSOL")) Then args.Cancel = True ' throw in an exception to grab their attention Throw New XFException(si, New Exception("SOX Violation: User NOT Provisioned to Execute Consolidation.")) End If End If Return returnValue