/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SecurityHub { namespace Model { /** *

Details about an Secrets Manager secret.

See Also:

AWS * API Reference

*/ class AwsSecretsManagerSecretDetails { public: AWS_SECURITYHUB_API AwsSecretsManagerSecretDetails(); AWS_SECURITYHUB_API AwsSecretsManagerSecretDetails(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsSecretsManagerSecretDetails& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Defines the rotation schedule for the secret.

*/ inline const AwsSecretsManagerSecretRotationRules& GetRotationRules() const{ return m_rotationRules; } /** *

Defines the rotation schedule for the secret.

*/ inline bool RotationRulesHasBeenSet() const { return m_rotationRulesHasBeenSet; } /** *

Defines the rotation schedule for the secret.

*/ inline void SetRotationRules(const AwsSecretsManagerSecretRotationRules& value) { m_rotationRulesHasBeenSet = true; m_rotationRules = value; } /** *

Defines the rotation schedule for the secret.

*/ inline void SetRotationRules(AwsSecretsManagerSecretRotationRules&& value) { m_rotationRulesHasBeenSet = true; m_rotationRules = std::move(value); } /** *

Defines the rotation schedule for the secret.

*/ inline AwsSecretsManagerSecretDetails& WithRotationRules(const AwsSecretsManagerSecretRotationRules& value) { SetRotationRules(value); return *this;} /** *

Defines the rotation schedule for the secret.

*/ inline AwsSecretsManagerSecretDetails& WithRotationRules(AwsSecretsManagerSecretRotationRules&& value) { SetRotationRules(std::move(value)); return *this;} /** *

Whether the rotation occurred within the specified rotation frequency.

*/ inline bool GetRotationOccurredWithinFrequency() const{ return m_rotationOccurredWithinFrequency; } /** *

Whether the rotation occurred within the specified rotation frequency.

*/ inline bool RotationOccurredWithinFrequencyHasBeenSet() const { return m_rotationOccurredWithinFrequencyHasBeenSet; } /** *

Whether the rotation occurred within the specified rotation frequency.

*/ inline void SetRotationOccurredWithinFrequency(bool value) { m_rotationOccurredWithinFrequencyHasBeenSet = true; m_rotationOccurredWithinFrequency = value; } /** *

Whether the rotation occurred within the specified rotation frequency.

*/ inline AwsSecretsManagerSecretDetails& WithRotationOccurredWithinFrequency(bool value) { SetRotationOccurredWithinFrequency(value); return *this;} /** *

The ARN, Key ID, or alias of the KMS key used to encrypt the * SecretString or SecretBinary values for versions of * this secret.

*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *

The ARN, Key ID, or alias of the KMS key used to encrypt the * SecretString or SecretBinary values for versions of * this secret.

*/ inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; } /** *

The ARN, Key ID, or alias of the KMS key used to encrypt the * SecretString or SecretBinary values for versions of * this secret.

*/ inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; } /** *

The ARN, Key ID, or alias of the KMS key used to encrypt the * SecretString or SecretBinary values for versions of * this secret.

*/ inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); } /** *

The ARN, Key ID, or alias of the KMS key used to encrypt the * SecretString or SecretBinary values for versions of * this secret.

*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); } /** *

The ARN, Key ID, or alias of the KMS key used to encrypt the * SecretString or SecretBinary values for versions of * this secret.

*/ inline AwsSecretsManagerSecretDetails& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *

The ARN, Key ID, or alias of the KMS key used to encrypt the * SecretString or SecretBinary values for versions of * this secret.

*/ inline AwsSecretsManagerSecretDetails& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *

The ARN, Key ID, or alias of the KMS key used to encrypt the * SecretString or SecretBinary values for versions of * this secret.

*/ inline AwsSecretsManagerSecretDetails& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *

Whether rotation is enabled.

