/* * 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 verifiedpermissions-2021-12-01.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.VerifiedPermissions.Model { /// /// Container for the parameters to the CreatePolicyTemplate operation. /// Creates a policy template. A template can use placeholders for the principal and resource. /// A template must be instantiated into a policy by associating it with specific principals /// and resources to use for the placeholders. That instantiated policy can then be considered /// in authorization decisions. The instantiated policy works identically to any other /// policy, except that it is dynamically linked to the template. If the template changes, /// then any policies that are linked to that template are immediately updated as well. /// public partial class CreatePolicyTemplateRequest : AmazonVerifiedPermissionsRequest { private string _clientToken; private string _description; private string _policyStoreId; private string _statement; /// /// Gets and sets the property ClientToken. /// /// Specifies a unique, case-sensitive ID that you provide to ensure the idempotency of /// the request. This lets you safely retry the request without accidentally performing /// the same operation a second time. Passing the same value to a later call to an operation /// requires that you also pass the same value for all other parameters. We recommend /// that you use a UUID /// type of value.. /// /// /// /// If you don't provide this value, then Amazon Web Services generates a random one for /// you. /// /// /// /// If you retry the operation with the same ClientToken, but with different /// parameters, the retry fails with an IdempotentParameterMismatch error. /// /// [AWSProperty(Min=1, Max=64)] public string ClientToken { get { return this._clientToken; } set { this._clientToken = value; } } // Check to see if ClientToken property is set internal bool IsSetClientToken() { return this._clientToken != null; } /// /// Gets and sets the property Description. /// /// Specifies a description for the policy template. /// /// [AWSProperty(Min=0, Max=150)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property PolicyStoreId. /// /// The ID of the policy store in which to create the policy template. /// /// [AWSProperty(Required=true, Min=1, Max=200)] public string PolicyStoreId { get { return this._policyStoreId; } set { this._policyStoreId = value; } } // Check to see if PolicyStoreId property is set internal bool IsSetPolicyStoreId() { return this._policyStoreId != null; } /// /// Gets and sets the property Statement. /// /// Specifies the content that you want to use for the new policy template, written in /// the Cedar policy language. /// /// [AWSProperty(Required=true, Min=1, Max=10000)] public string Statement { get { return this._statement; } set { this._statement = value; } } // Check to see if Statement property is set internal bool IsSetStatement() { return this._statement != null; } } }