/*
* Copyright 2010-2014 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 iam-2010-05-08.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.IdentityManagement.Model
{
///
/// Container for the parameters to the UpdateServerCertificate operation.
/// Updates the name and/or the path of the specified server certificate stored in IAM.
///
///
///
/// For more information about working with server certificates, see Working
/// with Server Certificates in the IAM User Guide. This topic also includes
/// a list of AWS services that can use the server certificates that you manage with IAM.
///
///
///
/// You should understand the implications of changing a server certificate's path or
/// name. For more information, see Renaming
/// a Server Certificate in the IAM User Guide.
///
///
///
/// The person making the request (the principal), must have permission to change the
/// server certificate with the old name and the new name. For example, to change the
/// certificate named ProductionCert
to ProdCert
, the principal
/// must have a policy that allows them to update both certificates. If the principal
/// has permission to update the ProductionCert
group, but not the ProdCert
/// certificate, then the update fails. For more information about permissions, see Access Management
/// in the IAM User Guide.
///
///
///
public partial class UpdateServerCertificateRequest : AmazonIdentityManagementServiceRequest
{
private string _newPath;
private string _newServerCertificateName;
private string _serverCertificateName;
///
/// Empty constructor used to set properties independently even when a simple constructor is available
///
public UpdateServerCertificateRequest() { }
///
/// Instantiates UpdateServerCertificateRequest with the parameterized properties
///
/// The name of the server certificate that you want to update. This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-
public UpdateServerCertificateRequest(string serverCertificateName)
{
_serverCertificateName = serverCertificateName;
}
///
/// Gets and sets the property NewPath.
///
/// The new path for the server certificate. Include this only if you are updating the
/// server certificate's path.
///
///
///
/// This parameter allows (through its regex
/// pattern) a string of characters consisting of either a forward slash (/) by itself
/// or a string that must begin and end with forward slashes. In addition, it can contain
/// any ASCII character from the ! (\u0021
) through the DEL character (\u007F
),
/// including most punctuation characters, digits, and upper and lowercased letters.
///
///
[AWSProperty(Min=1, Max=512)]
public string NewPath
{
get { return this._newPath; }
set { this._newPath = value; }
}
// Check to see if NewPath property is set
internal bool IsSetNewPath()
{
return this._newPath != null;
}
///
/// Gets and sets the property NewServerCertificateName.
///
/// The new name for the server certificate. Include this only if you are updating the
/// server certificate's name. The name of the certificate cannot contain any spaces.
///
///
///
/// This parameter allows (through its regex
/// pattern) a string of characters consisting of upper and lowercase alphanumeric
/// characters with no spaces. You can also include any of the following characters: _+=,.@-
///
///
[AWSProperty(Min=1, Max=128)]
public string NewServerCertificateName
{
get { return this._newServerCertificateName; }
set { this._newServerCertificateName = value; }
}
// Check to see if NewServerCertificateName property is set
internal bool IsSetNewServerCertificateName()
{
return this._newServerCertificateName != null;
}
///
/// Gets and sets the property ServerCertificateName.
///
/// The name of the server certificate that you want to update.
///
///
///
/// This parameter allows (through its regex
/// pattern) a string of characters consisting of upper and lowercase alphanumeric
/// characters with no spaces. You can also include any of the following characters: _+=,.@-
///
///
[AWSProperty(Required=true, Min=1, Max=128)]
public string ServerCertificateName
{
get { return this._serverCertificateName; }
set { this._serverCertificateName = value; }
}
// Check to see if ServerCertificateName property is set
internal bool IsSetServerCertificateName()
{
return this._serverCertificateName != null;
}
}
}