namespace Amazon.Lambda.APIGatewayEvents
{
using System.Collections.Generic;
///
/// An object representing an IAM policy.
///
public class APIGatewayCustomAuthorizerPolicy
{
///
/// Gets or sets the IAM API version.
///
#if NETCOREAPP_3_1
[System.Text.Json.Serialization.JsonPropertyName("Version")]
#endif
public string Version { get; set; } = "2012-10-17";
///
/// Gets or sets a list of IAM policy statements to apply.
///
#if NETCOREAPP_3_1
[System.Text.Json.Serialization.JsonPropertyName("Statement")]
#endif
public List Statement { get; set; } = new List();
///
/// A class representing an IAM Policy Statement.
///
public class IAMPolicyStatement
{
///
/// Gets or sets the effect the statement has.
///
#if NETCOREAPP_3_1
[System.Text.Json.Serialization.JsonPropertyName("Effect")]
#endif
public string Effect { get; set; } = "Allow";
///
/// Gets or sets the action/s the statement has.
///
#if NETCOREAPP_3_1
[System.Text.Json.Serialization.JsonPropertyName("Action")]
#endif
public HashSet Action { get; set; }
///
/// Gets or sets the resources the statement applies to.
///
#if NETCOREAPP_3_1
[System.Text.Json.Serialization.JsonPropertyName("Resource")]
#endif
public HashSet Resource { get; set; }
}
}
}