/* * 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 PutGroupPolicy operation. /// Adds or updates an inline policy document that is embedded in the specified IAM group. /// /// /// /// A user can also have managed policies attached to it. To attach a managed policy to /// a group, use AttachGroupPolicy. To create a new managed policy, use CreatePolicy. /// For information about policies, see Managed /// Policies and Inline Policies in the IAM User Guide. /// /// /// /// For information about limits on the number of inline policies that you can embed in /// a group, see Limitations /// on IAM Entities in the IAM User Guide. /// /// /// /// Because policy documents can be large, you should use POST rather than GET when calling /// PutGroupPolicy. For general information about using the Query API with /// IAM, go to Making /// Query Requests in the IAM User Guide. /// /// /// public partial class PutGroupPolicyRequest : AmazonIdentityManagementServiceRequest { private string _groupName; private string _policyDocument; private string _policyName; /// /// Empty constructor used to set properties independently even when a simple constructor is available /// public PutGroupPolicyRequest() { } /// /// Instantiates PutGroupPolicyRequest with the parameterized properties /// /// The name of the group to associate the policy with. 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: _+=,.@-. /// The name of the policy document. 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: _+=,.@- /// The policy document. You must provide policies in JSON format in IAM. However, for AWS CloudFormation templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS CloudFormation always converts a YAML policy to JSON format before submitting it to IAM. The regex pattern used to validate this parameter is a string of characters consisting of the following: public PutGroupPolicyRequest(string groupName, string policyName, string policyDocument) { _groupName = groupName; _policyName = policyName; _policyDocument = policyDocument; } /// /// Gets and sets the property GroupName. /// /// The name of the group to associate the policy with. /// /// /// /// 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 GroupName { get { return this._groupName; } set { this._groupName = value; } } // Check to see if GroupName property is set internal bool IsSetGroupName() { return this._groupName != null; } /// /// Gets and sets the property PolicyDocument. /// /// The policy document. /// /// /// /// You must provide policies in JSON format in IAM. However, for AWS CloudFormation templates /// formatted in YAML, you can provide the policy in JSON or YAML format. AWS CloudFormation /// always converts a YAML policy to JSON format before submitting it to IAM. /// /// /// /// The regex pattern used to validate this /// parameter is a string of characters consisting of the following: /// /// /// [AWSProperty(Required=true, Min=1, Max=131072)] public string PolicyDocument { get { return this._policyDocument; } set { this._policyDocument = value; } } // Check to see if PolicyDocument property is set internal bool IsSetPolicyDocument() { return this._policyDocument != null; } /// /// Gets and sets the property PolicyName. /// /// The name of the policy document. /// /// /// /// 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 PolicyName { get { return this._policyName; } set { this._policyName = value; } } // Check to see if PolicyName property is set internal bool IsSetPolicyName() { return this._policyName != null; } } }