.NET Based OPC UA Client/Server SDK  3.0.10.493
UnifiedAutomation.UaBase.NodeAccessInfo Class Reference

A set of permissions assigned to a node. More...

Inherits UnifiedAutomation.UaBase.INodeAccessInfo.

Public Member Functions

 NodeAccessInfo (uint mode, uint ownerId, uint groupId)
 Initializes a new instance of the class. More...
 
 NodeAccessInfo (PermissionType permissionsScope1, PermissionType permissionsScope2, PermissionType permissionsOther, uint scope1Id, uint scope2Id)
 Initializes a new instance of the class. More...
 
 NodeAccessInfo (UaSchema.NodeAccessInfo nodeAccessInfo, IScopeMapper scopeMapper)
 Initializes a new instance of the class. More...
 
override string ToString ()
 Formats the permission as a string. More...
 
bool HasAccess (PermissionType requiredPermissions, IList< uint > scopeIds)
 Checks the required permissions meets the permission requirements. More...
 
bool HasAccess (PermissionType requiredPermissions, IList< uint > scopeIds, MessageSecurityMode securityMode)
 Checks the required permissions meets the permission requirements. More...
 
bool HasAccess (MessageSecurityMode securityMode)
 Checks the security mode meets the permission requirements. More...
 

Public Attributes

const ushort UA_NUM_PERMISSION_BITS = 10
 The number of permission bits. More...
 

Properties

bool SigningRequired [get, set]
 Gets or sets a value indicating if signing is required to access the node. More...
 
bool EncrytionRequired [get, set]
 Gets or sets a value indicating if encryption is required to access the node. More...
 
PermissionType PermissionsScope1 [get]
 Gets the Permissions defined for Scope 1 / Owner More...
 
PermissionType PermissionsScope2 [get]
 Gets the Permissions defined for Scope 2 / Group More...
 
PermissionType PermissionsOther [get]
 Gets the Permissions defined for Other More...
 
uint Scope1Id [get]
 Gets the id of Scope 1 / User More...
 
uint Scope2Id [get]
 Gets the id of Scope 2 / Group More...
 

Detailed Description

A set of permissions assigned to a node.

Permissions for two specified scopes and permissions for all other users can be specified using this class.

Constructor & Destructor Documentation

UnifiedAutomation.UaBase.NodeAccessInfo.NodeAccessInfo ( uint  mode,
uint  ownerId,
uint  groupId 
)
inline

Initializes a new instance of the class.

Parameters
modeThe bit mask specifying the permissions for other, group and owner scopes. It is recommended to use NodeAccessMask to set the bits in this argument.
ownerIdThe id for the owner scope.
groupIdThe id for the group scope.
UnifiedAutomation.UaBase.NodeAccessInfo.NodeAccessInfo ( PermissionType  permissionsScope1,
PermissionType  permissionsScope2,
PermissionType  permissionsOther,
uint  scope1Id,
uint  scope2Id 
)
inline

Initializes a new instance of the class.

Parameters
permissionsScope1The permissions of Scope 1
permissionsScope2The permissions of Scope 2
permissionsOtherThe permission for other scopes than defined in scope1Id and scope2Id
scope1IdThe id of scope 1
scope2IdThe id of scope 2
UnifiedAutomation.UaBase.NodeAccessInfo.NodeAccessInfo ( UaSchema.NodeAccessInfo  nodeAccessInfo,
IScopeMapper  scopeMapper 
)
inline

Initializes a new instance of the class.

This constructor is used when loading a NodeSet2 XML file that contains the NodeAccessInfo in an extension.

Parameters
nodeAccessInfoThe NodeAccessInfo defined in the XML file.
scopeMapperUsed to create a mapping of the scopes defined in the XML file to the scoped used in the server.

Member Function Documentation

bool UnifiedAutomation.UaBase.NodeAccessInfo.HasAccess ( PermissionType  requiredPermissions,
IList< uint >  scopeIds 
)
inline

Checks the required permissions meets the permission requirements.

Parameters
requiredPermissionsThe permissions that are needed.
scopeIdsA list of scopes available.
Returns
True if permission is granted; false otherwise.

Implements UnifiedAutomation.UaBase.INodeAccessInfo.

bool UnifiedAutomation.UaBase.NodeAccessInfo.HasAccess ( PermissionType  requiredPermissions,
IList< uint >  scopeIds,
MessageSecurityMode  securityMode 
)
inline

Checks the required permissions meets the permission requirements.

Parameters
requiredPermissionsThe permissions that are needed.
scopeIdsA list of scopes available.
securityModeThe security mode used for the channel.
Returns
True if permission is granted; false otherwise.

Implements UnifiedAutomation.UaBase.INodeAccessInfo.

bool UnifiedAutomation.UaBase.NodeAccessInfo.HasAccess ( MessageSecurityMode  securityMode)
inline

Checks the security mode meets the permission requirements.

Parameters
securityModeThe security mode used for the channel.
Returns
True if permission is granted; false otherwise.

Implements UnifiedAutomation.UaBase.INodeAccessInfo.

override string UnifiedAutomation.UaBase.NodeAccessInfo.ToString ( )
inline

Formats the permission as a string.

Returns
The permission formatted as a string.

Member Data Documentation

const ushort UnifiedAutomation.UaBase.NodeAccessInfo.UA_NUM_PERMISSION_BITS = 10

The number of permission bits.

Property Documentation

bool UnifiedAutomation.UaBase.NodeAccessInfo.EncrytionRequired
getset

Gets or sets a value indicating if encryption is required to access the node.

PermissionType UnifiedAutomation.UaBase.NodeAccessInfo.PermissionsOther
get

Gets the Permissions defined for Other

PermissionType UnifiedAutomation.UaBase.NodeAccessInfo.PermissionsScope1
get

Gets the Permissions defined for Scope 1 / Owner

PermissionType UnifiedAutomation.UaBase.NodeAccessInfo.PermissionsScope2
get

Gets the Permissions defined for Scope 2 / Group

uint UnifiedAutomation.UaBase.NodeAccessInfo.Scope1Id
get

Gets the id of Scope 1 / User

uint UnifiedAutomation.UaBase.NodeAccessInfo.Scope2Id
get

Gets the id of Scope 2 / Group

bool UnifiedAutomation.UaBase.NodeAccessInfo.SigningRequired
getset

Gets or sets a value indicating if signing is required to access the node.


The documentation for this class was generated from the following file: