Reference
OpcCertificateAcl Members
Represents the access control list of an OpcServerSecurity which authenticates X.509 certificate identity tokens using the OpcCertificateIdentity instances of its entries.
Reference
OpcCertificateAcl Members
- Type
- OpcCertificateAcl
- Namespace
- Opc.UaFx.Server
- Assembly
- Opc.UaFx.Advanced.dll
- Package
- Opc.UaFx.Advanced v2.59.0
Inherits members from OpcAccessControlList.
Constructors
OpcCertificateAcl
Initializes a new instance of the OpcCertificateAcl class using the owner specified.
public OpcCertificateAcl(OpcServerBase owner)Public Sub New(owner As OpcServerBase)Parameters
| Name | Type | Description |
|---|---|---|
owner | OpcServerBase | The OpcServerBase the list belongs to. |
Exceptions
| Exception | Condition |
|---|---|
| Argument | The owner is a null reference ( |
Remarks
The entries created by the list evaluate operations and endpoints using the mode Whitelist.
Properties
CertificateValidator
Gets or sets the validator used to validate the certificate of a user before it is matched against the entries of the list.
public X509CertificateValidator CertificateValidator { get; set; }Public Property CertificateValidator As X509CertificateValidatorProperty value
The X509CertificateValidator to use or a null reference (Nothing in Visual Basic) in case there a certificate is only checked against the entries of the list. The default value is a null reference (Nothing in Visual Basic).
Remarks
The validator sees a certificate after the stack verified the signature of the user token. This holds on an endpoint without security as well, because the stack states Basic256Sha256 for user tokens there unless a user token policy states another security policy. A certificate that does not belong to the key the client signed with is rejected with BadUserSignatureInvalid and never reaches the validator.
An exception thrown by the validator rejects the identity with BadIdentityTokenRejected. Otherwise the certificate is matched against the entries of the list, which may be added while the server runs. A validator can therefore admit user certificates from a folder of its own by adding an entry for each one it accepts, and keep those it rejects, without a restart. Such a folder has to stay apart from the trust list of the application, which automatic acceptance and GDS push fill.
TokenType
Gets the type of the identity tokens the list is responsible for.
protected override OpcAccessControlTokenType TokenType { get; }Protected Overrides ReadOnly Property TokenType As OpcAccessControlTokenTypeProperty value
Always Certificate.
Overrides
Methods
AddEntry
| Overload | Description |
|---|---|
| AddEntry( | Adds an entry for a user identified by the certificate specified. |
| AddEntry( | Adds an entry for a user identified by the certificate specified using the operation specified. |
| AddEntry( | Adds an entry for a user identified by the certificate specified using the operation and endpoint specified. |
Exceptions (all overloads)
| Exception | Condition |
|---|---|
| Argument | The certificate is a null reference ( |
AddEntry(X509Certificate2)
Adds an entry for a user identified by the certificate specified.
public OpcAccessControlEntry AddEntry(X509Certificate2 certificate)Public Function AddEntry(
certificate As X509Certificate2) As OpcAccessControlEntryParameters
| Name | Type | Description |
|---|---|---|
certificate | X509Certificate2 | The X509Certificate2 of the user. |
Returns
The new OpcAccessControlEntry of the user.
Remarks
The entry uses the OperationAccessMode and the EndpointAccessMode of the list. Each call adds a new entry, also for a certificate which is already used by another entry.
AddEntry(X509Certificate2, OpcAccessControlMode)
Adds an entry for a user identified by the certificate specified using the operationAccessMode specified.
public OpcAccessControlEntry AddEntry(
X509Certificate2 certificate,
OpcAccessControlMode operationAccessMode)Public Function AddEntry(
certificate As X509Certificate2,
operationAccessMode As OpcAccessControlMode) As OpcAccessControlEntryParameters
| Name | Type | Description |
|---|---|---|
certificate | X509Certificate2 | The X509Certificate2 of the user. |
operation | Opc | One of the members defined by the Opc |
Returns
The new OpcAccessControlEntry of the user.
Remarks
The entry uses the EndpointAccessMode of the list. Each call adds a new entry, also for a certificate which is already used by another entry.
AddEntry(X509Certificate2, OpcAccessControlMode, OpcAccessControlMode)
Adds an entry for a user identified by the certificate specified using the operationAccessMode and endpointAccessMode specified.
public OpcAccessControlEntry AddEntry(
X509Certificate2 certificate,
OpcAccessControlMode operationAccessMode,
OpcAccessControlMode endpointAccessMode)Public Function AddEntry(
certificate As X509Certificate2,
operationAccessMode As OpcAccessControlMode,
endpointAccessMode As OpcAccessControlMode) As OpcAccessControlEntryParameters
| Name | Type | Description |
|---|---|---|
certificate | X509Certificate2 | The X509Certificate2 of the user. |
operation | Opc | One of the members defined by the Opc |
endpoint | Opc | One of the members defined by the Opc |
Returns
The new OpcAccessControlEntry of the user.
Remarks
Each call adds a new entry, also for a certificate which is already used by another entry.
Authenticate
Authenticates the identityToken specified if it is an X.509 certificate identity token whose certificate matches the OpcCertificateIdentity of an entry.
public override OpcPrincipal Authenticate(OpcIdentityToken identityToken)Public Overrides Function Authenticate(
identityToken As OpcIdentityToken) As OpcPrincipalParameters
| Name | Type | Description |
|---|---|---|
identityToken | OpcIdentityToken | The OpcIdentityToken to authenticate. |
Returns
The OpcPrincipal of the first entry whose identity matches the certificate of the identityToken (see Matches); otherwise a null reference (Nothing in Visual Basic).
Exceptions
| Exception | Condition |
|---|---|
| OpcException | The CertificateidentityToken; the exception states Bad |
Overrides
Remarks
An authenticated principal is assigned to the role AuthenticatedUser.

