/* * 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 accessanalyzer-2019-11-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.AccessAnalyzer.Model { /// /// Proposed access control configuration for a KMS key. You can propose a configuration /// for a new KMS key or an existing KMS key that you own by specifying the key policy /// and KMS grant configuration. If the configuration is for an existing key and you do /// not specify the key policy, the access preview uses the existing policy for the key. /// If the access preview is for a new resource and you do not specify the key policy, /// then the access preview uses the default key policy. The proposed key policy cannot /// be an empty string. For more information, see Default /// key policy. For more information about key policy limits, see Resource /// quotas. /// public partial class KmsKeyConfiguration { private List _grants = new List(); private Dictionary _keyPolicies = new Dictionary(); /// /// Gets and sets the property Grants. /// /// A list of proposed grant configurations for the KMS key. If the proposed grant configuration /// is for an existing key, the access preview uses the proposed list of grant configurations /// in place of the existing grants. Otherwise, the access preview uses the existing grants /// for the key. /// /// public List Grants { get { return this._grants; } set { this._grants = value; } } // Check to see if Grants property is set internal bool IsSetGrants() { return this._grants != null && this._grants.Count > 0; } /// /// Gets and sets the property KeyPolicies. /// /// Resource policy configuration for the KMS key. The only valid value for the name of /// the key policy is default. For more information, see Default /// key policy. /// /// public Dictionary KeyPolicies { get { return this._keyPolicies; } set { this._keyPolicies = value; } } // Check to see if KeyPolicies property is set internal bool IsSetKeyPolicies() { return this._keyPolicies != null && this._keyPolicies.Count > 0; } } }