public X509CertificateClaimSet(X509Certificate2 certificate) { if (certificate == null) { throw new ArgumentNullException("certificate"); } this.cert = certificate; Claim ident = new Claim(ClaimTypes.Thumbprint, cert.Thumbprint, Rights.Identity); // issuer = new X509IdentityClaimSet (ident); claims.Add(ident); //claims.Add (Claim.CreateX500DistinguishedNameClaim (cert.SubjectName)); //claims.Add (Claim.CreateNameClaim (cert.SubjectName.Name)); RSA rsa = cert.PublicKey.Key as RSA; if (rsa != null) { claims.Add(Claim.CreateRsaClaim(rsa)); } claims.Add(Claim.CreateThumbprintClaim(cert.GetCertHash())); // FIXME: where is DNS info for X509 cert? claims.Add(Claim.CreateDnsClaim(null)); }