public sealed class X509Parameters.Types.NameConstraints : IMessage<X509Parameters.Types.NameConstraints>, IEquatable<X509Parameters.Types.NameConstraints>, IDeepCloneable<X509Parameters.Types.NameConstraints>, IBufferMessage, IMessage
Reference documentation and code samples for the Certificate Authority v1 API class X509Parameters.Types.NameConstraints.
public RepeatedField<string> ExcludedDnsNames { get; }
Contains excluded DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com, www.example.com, www.sub.example.com
would satisfy example.com while example1.com does not.
public RepeatedField<string> ExcludedEmailAddresses { get; }
Contains the excluded email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate
all email addresses in that domain.
public RepeatedField<string> ExcludedIpRanges { get; }
Contains the excluded IP ranges. For IPv4 addresses, the ranges
are expressed using CIDR notation as specified in RFC 4632.
For IPv6 addresses, the ranges are expressed in similar encoding as IPv4
addresses.
public RepeatedField<string> PermittedDnsNames { get; }
Contains permitted DNS names. Any DNS name that can be
constructed by simply adding zero or more labels to
the left-hand side of the name satisfies the name constraint.
For example, example.com, www.example.com, www.sub.example.com
would satisfy example.com while example1.com does not.
public RepeatedField<string> PermittedEmailAddresses { get; }
Contains the permitted email addresses. The value can be a particular
email address, a hostname to indicate all email addresses on that host or
a domain with a leading period (e.g. .example.com) to indicate
all email addresses in that domain.
public RepeatedField<string> PermittedIpRanges { get; }
Contains the permitted IP ranges. For IPv4 addresses, the ranges
are expressed using CIDR notation as specified in RFC 4632.
For IPv6 addresses, the ranges are expressed in similar encoding as IPv4
addresses.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis webpage provides reference documentation for the \u003ccode\u003eX509Parameters.Types.NameConstraints\u003c/code\u003e class within the Google Cloud Security PrivateCA V1 API, with the latest version being 3.9.0.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eX509Parameters.Types.NameConstraints\u003c/code\u003e class is used to describe the X.509 name constraints extension, as detailed in RFC 5280.\u003c/p\u003e\n"],["\u003cp\u003eThe class allows specifying permitted and excluded DNS names, email addresses, IP ranges, and URIs through its properties like \u003ccode\u003eExcludedDnsNames\u003c/code\u003e, \u003ccode\u003ePermittedEmailAddresses\u003c/code\u003e, \u003ccode\u003eExcludedIpRanges\u003c/code\u003e, and more.\u003c/p\u003e\n"],["\u003cp\u003eThere are multiple versions available for the \u003ccode\u003eX509Parameters.Types.NameConstraints\u003c/code\u003e class, ranging from version 1.0.0 up to the most recent 3.9.0.\u003c/p\u003e\n"],["\u003cp\u003eThis class implements the interfaces IMessage, IEquatable, IDeepCloneable and IBufferMessage.\u003c/p\u003e\n"]]],[],null,["# Certificate Authority v1 API - Class X509Parameters.Types.NameConstraints (3.10.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.10.0 (latest)](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.9.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.9.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.8.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.7.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.6.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.5.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.4.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.3.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.2.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.1.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.0.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/2.3.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/2.2.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/2.1.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/2.0.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/1.0.0/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints) \n\n public sealed class X509Parameters.Types.NameConstraints : IMessage\u003cX509Parameters.Types.NameConstraints\u003e, IEquatable\u003cX509Parameters.Types.NameConstraints\u003e, IDeepCloneable\u003cX509Parameters.Types.NameConstraints\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Certificate Authority v1 API class X509Parameters.Types.NameConstraints.\n\nDescribes the X.509 name constraints extension, per\n\u003chttps://tools.ietf.org/html/rfc5280#section-4.2.1.10\u003e \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e X509Parameters.Types.NameConstraints \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[X509Parameters](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters)[Types](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types)[NameConstraints](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[X509Parameters](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters)[Types](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types)[NameConstraints](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[X509Parameters](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters)[Types](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types)[NameConstraints](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.X509Parameters.Types.NameConstraints), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Security.PrivateCA.V1](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Security.PrivateCA.V1.dll\n\nConstructors\n------------\n\n### NameConstraints()\n\n public NameConstraints()\n\n### NameConstraints(NameConstraints)\n\n public NameConstraints(X509Parameters.Types.NameConstraints other)\n\nProperties\n----------\n\n### Critical\n\n public bool Critical { get; set; }\n\nIndicates whether or not the name constraints are marked critical.\n\n### ExcludedDnsNames\n\n public RepeatedField\u003cstring\u003e ExcludedDnsNames { get; }\n\nContains excluded DNS names. Any DNS name that can be\nconstructed by simply adding zero or more labels to\nthe left-hand side of the name satisfies the name constraint.\nFor example, `example.com`, `www.example.com`, `www.sub.example.com`\nwould satisfy `example.com` while `example1.com` does not.\n\n### ExcludedEmailAddresses\n\n public RepeatedField\u003cstring\u003e ExcludedEmailAddresses { get; }\n\nContains the excluded email addresses. The value can be a particular\nemail address, a hostname to indicate all email addresses on that host or\na domain with a leading period (e.g. `.example.com`) to indicate\nall email addresses in that domain.\n\n### ExcludedIpRanges\n\n public RepeatedField\u003cstring\u003e ExcludedIpRanges { get; }\n\nContains the excluded IP ranges. For IPv4 addresses, the ranges\nare expressed using CIDR notation as specified in RFC 4632.\nFor IPv6 addresses, the ranges are expressed in similar encoding as IPv4\naddresses.\n\n### ExcludedUris\n\n public RepeatedField\u003cstring\u003e ExcludedUris { get; }\n\nContains the excluded URIs that apply to the host part of the name.\nThe value can be a hostname or a domain with a\nleading period (like `.example.com`)\n\n### PermittedDnsNames\n\n public RepeatedField\u003cstring\u003e PermittedDnsNames { get; }\n\nContains permitted DNS names. Any DNS name that can be\nconstructed by simply adding zero or more labels to\nthe left-hand side of the name satisfies the name constraint.\nFor example, `example.com`, `www.example.com`, `www.sub.example.com`\nwould satisfy `example.com` while `example1.com` does not.\n\n### PermittedEmailAddresses\n\n public RepeatedField\u003cstring\u003e PermittedEmailAddresses { get; }\n\nContains the permitted email addresses. The value can be a particular\nemail address, a hostname to indicate all email addresses on that host or\na domain with a leading period (e.g. `.example.com`) to indicate\nall email addresses in that domain.\n\n### PermittedIpRanges\n\n public RepeatedField\u003cstring\u003e PermittedIpRanges { get; }\n\nContains the permitted IP ranges. For IPv4 addresses, the ranges\nare expressed using CIDR notation as specified in RFC 4632.\nFor IPv6 addresses, the ranges are expressed in similar encoding as IPv4\naddresses.\n\n### PermittedUris\n\n public RepeatedField\u003cstring\u003e PermittedUris { get; }\n\nContains the permitted URIs that apply to the host part of the name.\nThe value can be a hostname or a domain with a\nleading period (like `.example.com`)"]]