Class: Google::Cloud::Security::PrivateCA::V1::X509Parameters

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/security/privateca/v1/resources.rb

Overview

An X509Parameters is used to describe certain fields of an X.509 certificate, such as the key usage fields, fields specific to CA certificates, certificate policy extensions and custom extensions.

Defined Under Namespace

Classes: CaOptions, NameConstraints

Instance Attribute Summary collapse

Instance Attribute Details

#additional_extensions::Array<::Google::Cloud::Security::PrivateCA::V1::X509Extension>

Returns Optional. Describes custom X.509 extensions.

Returns:



985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
# File 'proto_docs/google/cloud/security/privateca/v1/resources.rb', line 985

class X509Parameters
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Describes the X.509 basic constraints extension, per [RFC 5280
  # section 4.2.1.9](https://tools.ietf.org/html/rfc5280#section-4.2.1.9)
  # @!attribute [rw] is_ca
  #   @return [::Boolean]
  #     Optional. Refers to the "CA" boolean field in the X.509 extension.
  #     When this value is missing, the basic constraints extension will be
  #     omitted from the certificate.
  # @!attribute [rw] max_issuer_path_length
  #   @return [::Integer]
  #     Optional. Refers to the path length constraint field in the X.509
  #     extension. For a CA certificate, this value describes the depth of
  #     subordinate CA certificates that are allowed. If this value is less than
  #     0, the request will fail. If this value is missing, the max path length
  #     will be omitted from the certificate.
  class CaOptions
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Describes the X.509 name constraints extension, per
  # https://tools.ietf.org/html/rfc5280#section-4.2.1.10
  # @!attribute [rw] critical
  #   @return [::Boolean]
  #     Indicates whether or not the name constraints are marked critical.
  # @!attribute [rw] permitted_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_uris
  #   @return [::Array<::String>]
  #     Contains the permitted URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  # @!attribute [rw] excluded_uris
  #   @return [::Array<::String>]
  #     Contains the excluded URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  class NameConstraints
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#aia_ocsp_servers::Array<::String>

Returns Optional. Describes Online Certificate Status Protocol (OCSP) endpoint addresses that appear in the "Authority Information Access" extension in the certificate.

Returns:

  • (::Array<::String>)

    Optional. Describes Online Certificate Status Protocol (OCSP) endpoint addresses that appear in the "Authority Information Access" extension in the certificate.



985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
# File 'proto_docs/google/cloud/security/privateca/v1/resources.rb', line 985

class X509Parameters
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Describes the X.509 basic constraints extension, per [RFC 5280
  # section 4.2.1.9](https://tools.ietf.org/html/rfc5280#section-4.2.1.9)
  # @!attribute [rw] is_ca
  #   @return [::Boolean]
  #     Optional. Refers to the "CA" boolean field in the X.509 extension.
  #     When this value is missing, the basic constraints extension will be
  #     omitted from the certificate.
  # @!attribute [rw] max_issuer_path_length
  #   @return [::Integer]
  #     Optional. Refers to the path length constraint field in the X.509
  #     extension. For a CA certificate, this value describes the depth of
  #     subordinate CA certificates that are allowed. If this value is less than
  #     0, the request will fail. If this value is missing, the max path length
  #     will be omitted from the certificate.
  class CaOptions
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Describes the X.509 name constraints extension, per
  # https://tools.ietf.org/html/rfc5280#section-4.2.1.10
  # @!attribute [rw] critical
  #   @return [::Boolean]
  #     Indicates whether or not the name constraints are marked critical.
  # @!attribute [rw] permitted_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_uris
  #   @return [::Array<::String>]
  #     Contains the permitted URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  # @!attribute [rw] excluded_uris
  #   @return [::Array<::String>]
  #     Contains the excluded URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  class NameConstraints
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#ca_options::Google::Cloud::Security::PrivateCA::V1::X509Parameters::CaOptions

Returns Optional. Describes options in this X509Parameters that are relevant in a CA certificate. If not specified, a default basic constraints extension with is_ca=false will be added for leaf certificates.

Returns:



985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
# File 'proto_docs/google/cloud/security/privateca/v1/resources.rb', line 985

class X509Parameters
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Describes the X.509 basic constraints extension, per [RFC 5280
  # section 4.2.1.9](https://tools.ietf.org/html/rfc5280#section-4.2.1.9)
  # @!attribute [rw] is_ca
  #   @return [::Boolean]
  #     Optional. Refers to the "CA" boolean field in the X.509 extension.
  #     When this value is missing, the basic constraints extension will be
  #     omitted from the certificate.
  # @!attribute [rw] max_issuer_path_length
  #   @return [::Integer]
  #     Optional. Refers to the path length constraint field in the X.509
  #     extension. For a CA certificate, this value describes the depth of
  #     subordinate CA certificates that are allowed. If this value is less than
  #     0, the request will fail. If this value is missing, the max path length
  #     will be omitted from the certificate.
  class CaOptions
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Describes the X.509 name constraints extension, per
  # https://tools.ietf.org/html/rfc5280#section-4.2.1.10
  # @!attribute [rw] critical
  #   @return [::Boolean]
  #     Indicates whether or not the name constraints are marked critical.
  # @!attribute [rw] permitted_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_uris
  #   @return [::Array<::String>]
  #     Contains the permitted URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  # @!attribute [rw] excluded_uris
  #   @return [::Array<::String>]
  #     Contains the excluded URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  class NameConstraints
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#key_usage::Google::Cloud::Security::PrivateCA::V1::KeyUsage

Returns Optional. Indicates the intended use for keys that correspond to a certificate.

Returns:



985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
# File 'proto_docs/google/cloud/security/privateca/v1/resources.rb', line 985

class X509Parameters
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Describes the X.509 basic constraints extension, per [RFC 5280
  # section 4.2.1.9](https://tools.ietf.org/html/rfc5280#section-4.2.1.9)
  # @!attribute [rw] is_ca
  #   @return [::Boolean]
  #     Optional. Refers to the "CA" boolean field in the X.509 extension.
  #     When this value is missing, the basic constraints extension will be
  #     omitted from the certificate.
  # @!attribute [rw] max_issuer_path_length
  #   @return [::Integer]
  #     Optional. Refers to the path length constraint field in the X.509
  #     extension. For a CA certificate, this value describes the depth of
  #     subordinate CA certificates that are allowed. If this value is less than
  #     0, the request will fail. If this value is missing, the max path length
  #     will be omitted from the certificate.
  class CaOptions
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Describes the X.509 name constraints extension, per
  # https://tools.ietf.org/html/rfc5280#section-4.2.1.10
  # @!attribute [rw] critical
  #   @return [::Boolean]
  #     Indicates whether or not the name constraints are marked critical.
  # @!attribute [rw] permitted_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_uris
  #   @return [::Array<::String>]
  #     Contains the permitted URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  # @!attribute [rw] excluded_uris
  #   @return [::Array<::String>]
  #     Contains the excluded URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  class NameConstraints
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#name_constraints::Google::Cloud::Security::PrivateCA::V1::X509Parameters::NameConstraints

Returns Optional. Describes the X.509 name constraints extension.

Returns:



985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
# File 'proto_docs/google/cloud/security/privateca/v1/resources.rb', line 985

class X509Parameters
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Describes the X.509 basic constraints extension, per [RFC 5280
  # section 4.2.1.9](https://tools.ietf.org/html/rfc5280#section-4.2.1.9)
  # @!attribute [rw] is_ca
  #   @return [::Boolean]
  #     Optional. Refers to the "CA" boolean field in the X.509 extension.
  #     When this value is missing, the basic constraints extension will be
  #     omitted from the certificate.
  # @!attribute [rw] max_issuer_path_length
  #   @return [::Integer]
  #     Optional. Refers to the path length constraint field in the X.509
  #     extension. For a CA certificate, this value describes the depth of
  #     subordinate CA certificates that are allowed. If this value is less than
  #     0, the request will fail. If this value is missing, the max path length
  #     will be omitted from the certificate.
  class CaOptions
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Describes the X.509 name constraints extension, per
  # https://tools.ietf.org/html/rfc5280#section-4.2.1.10
  # @!attribute [rw] critical
  #   @return [::Boolean]
  #     Indicates whether or not the name constraints are marked critical.
  # @!attribute [rw] permitted_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_uris
  #   @return [::Array<::String>]
  #     Contains the permitted URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  # @!attribute [rw] excluded_uris
  #   @return [::Array<::String>]
  #     Contains the excluded URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  class NameConstraints
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#policy_ids::Array<::Google::Cloud::Security::PrivateCA::V1::ObjectId>

Returns Optional. Describes the X.509 certificate policy object identifiers, per https://tools.ietf.org/html/rfc5280#section-4.2.1.4.

Returns:



985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
# File 'proto_docs/google/cloud/security/privateca/v1/resources.rb', line 985

class X509Parameters
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Describes the X.509 basic constraints extension, per [RFC 5280
  # section 4.2.1.9](https://tools.ietf.org/html/rfc5280#section-4.2.1.9)
  # @!attribute [rw] is_ca
  #   @return [::Boolean]
  #     Optional. Refers to the "CA" boolean field in the X.509 extension.
  #     When this value is missing, the basic constraints extension will be
  #     omitted from the certificate.
  # @!attribute [rw] max_issuer_path_length
  #   @return [::Integer]
  #     Optional. Refers to the path length constraint field in the X.509
  #     extension. For a CA certificate, this value describes the depth of
  #     subordinate CA certificates that are allowed. If this value is less than
  #     0, the request will fail. If this value is missing, the max path length
  #     will be omitted from the certificate.
  class CaOptions
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Describes the X.509 name constraints extension, per
  # https://tools.ietf.org/html/rfc5280#section-4.2.1.10
  # @!attribute [rw] critical
  #   @return [::Boolean]
  #     Indicates whether or not the name constraints are marked critical.
  # @!attribute [rw] permitted_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_dns_names
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_ip_ranges
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] excluded_email_addresses
  #   @return [::Array<::String>]
  #     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.
  # @!attribute [rw] permitted_uris
  #   @return [::Array<::String>]
  #     Contains the permitted URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  # @!attribute [rw] excluded_uris
  #   @return [::Array<::String>]
  #     Contains the excluded URIs that apply to the host part of the name.
  #     The value can be a hostname or a domain with a
  #     leading period (like `.example.com`)
  class NameConstraints
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end