MSDN Logo

Microsoft Docs

System.Net.Security.CertificateTrustLevel

Represents the trust level of a certificate.

Note: This class is part of the System.Net.Security namespace in the .NET Framework.

Introduction

The CertificateTrustLevel enumeration defines the levels of trust that can be assigned to a certificate. This is crucial for validating the authenticity and integrity of digital certificates used in secure communication protocols like TLS/SSL.

Syntax

public enum CertificateTrustLevel

Fields

Name Description
FullyTrusted The certificate is fully trusted. This typically means it has been issued by a trusted Certificate Authority (CA) and meets all validation requirements.
PartialTrust The certificate is partially trusted. This might occur if the certificate chain is valid but contains untrusted intermediate certificates, or if certain validation checks are relaxed.
Untrusted The certificate is not trusted. This usually indicates that the certificate is self-signed, has expired, or its issuer is not present in the trusted root store.

Remarks

The CertificateTrustLevel enumeration is used by the .NET Security classes to communicate the level of trust associated with a given X.509 certificate. When establishing a secure connection, the system verifies the certificate against a set of trusted root certificates and other validation policies. The result of this verification process determines the applicable trust level.

Understanding the trust level is essential for developers implementing secure network applications. For instance, an application might choose to reject connections with certificates marked as Untrusted, while perhaps allowing connections with PartialTrust certificates under specific circumstances, though this is generally discouraged for production environments.

Tip: Always aim for FullyTrusted certificates in production systems to ensure the highest level of security and user confidence.

Requirements

Component Version
Runtime .NET Framework 1.0 on .NET Framework Client Profile
Header System.Net.Security.dll
Namespace System.Net.Security
Assembly System.Net.Security.dll

See Also