*/ inline bool GetRotationEnabled() const{ return m_rotationEnabled; } /** *

Whether rotation is enabled.

*/ inline bool RotationEnabledHasBeenSet() const { return m_rotationEnabledHasBeenSet; } /** *

Whether rotation is enabled.

*/ inline void SetRotationEnabled(bool value) { m_rotationEnabledHasBeenSet = true; m_rotationEnabled = value; } /** *

Whether rotation is enabled.

*/ inline AwsSecretsManagerSecretDetails& WithRotationEnabled(bool value) { SetRotationEnabled(value); return *this;} /** *

The ARN of the Lambda function that rotates the secret.

*/ inline const Aws::String& GetRotationLambdaArn() const{ return m_rotationLambdaArn; } /** *

The ARN of the Lambda function that rotates the secret.

*/ inline bool RotationLambdaArnHasBeenSet() const { return m_rotationLambdaArnHasBeenSet; } /** *

The ARN of the Lambda function that rotates the secret.

*/ inline void SetRotationLambdaArn(const Aws::String& value) { m_rotationLambdaArnHasBeenSet = true; m_rotationLambdaArn = value; } /** *

The ARN of the Lambda function that rotates the secret.

*/ inline void SetRotationLambdaArn(Aws::String&& value) { m_rotationLambdaArnHasBeenSet = true; m_rotationLambdaArn = std::move(value); } /** *

The ARN of the Lambda function that rotates the secret.

*/ inline void SetRotationLambdaArn(const char* value) { m_rotationLambdaArnHasBeenSet = true; m_rotationLambdaArn.assign(value); } /** *

The ARN of the Lambda function that rotates the secret.

*/ inline AwsSecretsManagerSecretDetails& WithRotationLambdaArn(const Aws::String& value) { SetRotationLambdaArn(value); return *this;} /** *

The ARN of the Lambda function that rotates the secret.

*/ inline AwsSecretsManagerSecretDetails& WithRotationLambdaArn(Aws::String&& value) { SetRotationLambdaArn(std::move(value)); return *this;} /** *

The ARN of the Lambda function that rotates the secret.

*/ inline AwsSecretsManagerSecretDetails& WithRotationLambdaArn(const char* value) { SetRotationLambdaArn(value); return *this;} /** *

Whether the secret is deleted.

*/ inline bool GetDeleted() const{ return m_deleted; } /** *

Whether the secret is deleted.

*/ inline bool DeletedHasBeenSet() const { return m_deletedHasBeenSet; } /** *

Whether the secret is deleted.

*/ inline void SetDeleted(bool value) { m_deletedHasBeenSet = true; m_deleted = value; } /** *

Whether the secret is deleted.

*/ inline AwsSecretsManagerSecretDetails& WithDeleted(bool value) { SetDeleted(value); return *this;} /** *

The name of the secret.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the secret.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the secret.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the secret.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the secret.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the secret.

*/ inline AwsSecretsManagerSecretDetails& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the secret.

*/ inline AwsSecretsManagerSecretDetails& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the secret.

*/ inline AwsSecretsManagerSecretDetails& WithName(const char* value) { SetName(value); return *this;} /** *

The user-provided description of the secret.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The user-provided description of the secret.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

The user-provided description of the secret.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

The user-provided description of the secret.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

The user-provided description of the secret.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

The user-provided description of the secret.

*/ inline AwsSecretsManagerSecretDetails& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The user-provided description of the secret.

*/ inline AwsSecretsManagerSecretDetails& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The user-provided description of the secret.

*/ inline AwsSecretsManagerSecretDetails& WithDescription(const char* value) { SetDescription(value); return *this;} private: AwsSecretsManagerSecretRotationRules m_rotationRules; bool m_rotationRulesHasBeenSet = false; bool m_rotationOccurredWithinFrequency; bool m_rotationOccurredWithinFrequencyHasBeenSet = false; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet = false; bool m_rotationEnabled; bool m_rotationEnabledHasBeenSet = false; Aws::String m_rotationLambdaArn; bool m_rotationLambdaArnHasBeenSet = false; bool m_deleted; bool m_deletedHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws