/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the acm-pca-2017-08-22.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ACMPCA.Model
{
///
/// Contains information about the certificate subject. The Subject
field
/// in the certificate identifies the entity that owns or controls the public key in the
/// certificate. The entity can be a user, computer, device, or service. The Subject
///
must contain an X.500 distinguished name (DN). A DN is a sequence of relative
/// distinguished names (RDNs). The RDNs are separated by commas in the certificate.
///
public partial class ASN1Subject
{
private string _commonName;
private string _country;
private List _customAttributes = new List();
private string _distinguishedNameQualifier;
private string _generationQualifier;
private string _givenName;
private string _initials;
private string _locality;
private string _organization;
private string _organizationalUnit;
private string _pseudonym;
private string _serialNumber;
private string _state;
private string _surname;
private string _title;
///
/// Gets and sets the property CommonName.
///
/// For CA and end-entity certificates in a private PKI, the common name (CN) can be any
/// string within the length limit.
///
///
///
/// Note: In publicly trusted certificates, the common name must be a fully qualified
/// domain name (FQDN) associated with the certificate subject.
///
///
[AWSProperty(Min=0, Max=64)]
public string CommonName
{
get { return this._commonName; }
set { this._commonName = value; }
}
// Check to see if CommonName property is set
internal bool IsSetCommonName()
{
return this._commonName != null;
}
///
/// Gets and sets the property Country.
///
/// Two-digit code that specifies the country in which the certificate subject located.
///
///
[AWSProperty(Min=2, Max=2)]
public string Country
{
get { return this._country; }
set { this._country = value; }
}
// Check to see if Country property is set
internal bool IsSetCountry()
{
return this._country != null;
}
///
/// Gets and sets the property CustomAttributes.
///
/// Contains a sequence of one or more X.500 relative distinguished names (RDNs), each
/// of which consists of an object identifier (OID) and a value. For more information,
/// see NIST’s definition of Object
/// Identifier (OID).
///
///
///
/// Custom attributes cannot be used in combination with standard attributes.
///
///
///
[AWSProperty(Min=1, Max=30)]
public List CustomAttributes
{
get { return this._customAttributes; }
set { this._customAttributes = value; }
}
// Check to see if CustomAttributes property is set
internal bool IsSetCustomAttributes()
{
return this._customAttributes != null && this._customAttributes.Count > 0;
}
///
/// Gets and sets the property DistinguishedNameQualifier.
///
/// Disambiguating information for the certificate subject.
///
///
[AWSProperty(Min=0, Max=64)]
public string DistinguishedNameQualifier
{
get { return this._distinguishedNameQualifier; }
set { this._distinguishedNameQualifier = value; }
}
// Check to see if DistinguishedNameQualifier property is set
internal bool IsSetDistinguishedNameQualifier()
{
return this._distinguishedNameQualifier != null;
}
///
/// Gets and sets the property GenerationQualifier.
///
/// Typically a qualifier appended to the name of an individual. Examples include Jr.
/// for junior, Sr. for senior, and III for third.
///
///
[AWSProperty(Min=0, Max=3)]
public string GenerationQualifier
{
get { return this._generationQualifier; }
set { this._generationQualifier = value; }
}
// Check to see if GenerationQualifier property is set
internal bool IsSetGenerationQualifier()
{
return this._generationQualifier != null;
}
///
/// Gets and sets the property GivenName.
///
/// First name.
///
///
[AWSProperty(Min=0, Max=16)]
public string GivenName
{
get { return this._givenName; }
set { this._givenName = value; }
}
// Check to see if GivenName property is set
internal bool IsSetGivenName()
{
return this._givenName != null;
}
///
/// Gets and sets the property Initials.
///
/// Concatenation that typically contains the first letter of the GivenName, the
/// first letter of the middle name if one exists, and the first letter of the Surname.
///
///
[AWSProperty(Min=0, Max=5)]
public string Initials
{
get { return this._initials; }
set { this._initials = value; }
}
// Check to see if Initials property is set
internal bool IsSetInitials()
{
return this._initials != null;
}
///
/// Gets and sets the property Locality.
///
/// The locality (such as a city or town) in which the certificate subject is located.
///
///
[AWSProperty(Min=0, Max=128)]
public string Locality
{
get { return this._locality; }
set { this._locality = value; }
}
// Check to see if Locality property is set
internal bool IsSetLocality()
{
return this._locality != null;
}
///
/// Gets and sets the property Organization.
///
/// Legal name of the organization with which the certificate subject is affiliated.
///
///
[AWSProperty(Min=0, Max=64)]
public string Organization
{
get { return this._organization; }
set { this._organization = value; }
}
// Check to see if Organization property is set
internal bool IsSetOrganization()
{
return this._organization != null;
}
///
/// Gets and sets the property OrganizationalUnit.
///
/// A subdivision or unit of the organization (such as sales or finance) with which the
/// certificate subject is affiliated.
///
///
[AWSProperty(Min=0, Max=64)]
public string OrganizationalUnit
{
get { return this._organizationalUnit; }
set { this._organizationalUnit = value; }
}
// Check to see if OrganizationalUnit property is set
internal bool IsSetOrganizationalUnit()
{
return this._organizationalUnit != null;
}
///
/// Gets and sets the property Pseudonym.
///
/// Typically a shortened version of a longer GivenName. For example, Jonathan
/// is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza.
///
///
[AWSProperty(Min=0, Max=128)]
public string Pseudonym
{
get { return this._pseudonym; }
set { this._pseudonym = value; }
}
// Check to see if Pseudonym property is set
internal bool IsSetPseudonym()
{
return this._pseudonym != null;
}
///
/// Gets and sets the property SerialNumber.
///
/// The certificate serial number.
///
///
[AWSProperty(Min=0, Max=64)]
public string SerialNumber
{
get { return this._serialNumber; }
set { this._serialNumber = value; }
}
// Check to see if SerialNumber property is set
internal bool IsSetSerialNumber()
{
return this._serialNumber != null;
}
///
/// Gets and sets the property State.
///
/// State in which the subject of the certificate is located.
///
///
[AWSProperty(Min=0, Max=128)]
public string State
{
get { return this._state; }
set { this._state = value; }
}
// Check to see if State property is set
internal bool IsSetState()
{
return this._state != null;
}
///
/// Gets and sets the property Surname.
///
/// Family name. In the US and the UK, for example, the surname of an individual is ordered
/// last. In Asian cultures the surname is typically ordered first.
///
///
[AWSProperty(Min=0, Max=40)]
public string Surname
{
get { return this._surname; }
set { this._surname = value; }
}
// Check to see if Surname property is set
internal bool IsSetSurname()
{
return this._surname != null;
}
///
/// Gets and sets the property Title.
///
/// A title such as Mr. or Ms., which is pre-pended to the name to refer formally to the
/// certificate subject.
///
///
[AWSProperty(Min=0, Max=64)]
public string Title
{
get { return this._title; }
set { this._title = value; }
}
// Check to see if Title property is set
internal bool IsSetTitle()
{
return this._title != null;
}
}
}