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

Structure that contains options for your certificate. Currently, you can use * this only to specify whether to opt in to or out of certificate transparency * logging. Some browsers require that public certificates issued for your domain * be recorded in a log. Certificates that are not logged typically generate a * browser error. Transparency makes it possible for you to detect SSL/TLS * certificates that have been mistakenly or maliciously issued for your domain. * For general information, see Certificate * Transparency Logging.

See Also:

AWS * API Reference

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

You can opt out of certificate transparency logging by specifying the * DISABLED option. Opt in by specifying ENABLED.

*/ inline const CertificateTransparencyLoggingPreference& GetCertificateTransparencyLoggingPreference() const{ return m_certificateTransparencyLoggingPreference; } /** *

You can opt out of certificate transparency logging by specifying the * DISABLED option. Opt in by specifying ENABLED.

*/ inline bool CertificateTransparencyLoggingPreferenceHasBeenSet() const { return m_certificateTransparencyLoggingPreferenceHasBeenSet; } /** *

You can opt out of certificate transparency logging by specifying the * DISABLED option. Opt in by specifying ENABLED.

*/ inline void SetCertificateTransparencyLoggingPreference(const CertificateTransparencyLoggingPreference& value) { m_certificateTransparencyLoggingPreferenceHasBeenSet = true; m_certificateTransparencyLoggingPreference = value; } /** *

You can opt out of certificate transparency logging by specifying the * DISABLED option. Opt in by specifying ENABLED.

*/ inline void SetCertificateTransparencyLoggingPreference(CertificateTransparencyLoggingPreference&& value) { m_certificateTransparencyLoggingPreferenceHasBeenSet = true; m_certificateTransparencyLoggingPreference = std::move(value); } /** *

You can opt out of certificate transparency logging by specifying the * DISABLED option. Opt in by specifying ENABLED.

*/ inline CertificateOptions& WithCertificateTransparencyLoggingPreference(const CertificateTransparencyLoggingPreference& value) { SetCertificateTransparencyLoggingPreference(value); return *this;} /** *

You can opt out of certificate transparency logging by specifying the * DISABLED option. Opt in by specifying ENABLED.

*/ inline CertificateOptions& WithCertificateTransparencyLoggingPreference(CertificateTransparencyLoggingPreference&& value) { SetCertificateTransparencyLoggingPreference(std::move(value)); return *this;} private: CertificateTransparencyLoggingPreference m_certificateTransparencyLoggingPreference; bool m_certificateTransparencyLoggingPreferenceHasBeenSet = false; }; } // namespace Model } // namespace ACM } // namespace Aws