Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
I found it was easiest to use a certificate token when accessing systems using a certificate. This is the method I use to accomplish the task querying based on the certificate thumbprint (the thumbprint ensures that I get correct certificate):
public X509SecurityToken GetSecurityToken(string certThumb)
{
X509SecurityToken securityToken = null;
X509Store store = new X509Store(StoreName.My, StoreLocation.LocalMachine);
store.Open(OpenFlags.ReadOnly);
try
{
X509Certificate2Collection certs = store.Certificates.Find(X509FindType.FindByThumbprint, certThumb, false);
X509Certificate2 cert;
if(certs.Count == 1)
{
cert = certs[0];
securityToken = new X509SecurityToken(cert);
}
else
{
securityToken = null;
}
}
catch (Exception)
{
throw;
}
finally
{
if(store != null)
{
store.Close();
}
}
return securityToken;
}