Put Client Certificate Operation
-
Use
PutClientCertificateOperation
to register an existing client certificate. -
To register an existing client certificate from the Studio, see Upload an existing client certificate.
-
In this article:
Put client certificate example
- Sync
- Async
X509Certificate2 certificate = new X509Certificate2("c:\\path_to_pfx_file");
// Define the put client certificate operation
var putClientCertificateOp = new PutClientCertificateOperation(
"certificateName",
certificate,
new Dictionary<string, DatabaseAccess>(),
SecurityClearance.ClusterAdmin);
// Execute the operation by passing it to Maintenance.Server.Send
store.Maintenance.Server.Send(putClientCertificateOp);
X509Certificate2 certificate = new X509Certificate2("c:\\path_to_pfx_file");
// Define the put client certificate operation
var putClientCertificateOp = new PutClientCertificateOperation(
"certificateName",
certificate,
new Dictionary<string, DatabaseAccess>(),
SecurityClearance.ClusterAdmin);
// Execute the operation by passing it to Maintenance.Server.SendAsync
await store.Maintenance.Server.SendAsync(putClientCertificateOp);
Syntax
public PutClientCertificateOperation(
string name,
X509Certificate2 certificate,
Dictionary<string, DatabaseAccess> permissions,
SecurityClearance clearance)
Parameter | Type | Description |
---|---|---|
name | string | A name for the certificate. |
certificate | X509Certificate2 | The certificate to register. |
permissions | Dictionary<string, DatabaseAccess> | A dictionary mapping database name to access level. Relevant only when clearance is ValidUser . |
clearance | SecurityClearance | Access level (role) assigned to the certificate. |
// The role assigned to the certificate:
public enum SecurityClearance
{
ClusterAdmin,
ClusterNode,
Operator,
ValidUser
}
// The access level for a 'ValidUser' security clearance:
public enum DatabaseAccess
{
Read,
ReadWrite,
Admin
}