# ClientCertificateSelectionCallback

Package: [Microsoft.Orleans.Connections.Security](/orleans/docs/api/csharp/microsoft.orleans.connections.security/) 10.0.0

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Connections.Security)

```csharp
public delegate X509Certificate ClientCertificateSelectionCallback(object sender, string targetHost, X509CertificateCollection localCertificates, X509Certificate remoteCertificate, string[] acceptableIssuers);
```

Represents a multicast delegate; that is, a delegate that can have more than one element in its invocation list.

## Constructors

- [ClientCertificateSelectionCallback(object, nint)](/orleans/docs/api/csharp/microsoft.orleans.connections.security/orleans.connections.security.clientcertificateselectioncallback/constructors/constructor-object-nint-d198cddb/)

## Methods

- [BeginInvoke(object, string, X509CertificateCollection, X509Certificate, string[], AsyncCallback, object)](/orleans/docs/api/csharp/microsoft.orleans.connections.security/orleans.connections.security.clientcertificateselectioncallback/methods/begininvoke-object-string-system-security-cryptography-x509certificates-x509cert-f8a4828b/)
- [EndInvoke(IAsyncResult)](/orleans/docs/api/csharp/microsoft.orleans.connections.security/orleans.connections.security.clientcertificateselectioncallback/methods/endinvoke-system-iasyncresult-77ef4718/)
