All docs
V20.2
20.2
20.1
19.2
The page you are viewing does not exist in version 19.2. This link will take you to the root page.
19.1
The page you are viewing does not exist in version 19.1. This link will take you to the root page.
18.2
The page you are viewing does not exist in version 18.2. This link will take you to the root page.
18.1
The page you are viewing does not exist in version 18.1. This link will take you to the root page.
17.2
The page you are viewing does not exist in version 17.2. This link will take you to the root page.
.NET Standard 2.0+
.NET Framework 4.5.2+
.NET Standard 2.0+
.NET Core 3.0+

IsGrantedExtensions.CanExecuteByUser(SecurityStrategy, IPermissionPolicyUser, String) Method

Checks whether the specified user can execute the specified Action.

Namespace: DevExpress.ExpressApp.Security

Assembly: DevExpress.ExpressApp.Security.v20.2.dll

Declaration

public static bool CanExecuteByUser(
    this SecurityStrategy security,
    IPermissionPolicyUser targetUser,
    string actionId
)
<ExtensionAttribute>
Public Shared Function CanExecuteByUser(
    security As SecurityStrategy,
    targetUser As IPermissionPolicyUser,
    actionId As String
) As Boolean

Parameters

Name Type Description
security SecurityStrategy

A SecurityStrategy object that specifies an application's Security Strategy.

targetUser IPermissionPolicyUser

An IPermissionPolicyUser object that is a user this method checks.

actionId String

An identifier of an Action this method checks.

Returns

Type Description
Boolean

true, if the specified user can execute the specified Action; otherwise, false.

Remarks

The following example shows how to use this method.

using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Security;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.BaseImpl.PermissionPolicy;
// ...
public class CheckActionPermissionController : ViewController<ListView> {
    protected override void OnActivated() {
        base.OnActivated();
        SecurityStrategy securityStrategy = Application.GetSecurityStrategy();
        foreach (IPermissionPolicyUser user in ObjectSpace.GetObjects<PermissionPolicyUser>()) {
            if (securityStrategy.CanExecuteByUser(user, "CustomAction")) {
                // ...
            }
        }
    }
}

You can find an Action's identifier in the Model Editor:

See Also