CollaborationPlatform.BeginChangeCertificate Method (X509Certificate, AsyncCallback, Object)
Dynamically changes the certificate to be used.
Namespace: Microsoft.Rtc.Collaboration
Assembly: Microsoft.Rtc.Collaboration (in Microsoft.Rtc.Collaboration.dll)
Syntax
'Declaration
Public Function BeginChangeCertificate ( _
certificate As X509Certificate, _
userCallback As AsyncCallback, _
state As Object _
) As IAsyncResult
'Usage
Dim instance As CollaborationPlatform
Dim certificate As X509Certificate
Dim userCallback As AsyncCallback
Dim state As Object
Dim returnValue As IAsyncResult
returnValue = instance.BeginChangeCertificate(certificate, _
userCallback, state)
public IAsyncResult BeginChangeCertificate(
X509Certificate certificate,
AsyncCallback userCallback,
Object state
)
Parameters
- certificate
Type: System.Security.Cryptography.X509Certificates.X509Certificate
The new certificate.
- userCallback
Type: System.AsyncCallback
The method to be called when the asynchronous operation is completed.
- state
Type: System.Object
A user-provided object that distinguishes this particular asynchronous operation from other asynchronous operations.
Return Value
Type: System.IAsyncResult
Exceptions
Exception | Condition |
---|---|
InvalidOperationException | Thrown when the platform has not been configured with MTLS. |
InvalidOperationException | Thrown when the platform is not in the correct state to change the certificate. |
ArgumentNullException | Thrown when one or more of the arguments are null. |
TlsFailureException | Thrown when the certificate is invalid or otherwise unusable. |
Remarks
For auto-provisioned platforms this method need not be used since certificate changes are automatically applied.
In order to change the certficate, the platform needs to stop listening, change the certificate, and start listening again. While this does not affect existing connections, there could be a temporary problem in accepting new incoming connections.