Reference
OpcAccessControlList Members
Provides the abstract base class of the access control lists of an OpcServerSecurity, which authenticate the identity tokens of one OpcAccessControlTokenType and maintain one OpcAccessControlEntry per OpcPrincipal.
Reference
OpcAccessControlList Members
- Type
- OpcAccessControlList
- Namespace
- Opc.UaFx.Server
- Assembly
- Opc.UaFx.Advanced.dll
- Package
- Opc.UaFx.Advanced v2.59.0
Constructors
OpcAccessControlList
Initializes a new instance of the OpcAccessControlList class using the owner, operationAccessMode and endpointAccessMode specified.
protected OpcAccessControlList(
OpcServerBase owner,
OpcAccessControlMode operationAccessMode,
OpcAccessControlMode endpointAccessMode)Protected Sub New(
owner As OpcServerBase,
operationAccessMode As OpcAccessControlMode,
endpointAccessMode As OpcAccessControlMode)Parameters
| Name | Type | Description |
|---|---|---|
owner | OpcServerBase | The OpcServerBase the list belongs to. |
operation | Opc | One of the members defined by the Opc |
endpoint | Opc | One of the members defined by the Opc |
Exceptions
| Exception | Condition |
|---|---|
| Argument | The owner is a null reference ( |
Properties
EndpointAccessMode
Gets the mode which the entries created by the list use to evaluate an endpoint which has neither been enabled nor disabled explicitly.
public OpcAccessControlMode EndpointAccessMode { get; }Public ReadOnly Property EndpointAccessMode As OpcAccessControlModeProperty value
One of the members defined by the OpcAccessControlMode enumeration.
Entries
Gets a read-only collection of the entries of the list.
public OpcAccessControlEntryReadOnlyCollection Entries { get; }Public ReadOnly Property Entries As OpcAccessControlEntryReadOnlyCollectionProperty value
OpcAccessControlEntryReadOnlyCollection
An instance of the OpcAccessControlEntryReadOnlyCollection class.
IsConfigured
Gets a value indicating whether the Configuration states a user token policy of the token type of the access control list.
public virtual bool IsConfigured { get; }Public Overridable ReadOnly Property IsConfigured As BooleanProperty value
The value true if the user token policies of the server configuration contain a policy of the token type of the access control list; otherwise the value false.
Remarks
The value is the default of IsEnabled as long as that has not been set explicitly. While the server runs, the value follows the configuration it has been started with, which the start completes with the policies it offers. The Configuration itself is not changed by a start.
IsEnabled
Gets or sets a value indicating whether the server offers the token type of the access control list and uses the list to authenticate and authorize its users.
public bool IsEnabled { get; set; }Public Property IsEnabled As BooleanProperty value
The value true if the access control list is used; otherwise the value false. As long as no value has been set, the value of IsConfigured is used.
Remarks
An access control list that has not been set explicitly follows the configuration and, in case of the OpcAnonymousAcl, the other access control lists: enabling for example only the OpcUserNameAcl disables anonymous access, unless the anonymous access control list is enabled explicitly as well.
To keep the result independent of the other lists, set the value of every access control list used.
OperationAccessMode
Gets the mode which the entries created by the list use to evaluate an operation which has neither been allowed nor denied explicitly.
public OpcAccessControlMode OperationAccessMode { get; }Public ReadOnly Property OperationAccessMode As OpcAccessControlModeProperty value
One of the members defined by the OpcAccessControlMode enumeration.
Owner
Gets the server the list belongs to.
protected OpcServerBase Owner { get; }Protected ReadOnly Property Owner As OpcServerBaseProperty value
The OpcServerBase specified on construction.
TokenType
Gets the type of the identity tokens the list is responsible for.
protected abstract OpcAccessControlTokenType TokenType { get; }Protected MustOverride ReadOnly Property TokenType As OpcAccessControlTokenTypeProperty value
One of the members defined by the OpcAccessControlTokenType enumeration.
Methods
AddEntry
| Overload | Description |
|---|---|
| AddEntry( | Adds an entry for the principal specified to the list. |
| AddEntry( | Adds an entry for the principal specified to the list using the operation specified. |
| AddEntry( | Adds an entry for the principal specified to the list using the operation and endpoint specified. |
Exceptions (all overloads)
| Exception | Condition |
|---|---|
| Argument | The principal is a null reference ( |
AddEntry(OpcPrincipal)
Adds an entry for the principal specified to the list.
public OpcAccessControlEntry AddEntry(OpcPrincipal principal)Public Function AddEntry(principal As OpcPrincipal) As OpcAccessControlEntryParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to add an entry for. |
Returns
The OpcAccessControlEntry of the principal.
Remarks
A new entry uses the OperationAccessMode and the EndpointAccessMode of the list. If the list already contains an entry for a principal whose Identity has the same Token, that entry is returned unchanged.
AddEntry(OpcPrincipal, OpcAccessControlMode)
Adds an entry for the principal specified to the list using the operationAccessMode specified.
public OpcAccessControlEntry AddEntry(
OpcPrincipal principal,
OpcAccessControlMode operationAccessMode)Public Function AddEntry(
principal As OpcPrincipal,
operationAccessMode As OpcAccessControlMode) As OpcAccessControlEntryParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to add an entry for. |
operation | Opc | One of the members defined by the Opc |
Returns
The OpcAccessControlEntry of the principal.
Remarks
A new entry uses the EndpointAccessMode of the list. If the list already contains an entry for a principal whose Identity has the same Token, that entry is returned unchanged, also if it uses another mode.
AddEntry(OpcPrincipal, OpcAccessControlMode, OpcAccessControlMode)
Adds an entry for the principal specified to the list using the operationAccessMode and endpointAccessMode specified.
public OpcAccessControlEntry AddEntry(
OpcPrincipal principal,
OpcAccessControlMode operationAccessMode,
OpcAccessControlMode endpointAccessMode)Public Function AddEntry(
principal As OpcPrincipal,
operationAccessMode As OpcAccessControlMode,
endpointAccessMode As OpcAccessControlMode) As OpcAccessControlEntryParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to add an entry for. |
operation | Opc | One of the members defined by the Opc |
endpoint | Opc | One of the members defined by the Opc |
Returns
The OpcAccessControlEntry of the principal.
Remarks
If the list already contains an entry for a principal whose Identity has the same Token, that entry is returned unchanged, also if it uses other modes.
Allow
Allows the operation specified explicitly for the principal specified.
public void Allow(OpcPrincipal principal, OpcOperationType operation)Public Sub Allow(principal As OpcPrincipal, operation As OpcOperationType)Parameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to allow the operation for. |
operation | OpcOperationType | The OpcOperationType to allow. |
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal or operation is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
Authenticate
When overridden in a derived class, authenticates the identityToken specified.
public abstract OpcPrincipal Authenticate(OpcIdentityToken identityToken)Public MustOverride Function Authenticate(
identityToken As OpcIdentityToken) As OpcPrincipalParameters
| Name | Type | Description |
|---|---|---|
identityToken | OpcIdentityToken | The OpcIdentityToken to authenticate. |
Returns
The OpcPrincipal of the identityToken if the list accepts the token; otherwise a null reference (Nothing in Visual Basic).
ConfigureCore
When overridden in a derived class, applies the configuration of the Owner to the list.
protected virtual void ConfigureCore()Protected Overridable Sub ConfigureCore()Remarks
The method is called when the node managers of the server have been started. The base implementation does nothing.
Deny
Denies the operation specified explicitly for the principal specified.
public void Deny(OpcPrincipal principal, OpcOperationType operation)Public Sub Deny(principal As OpcPrincipal, operation As OpcOperationType)Parameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to deny the operation for. |
operation | OpcOperationType | The OpcOperationType to deny. |
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal or operation is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
Disable
Disables the endpoint specified explicitly for the principal specified.
public void Disable(OpcPrincipal principal, OpcEndpointIdentity endpoint)Public Sub Disable(principal As OpcPrincipal, endpoint As OpcEndpointIdentity)Parameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to disable the endpoint for. |
endpoint | Opc | The Opc |
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal or endpoint is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
Enable
Enables the endpoint specified explicitly for the principal specified.
public void Enable(OpcPrincipal principal, OpcEndpointIdentity endpoint)Public Sub Enable(principal As OpcPrincipal, endpoint As OpcEndpointIdentity)Parameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to enable the endpoint for. |
endpoint | Opc | The Opc |
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal or endpoint is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
IsEndpointDisabled
| Overload | Description |
|---|---|
| Is | Determines whether the endpoint of the current secure channel is disabled for the principal specified. |
| Is | Determines whether the endpoint specified is disabled for the principal specified. |
IsEndpointDisabled(OpcPrincipal)
Determines whether the endpoint of the current secure channel is disabled for the principal specified.
public virtual bool IsEndpointDisabled(OpcPrincipal principal)Public Overridable Function IsEndpointDisabled(
principal As OpcPrincipal) As BooleanParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to verify. |
Returns
The value true if the entry of the principal disables the endpoint (see IsDisabled); otherwise the value false.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
IsEndpointDisabled(OpcPrincipal, OpcEndpointIdentity)
Determines whether the endpoint specified is disabled for the principal specified.
public virtual bool IsEndpointDisabled(
OpcPrincipal principal,
OpcEndpointIdentity endpoint)Public Overridable Function IsEndpointDisabled(
principal As OpcPrincipal,
endpoint As OpcEndpointIdentity) As BooleanParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to verify. |
endpoint | Opc | The Opc |
Returns
The value true if the entry of the principal disables the endpoint (see IsDisabled); otherwise the value false.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal or endpoint is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
IsEndpointEnabled
| Overload | Description |
|---|---|
| Is | Determines whether the endpoint of the current secure channel is enabled for the principal specified. |
| Is | Determines whether the endpoint specified is enabled for the principal specified. |
IsEndpointEnabled(OpcPrincipal)
Determines whether the endpoint of the current secure channel is enabled for the principal specified.
public virtual bool IsEndpointEnabled(OpcPrincipal principal)Public Overridable Function IsEndpointEnabled(
principal As OpcPrincipal) As BooleanParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to verify. |
Returns
The value true if the entry of the principal enables the endpoint (see IsEnabled); otherwise the value false.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
IsEndpointEnabled(OpcPrincipal, OpcEndpointIdentity)
Determines whether the endpoint specified is enabled for the principal specified.
public virtual bool IsEndpointEnabled(
OpcPrincipal principal,
OpcEndpointIdentity endpoint)Public Overridable Function IsEndpointEnabled(
principal As OpcPrincipal,
endpoint As OpcEndpointIdentity) As BooleanParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to verify. |
endpoint | Opc | The Opc |
Returns
The value true if the entry of the principal enables the endpoint (see IsEnabled); otherwise the value false.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal or endpoint is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
IsOperationAllowed
Determines whether the operation specified is allowed for the principal specified.
public virtual bool IsOperationAllowed(
OpcPrincipal principal,
OpcOperationType operation)Public Overridable Function IsOperationAllowed(
principal As OpcPrincipal,
operation As OpcOperationType) As BooleanParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to verify. |
operation | OpcOperationType | The OpcOperationType to verify. |
Returns
The value true if the entry of the principal allows the operation (see IsAllowed); otherwise the value false.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal or operation is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
IsOperationDenied
Determines whether the operation specified is denied for the principal specified.
public virtual bool IsOperationDenied(
OpcPrincipal principal,
OpcOperationType operation)Public Overridable Function IsOperationDenied(
principal As OpcPrincipal,
operation As OpcOperationType) As BooleanParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal to verify. |
operation | OpcOperationType | The OpcOperationType to verify. |
Returns
The value true if the entry of the principal denies the operation (see IsDenied); otherwise the value false.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal or operation is a null reference ( |
Remarks
If the list does not yet contain an entry for the principal, an entry using the OperationAccessMode and the EndpointAccessMode of the list is added.
RemoveEntry
| Overload | Description |
|---|---|
| RemoveEntry( | Removes the entry specified from the list. |
| RemoveEntry( | Removes the entry of the principal specified from the list. |
RemoveEntry(OpcAccessControlEntry)
Removes the entry specified from the list.
public bool RemoveEntry(OpcAccessControlEntry entry)Public Function RemoveEntry(entry As OpcAccessControlEntry) As BooleanParameters
| Name | Type | Description |
|---|---|---|
entry | Opc | The Opc |
Returns
The value true if the entry has been removed; otherwise the value false.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The entry is a null reference ( |
RemoveEntry(OpcPrincipal)
Removes the entry of the principal specified from the list.
public bool RemoveEntry(OpcPrincipal principal)Public Function RemoveEntry(principal As OpcPrincipal) As BooleanParameters
| Name | Type | Description |
|---|---|---|
principal | OpcPrincipal | The OpcPrincipal whose entry is to be removed. |
Returns
The value true if the list contained an entry for the principal and the entry has been removed; otherwise the value false.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The principal is a null reference ( |

