-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Amazon Transfer Family SDK.
--
-- Derived from API version 2018-11-05 of the AWS service
-- descriptions, licensed under Apache 2.0.
--
-- The types from this library are intended to be used with
-- amazonka, which provides mechanisms for specifying AuthN/AuthZ
-- information, sending requests, and receiving responses.
--
-- It is recommended to use generic lenses or optics from packages such
-- as generic-lens or optics to modify optional fields and
-- deconstruct responses.
--
-- Generated lenses can be found in Amazonka.Transfer.Lens and are
-- suitable for use with a lens package such as lens or
-- lens-family-core.
--
-- See Amazonka.Transfer and the AWS documentation to get
-- started.
@package amazonka-transfer
@version 2.0
module Amazonka.Transfer.Types.AgreementStatusType
newtype AgreementStatusType
AgreementStatusType' :: Text -> AgreementStatusType
[fromAgreementStatusType] :: AgreementStatusType -> Text
pattern AgreementStatusType_ACTIVE :: AgreementStatusType
pattern AgreementStatusType_INACTIVE :: AgreementStatusType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance GHC.Generics.Generic Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance GHC.Classes.Ord Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance GHC.Classes.Eq Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance GHC.Read.Read Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
instance GHC.Show.Show Amazonka.Transfer.Types.AgreementStatusType.AgreementStatusType
module Amazonka.Transfer.Types.As2Transport
newtype As2Transport
As2Transport' :: Text -> As2Transport
[fromAs2Transport] :: As2Transport -> Text
pattern As2Transport_HTTP :: As2Transport
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.As2Transport.As2Transport
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.As2Transport.As2Transport
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.As2Transport.As2Transport
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.As2Transport.As2Transport
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.As2Transport.As2Transport
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.As2Transport.As2Transport
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.As2Transport.As2Transport
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.As2Transport.As2Transport
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.As2Transport.As2Transport
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.As2Transport.As2Transport
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.As2Transport.As2Transport
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.As2Transport.As2Transport
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.As2Transport.As2Transport
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.As2Transport.As2Transport
instance GHC.Generics.Generic Amazonka.Transfer.Types.As2Transport.As2Transport
instance GHC.Classes.Ord Amazonka.Transfer.Types.As2Transport.As2Transport
instance GHC.Classes.Eq Amazonka.Transfer.Types.As2Transport.As2Transport
instance GHC.Read.Read Amazonka.Transfer.Types.As2Transport.As2Transport
instance GHC.Show.Show Amazonka.Transfer.Types.As2Transport.As2Transport
module Amazonka.Transfer.Types.CertificateStatusType
newtype CertificateStatusType
CertificateStatusType' :: Text -> CertificateStatusType
[fromCertificateStatusType] :: CertificateStatusType -> Text
pattern CertificateStatusType_ACTIVE :: CertificateStatusType
pattern CertificateStatusType_INACTIVE :: CertificateStatusType
pattern CertificateStatusType_PENDING_ROTATION :: CertificateStatusType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance GHC.Generics.Generic Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance GHC.Classes.Ord Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance GHC.Classes.Eq Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance GHC.Read.Read Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
instance GHC.Show.Show Amazonka.Transfer.Types.CertificateStatusType.CertificateStatusType
module Amazonka.Transfer.Types.CertificateType
newtype CertificateType
CertificateType' :: Text -> CertificateType
[fromCertificateType] :: CertificateType -> Text
pattern CertificateType_CERTIFICATE :: CertificateType
pattern CertificateType_CERTIFICATE_WITH_PRIVATE_KEY :: CertificateType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.CertificateType.CertificateType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.CertificateType.CertificateType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.CertificateType.CertificateType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.CertificateType.CertificateType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.CertificateType.CertificateType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.CertificateType.CertificateType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.CertificateType.CertificateType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.CertificateType.CertificateType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.CertificateType.CertificateType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.CertificateType.CertificateType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.CertificateType.CertificateType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.CertificateType.CertificateType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.CertificateType.CertificateType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.CertificateType.CertificateType
instance GHC.Generics.Generic Amazonka.Transfer.Types.CertificateType.CertificateType
instance GHC.Classes.Ord Amazonka.Transfer.Types.CertificateType.CertificateType
instance GHC.Classes.Eq Amazonka.Transfer.Types.CertificateType.CertificateType
instance GHC.Read.Read Amazonka.Transfer.Types.CertificateType.CertificateType
instance GHC.Show.Show Amazonka.Transfer.Types.CertificateType.CertificateType
module Amazonka.Transfer.Types.CertificateUsageType
newtype CertificateUsageType
CertificateUsageType' :: Text -> CertificateUsageType
[fromCertificateUsageType] :: CertificateUsageType -> Text
pattern CertificateUsageType_ENCRYPTION :: CertificateUsageType
pattern CertificateUsageType_SIGNING :: CertificateUsageType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance GHC.Generics.Generic Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance GHC.Classes.Ord Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance GHC.Classes.Eq Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance GHC.Read.Read Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
instance GHC.Show.Show Amazonka.Transfer.Types.CertificateUsageType.CertificateUsageType
module Amazonka.Transfer.Types.CompressionEnum
newtype CompressionEnum
CompressionEnum' :: Text -> CompressionEnum
[fromCompressionEnum] :: CompressionEnum -> Text
pattern CompressionEnum_DISABLED :: CompressionEnum
pattern CompressionEnum_ZLIB :: CompressionEnum
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance GHC.Generics.Generic Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance GHC.Classes.Ord Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance GHC.Classes.Eq Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance GHC.Read.Read Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
instance GHC.Show.Show Amazonka.Transfer.Types.CompressionEnum.CompressionEnum
module Amazonka.Transfer.Types.CustomStepDetails
-- | Each step type has its own StepDetails structure.
--
-- See: newCustomStepDetails smart constructor.
data CustomStepDetails
CustomStepDetails' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Natural -> CustomStepDetails
-- | The name of the step, used as an identifier.
[$sel:name:CustomStepDetails'] :: CustomStepDetails -> Maybe Text
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
[$sel:sourceFileLocation:CustomStepDetails'] :: CustomStepDetails -> Maybe Text
-- | The ARN for the lambda function that is being called.
[$sel:target:CustomStepDetails'] :: CustomStepDetails -> Maybe Text
-- | Timeout, in seconds, for the step.
[$sel:timeoutSeconds:CustomStepDetails'] :: CustomStepDetails -> Maybe Natural
-- | Create a value of CustomStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:CustomStepDetails', customStepDetails_name -
-- The name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:CustomStepDetails',
-- customStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
--
-- $sel:target:CustomStepDetails', customStepDetails_target
-- - The ARN for the lambda function that is being called.
--
-- $sel:timeoutSeconds:CustomStepDetails',
-- customStepDetails_timeoutSeconds - Timeout, in seconds, for the
-- step.
newCustomStepDetails :: CustomStepDetails
-- | The name of the step, used as an identifier.
customStepDetails_name :: Lens' CustomStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
customStepDetails_sourceFileLocation :: Lens' CustomStepDetails (Maybe Text)
-- | The ARN for the lambda function that is being called.
customStepDetails_target :: Lens' CustomStepDetails (Maybe Text)
-- | Timeout, in seconds, for the step.
customStepDetails_timeoutSeconds :: Lens' CustomStepDetails (Maybe Natural)
instance GHC.Generics.Generic Amazonka.Transfer.Types.CustomStepDetails.CustomStepDetails
instance GHC.Show.Show Amazonka.Transfer.Types.CustomStepDetails.CustomStepDetails
instance GHC.Read.Read Amazonka.Transfer.Types.CustomStepDetails.CustomStepDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.CustomStepDetails.CustomStepDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.CustomStepDetails.CustomStepDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.CustomStepDetails.CustomStepDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.CustomStepDetails.CustomStepDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.CustomStepDetails.CustomStepDetails
module Amazonka.Transfer.Types.CustomStepStatus
newtype CustomStepStatus
CustomStepStatus' :: Text -> CustomStepStatus
[fromCustomStepStatus] :: CustomStepStatus -> Text
pattern CustomStepStatus_FAILURE :: CustomStepStatus
pattern CustomStepStatus_SUCCESS :: CustomStepStatus
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance GHC.Generics.Generic Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance GHC.Classes.Ord Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance GHC.Classes.Eq Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance GHC.Read.Read Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
instance GHC.Show.Show Amazonka.Transfer.Types.CustomStepStatus.CustomStepStatus
module Amazonka.Transfer.Types.DeleteStepDetails
-- | The name of the step, used to identify the delete step.
--
-- See: newDeleteStepDetails smart constructor.
data DeleteStepDetails
DeleteStepDetails' :: Maybe Text -> Maybe Text -> DeleteStepDetails
-- | The name of the step, used as an identifier.
[$sel:name:DeleteStepDetails'] :: DeleteStepDetails -> Maybe Text
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
[$sel:sourceFileLocation:DeleteStepDetails'] :: DeleteStepDetails -> Maybe Text
-- | Create a value of DeleteStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:DeleteStepDetails', deleteStepDetails_name -
-- The name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:DeleteStepDetails',
-- deleteStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
newDeleteStepDetails :: DeleteStepDetails
-- | The name of the step, used as an identifier.
deleteStepDetails_name :: Lens' DeleteStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
deleteStepDetails_sourceFileLocation :: Lens' DeleteStepDetails (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.DeleteStepDetails.DeleteStepDetails
instance GHC.Show.Show Amazonka.Transfer.Types.DeleteStepDetails.DeleteStepDetails
instance GHC.Read.Read Amazonka.Transfer.Types.DeleteStepDetails.DeleteStepDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.DeleteStepDetails.DeleteStepDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DeleteStepDetails.DeleteStepDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DeleteStepDetails.DeleteStepDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DeleteStepDetails.DeleteStepDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.DeleteStepDetails.DeleteStepDetails
module Amazonka.Transfer.Types.DescribedSecurityPolicy
-- | Describes the properties of a security policy that was specified. For
-- more information about security policies, see Working with security
-- policies.
--
-- See: newDescribedSecurityPolicy smart constructor.
data DescribedSecurityPolicy
DescribedSecurityPolicy' :: Maybe Bool -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Text -> DescribedSecurityPolicy
-- | Specifies whether this policy enables Federal Information Processing
-- Standards (FIPS).
[$sel:fips:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe Bool
-- | Specifies the enabled Secure Shell (SSH) cipher encryption algorithms
-- in the security policy that is attached to the server.
[$sel:sshCiphers:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe [Text]
-- | Specifies the enabled SSH key exchange (KEX) encryption algorithms in
-- the security policy that is attached to the server.
[$sel:sshKexs:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe [Text]
-- | Specifies the enabled SSH message authentication code (MAC) encryption
-- algorithms in the security policy that is attached to the server.
[$sel:sshMacs:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe [Text]
-- | Specifies the enabled Transport Layer Security (TLS) cipher encryption
-- algorithms in the security policy that is attached to the server.
[$sel:tlsCiphers:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe [Text]
-- | Specifies the name of the security policy that is attached to the
-- server.
[$sel:securityPolicyName:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Text
-- | Create a value of DescribedSecurityPolicy with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:fips:DescribedSecurityPolicy',
-- describedSecurityPolicy_fips - Specifies whether this policy
-- enables Federal Information Processing Standards (FIPS).
--
-- $sel:sshCiphers:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshCiphers - Specifies the enabled
-- Secure Shell (SSH) cipher encryption algorithms in the security policy
-- that is attached to the server.
--
-- $sel:sshKexs:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshKexs - Specifies the enabled SSH key
-- exchange (KEX) encryption algorithms in the security policy that is
-- attached to the server.
--
-- $sel:sshMacs:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshMacs - Specifies the enabled SSH
-- message authentication code (MAC) encryption algorithms in the
-- security policy that is attached to the server.
--
-- $sel:tlsCiphers:DescribedSecurityPolicy',
-- describedSecurityPolicy_tlsCiphers - Specifies the enabled
-- Transport Layer Security (TLS) cipher encryption algorithms in the
-- security policy that is attached to the server.
--
-- $sel:securityPolicyName:DescribedSecurityPolicy',
-- describedSecurityPolicy_securityPolicyName - Specifies the name
-- of the security policy that is attached to the server.
newDescribedSecurityPolicy :: Text -> DescribedSecurityPolicy
-- | Specifies whether this policy enables Federal Information Processing
-- Standards (FIPS).
describedSecurityPolicy_fips :: Lens' DescribedSecurityPolicy (Maybe Bool)
-- | Specifies the enabled Secure Shell (SSH) cipher encryption algorithms
-- in the security policy that is attached to the server.
describedSecurityPolicy_sshCiphers :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled SSH key exchange (KEX) encryption algorithms in
-- the security policy that is attached to the server.
describedSecurityPolicy_sshKexs :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled SSH message authentication code (MAC) encryption
-- algorithms in the security policy that is attached to the server.
describedSecurityPolicy_sshMacs :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled Transport Layer Security (TLS) cipher encryption
-- algorithms in the security policy that is attached to the server.
describedSecurityPolicy_tlsCiphers :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the name of the security policy that is attached to the
-- server.
describedSecurityPolicy_securityPolicyName :: Lens' DescribedSecurityPolicy Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedSecurityPolicy.DescribedSecurityPolicy
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedSecurityPolicy.DescribedSecurityPolicy
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedSecurityPolicy.DescribedSecurityPolicy
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedSecurityPolicy.DescribedSecurityPolicy
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedSecurityPolicy.DescribedSecurityPolicy
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedSecurityPolicy.DescribedSecurityPolicy
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedSecurityPolicy.DescribedSecurityPolicy
module Amazonka.Transfer.Types.Domain
newtype Domain
Domain' :: Text -> Domain
[fromDomain] :: Domain -> Text
pattern Domain_EFS :: Domain
pattern Domain_S3 :: Domain
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.Domain.Domain
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.Domain.Domain
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.Domain.Domain
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.Domain.Domain
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.Domain.Domain
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.Domain.Domain
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.Domain.Domain
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.Domain.Domain
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.Domain.Domain
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.Domain.Domain
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.Domain.Domain
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.Domain.Domain
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.Domain.Domain
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.Domain.Domain
instance GHC.Generics.Generic Amazonka.Transfer.Types.Domain.Domain
instance GHC.Classes.Ord Amazonka.Transfer.Types.Domain.Domain
instance GHC.Classes.Eq Amazonka.Transfer.Types.Domain.Domain
instance GHC.Read.Read Amazonka.Transfer.Types.Domain.Domain
instance GHC.Show.Show Amazonka.Transfer.Types.Domain.Domain
module Amazonka.Transfer.Types.EfsFileLocation
-- | Reserved for future use.
--
-- See: newEfsFileLocation smart constructor.
data EfsFileLocation
EfsFileLocation' :: Maybe Text -> Maybe Text -> EfsFileLocation
-- | The identifier of the file system, assigned by Amazon EFS.
[$sel:fileSystemId:EfsFileLocation'] :: EfsFileLocation -> Maybe Text
-- | The pathname for the folder being used by a workflow.
[$sel:path:EfsFileLocation'] :: EfsFileLocation -> Maybe Text
-- | Create a value of EfsFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:fileSystemId:EfsFileLocation',
-- efsFileLocation_fileSystemId - The identifier of the file
-- system, assigned by Amazon EFS.
--
-- $sel:path:EfsFileLocation', efsFileLocation_path - The
-- pathname for the folder being used by a workflow.
newEfsFileLocation :: EfsFileLocation
-- | The identifier of the file system, assigned by Amazon EFS.
efsFileLocation_fileSystemId :: Lens' EfsFileLocation (Maybe Text)
-- | The pathname for the folder being used by a workflow.
efsFileLocation_path :: Lens' EfsFileLocation (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.EfsFileLocation.EfsFileLocation
instance GHC.Show.Show Amazonka.Transfer.Types.EfsFileLocation.EfsFileLocation
instance GHC.Read.Read Amazonka.Transfer.Types.EfsFileLocation.EfsFileLocation
instance GHC.Classes.Eq Amazonka.Transfer.Types.EfsFileLocation.EfsFileLocation
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.EfsFileLocation.EfsFileLocation
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.EfsFileLocation.EfsFileLocation
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.EfsFileLocation.EfsFileLocation
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.EfsFileLocation.EfsFileLocation
module Amazonka.Transfer.Types.EncryptionAlg
newtype EncryptionAlg
EncryptionAlg' :: Text -> EncryptionAlg
[fromEncryptionAlg] :: EncryptionAlg -> Text
pattern EncryptionAlg_AES128_CBC :: EncryptionAlg
pattern EncryptionAlg_AES192_CBC :: EncryptionAlg
pattern EncryptionAlg_AES256_CBC :: EncryptionAlg
pattern EncryptionAlg_NONE :: EncryptionAlg
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance GHC.Generics.Generic Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance GHC.Classes.Ord Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance GHC.Classes.Eq Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance GHC.Read.Read Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
instance GHC.Show.Show Amazonka.Transfer.Types.EncryptionAlg.EncryptionAlg
module Amazonka.Transfer.Types.EncryptionType
newtype EncryptionType
EncryptionType' :: Text -> EncryptionType
[fromEncryptionType] :: EncryptionType -> Text
pattern EncryptionType_PGP :: EncryptionType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance GHC.Generics.Generic Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance GHC.Classes.Ord Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance GHC.Classes.Eq Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance GHC.Read.Read Amazonka.Transfer.Types.EncryptionType.EncryptionType
instance GHC.Show.Show Amazonka.Transfer.Types.EncryptionType.EncryptionType
module Amazonka.Transfer.Types.EndpointDetails
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your file transfer protocol-enabled server. With a VPC endpoint,
-- you can restrict access to your server and resources only within your
-- VPC. To control incoming internet traffic, invoke the
-- UpdateServer API and attach an Elastic IP address to your
-- server's endpoint.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Servicesaccount on or before May 19, 2021, you will
-- not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- See: newEndpointDetails smart constructor.
data EndpointDetails
EndpointDetails' :: Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Maybe Text -> Maybe Text -> EndpointDetails
-- | A list of address allocation IDs that are required to attach an
-- Elastic IP address to your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC and it is only valid in the UpdateServer API.
[$sel:addressAllocationIds:EndpointDetails'] :: EndpointDetails -> Maybe [Text]
-- | A list of security groups IDs that are available to attach to your
-- server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- You can edit the SecurityGroupIds property in the
-- UpdateServer API only if you are changing the
-- EndpointType from PUBLIC or VPC_ENDPOINT to
-- VPC. To change security groups associated with your server's
-- VPC endpoint after creation, use the Amazon EC2
-- ModifyVpcEndpoint API.
[$sel:securityGroupIds:EndpointDetails'] :: EndpointDetails -> Maybe [Text]
-- | A list of subnet IDs that are required to host your server endpoint in
-- your VPC.
--
-- This property can only be set when EndpointType is set to
-- VPC.
[$sel:subnetIds:EndpointDetails'] :: EndpointDetails -> Maybe [Text]
-- | The identifier of the VPC endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC_ENDPOINT.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
[$sel:vpcEndpointId:EndpointDetails'] :: EndpointDetails -> Maybe Text
-- | The VPC identifier of the VPC in which a server's endpoint will be
-- hosted.
--
-- This property can only be set when EndpointType is set to
-- VPC.
[$sel:vpcId:EndpointDetails'] :: EndpointDetails -> Maybe Text
-- | Create a value of EndpointDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:addressAllocationIds:EndpointDetails',
-- endpointDetails_addressAllocationIds - A list of address
-- allocation IDs that are required to attach an Elastic IP address to
-- your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC and it is only valid in the UpdateServer API.
--
-- $sel:securityGroupIds:EndpointDetails',
-- endpointDetails_securityGroupIds - A list of security groups
-- IDs that are available to attach to your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- You can edit the SecurityGroupIds property in the
-- UpdateServer API only if you are changing the
-- EndpointType from PUBLIC or VPC_ENDPOINT to
-- VPC. To change security groups associated with your server's
-- VPC endpoint after creation, use the Amazon EC2
-- ModifyVpcEndpoint API.
--
-- $sel:subnetIds:EndpointDetails',
-- endpointDetails_subnetIds - A list of subnet IDs that are
-- required to host your server endpoint in your VPC.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- $sel:vpcEndpointId:EndpointDetails',
-- endpointDetails_vpcEndpointId - The identifier of the VPC
-- endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC_ENDPOINT.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- $sel:vpcId:EndpointDetails', endpointDetails_vpcId - The
-- VPC identifier of the VPC in which a server's endpoint will be hosted.
--
-- This property can only be set when EndpointType is set to
-- VPC.
newEndpointDetails :: EndpointDetails
-- | A list of address allocation IDs that are required to attach an
-- Elastic IP address to your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC and it is only valid in the UpdateServer API.
endpointDetails_addressAllocationIds :: Lens' EndpointDetails (Maybe [Text])
-- | A list of security groups IDs that are available to attach to your
-- server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- You can edit the SecurityGroupIds property in the
-- UpdateServer API only if you are changing the
-- EndpointType from PUBLIC or VPC_ENDPOINT to
-- VPC. To change security groups associated with your server's
-- VPC endpoint after creation, use the Amazon EC2
-- ModifyVpcEndpoint API.
endpointDetails_securityGroupIds :: Lens' EndpointDetails (Maybe [Text])
-- | A list of subnet IDs that are required to host your server endpoint in
-- your VPC.
--
-- This property can only be set when EndpointType is set to
-- VPC.
endpointDetails_subnetIds :: Lens' EndpointDetails (Maybe [Text])
-- | The identifier of the VPC endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC_ENDPOINT.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
endpointDetails_vpcEndpointId :: Lens' EndpointDetails (Maybe Text)
-- | The VPC identifier of the VPC in which a server's endpoint will be
-- hosted.
--
-- This property can only be set when EndpointType is set to
-- VPC.
endpointDetails_vpcId :: Lens' EndpointDetails (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.EndpointDetails.EndpointDetails
instance GHC.Show.Show Amazonka.Transfer.Types.EndpointDetails.EndpointDetails
instance GHC.Read.Read Amazonka.Transfer.Types.EndpointDetails.EndpointDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.EndpointDetails.EndpointDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.EndpointDetails.EndpointDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.EndpointDetails.EndpointDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.EndpointDetails.EndpointDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.EndpointDetails.EndpointDetails
module Amazonka.Transfer.Types.EndpointType
newtype EndpointType
EndpointType' :: Text -> EndpointType
[fromEndpointType] :: EndpointType -> Text
pattern EndpointType_PUBLIC :: EndpointType
pattern EndpointType_VPC :: EndpointType
pattern EndpointType_VPC_ENDPOINT :: EndpointType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.EndpointType.EndpointType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.EndpointType.EndpointType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.EndpointType.EndpointType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.EndpointType.EndpointType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.EndpointType.EndpointType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.EndpointType.EndpointType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.EndpointType.EndpointType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.EndpointType.EndpointType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.EndpointType.EndpointType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.EndpointType.EndpointType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.EndpointType.EndpointType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.EndpointType.EndpointType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.EndpointType.EndpointType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.EndpointType.EndpointType
instance GHC.Generics.Generic Amazonka.Transfer.Types.EndpointType.EndpointType
instance GHC.Classes.Ord Amazonka.Transfer.Types.EndpointType.EndpointType
instance GHC.Classes.Eq Amazonka.Transfer.Types.EndpointType.EndpointType
instance GHC.Read.Read Amazonka.Transfer.Types.EndpointType.EndpointType
instance GHC.Show.Show Amazonka.Transfer.Types.EndpointType.EndpointType
module Amazonka.Transfer.Types.ExecutionErrorType
newtype ExecutionErrorType
ExecutionErrorType' :: Text -> ExecutionErrorType
[fromExecutionErrorType] :: ExecutionErrorType -> Text
pattern ExecutionErrorType_ALREADY_EXISTS :: ExecutionErrorType
pattern ExecutionErrorType_BAD_REQUEST :: ExecutionErrorType
pattern ExecutionErrorType_CUSTOM_STEP_FAILED :: ExecutionErrorType
pattern ExecutionErrorType_INTERNAL_SERVER_ERROR :: ExecutionErrorType
pattern ExecutionErrorType_NOT_FOUND :: ExecutionErrorType
pattern ExecutionErrorType_PERMISSION_DENIED :: ExecutionErrorType
pattern ExecutionErrorType_THROTTLED :: ExecutionErrorType
pattern ExecutionErrorType_TIMEOUT :: ExecutionErrorType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance GHC.Generics.Generic Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance GHC.Classes.Ord Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance GHC.Classes.Eq Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance GHC.Read.Read Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
instance GHC.Show.Show Amazonka.Transfer.Types.ExecutionErrorType.ExecutionErrorType
module Amazonka.Transfer.Types.ExecutionError
-- | Specifies the error message and type, for an error that occurs during
-- the execution of the workflow.
--
-- See: newExecutionError smart constructor.
data ExecutionError
ExecutionError' :: ExecutionErrorType -> Text -> ExecutionError
-- | Specifies the error type.
--
--
-- - ALREADY_EXISTS: occurs for a copy step, if the overwrite
-- option is not selected and a file with the same name already exists in
-- the target location.
-- - BAD_REQUEST: a general bad request: for example, a step
-- that attempts to tag an EFS file returns BAD_REQUEST, as only
-- S3 files can be tagged.
-- - CUSTOM_STEP_FAILED: occurs when the custom step provided
-- a callback that indicates failure.
-- - INTERNAL_SERVER_ERROR: a catch-all error that can occur
-- for a variety of reasons.
-- - NOT_FOUND: occurs when a requested entity, for example a
-- source file for a copy step, does not exist.
-- - PERMISSION_DENIED: occurs if your policy does not contain
-- the correct permissions to complete one or more of the steps in the
-- workflow.
-- - TIMEOUT: occurs when the execution times out.You can set
-- the TimeoutSeconds for a custom step, anywhere from 1 second
-- to 1800 seconds (30 minutes).
-- - THROTTLED: occurs if you exceed the new execution refill
-- rate of one workflow per second.
--
[$sel:type':ExecutionError'] :: ExecutionError -> ExecutionErrorType
-- | Specifies the descriptive message that corresponds to the
-- ErrorType.
[$sel:message:ExecutionError'] :: ExecutionError -> Text
-- | Create a value of ExecutionError with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:type':ExecutionError', executionError_type -
-- Specifies the error type.
--
--
-- - ALREADY_EXISTS: occurs for a copy step, if the overwrite
-- option is not selected and a file with the same name already exists in
-- the target location.
-- - BAD_REQUEST: a general bad request: for example, a step
-- that attempts to tag an EFS file returns BAD_REQUEST, as only
-- S3 files can be tagged.
-- - CUSTOM_STEP_FAILED: occurs when the custom step provided
-- a callback that indicates failure.
-- - INTERNAL_SERVER_ERROR: a catch-all error that can occur
-- for a variety of reasons.
-- - NOT_FOUND: occurs when a requested entity, for example a
-- source file for a copy step, does not exist.
-- - PERMISSION_DENIED: occurs if your policy does not contain
-- the correct permissions to complete one or more of the steps in the
-- workflow.
-- - TIMEOUT: occurs when the execution times out.You can set
-- the TimeoutSeconds for a custom step, anywhere from 1 second
-- to 1800 seconds (30 minutes).
-- - THROTTLED: occurs if you exceed the new execution refill
-- rate of one workflow per second.
--
--
-- $sel:message:ExecutionError', executionError_message -
-- Specifies the descriptive message that corresponds to the
-- ErrorType.
newExecutionError :: ExecutionErrorType -> Text -> ExecutionError
-- | Specifies the error type.
--
--
-- - ALREADY_EXISTS: occurs for a copy step, if the overwrite
-- option is not selected and a file with the same name already exists in
-- the target location.
-- - BAD_REQUEST: a general bad request: for example, a step
-- that attempts to tag an EFS file returns BAD_REQUEST, as only
-- S3 files can be tagged.
-- - CUSTOM_STEP_FAILED: occurs when the custom step provided
-- a callback that indicates failure.
-- - INTERNAL_SERVER_ERROR: a catch-all error that can occur
-- for a variety of reasons.
-- - NOT_FOUND: occurs when a requested entity, for example a
-- source file for a copy step, does not exist.
-- - PERMISSION_DENIED: occurs if your policy does not contain
-- the correct permissions to complete one or more of the steps in the
-- workflow.
-- - TIMEOUT: occurs when the execution times out.You can set
-- the TimeoutSeconds for a custom step, anywhere from 1 second
-- to 1800 seconds (30 minutes).
-- - THROTTLED: occurs if you exceed the new execution refill
-- rate of one workflow per second.
--
executionError_type :: Lens' ExecutionError ExecutionErrorType
-- | Specifies the descriptive message that corresponds to the
-- ErrorType.
executionError_message :: Lens' ExecutionError Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.ExecutionError.ExecutionError
instance GHC.Show.Show Amazonka.Transfer.Types.ExecutionError.ExecutionError
instance GHC.Read.Read Amazonka.Transfer.Types.ExecutionError.ExecutionError
instance GHC.Classes.Eq Amazonka.Transfer.Types.ExecutionError.ExecutionError
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ExecutionError.ExecutionError
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ExecutionError.ExecutionError
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ExecutionError.ExecutionError
module Amazonka.Transfer.Types.ExecutionStatus
newtype ExecutionStatus
ExecutionStatus' :: Text -> ExecutionStatus
[fromExecutionStatus] :: ExecutionStatus -> Text
pattern ExecutionStatus_COMPLETED :: ExecutionStatus
pattern ExecutionStatus_EXCEPTION :: ExecutionStatus
pattern ExecutionStatus_HANDLING_EXCEPTION :: ExecutionStatus
pattern ExecutionStatus_IN_PROGRESS :: ExecutionStatus
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance GHC.Generics.Generic Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance GHC.Classes.Ord Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance GHC.Classes.Eq Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance GHC.Read.Read Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
instance GHC.Show.Show Amazonka.Transfer.Types.ExecutionStatus.ExecutionStatus
module Amazonka.Transfer.Types.HomeDirectoryMapEntry
-- | Represents an object that contains entries and targets for
-- HomeDirectoryMappings.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- See: newHomeDirectoryMapEntry smart constructor.
data HomeDirectoryMapEntry
HomeDirectoryMapEntry' :: Text -> Text -> HomeDirectoryMapEntry
-- | Represents an entry for HomeDirectoryMappings.
[$sel:entry:HomeDirectoryMapEntry'] :: HomeDirectoryMapEntry -> Text
-- | Represents the map target that is used in a
-- HomeDirectorymapEntry.
[$sel:target:HomeDirectoryMapEntry'] :: HomeDirectoryMapEntry -> Text
-- | Create a value of HomeDirectoryMapEntry with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:entry:HomeDirectoryMapEntry',
-- homeDirectoryMapEntry_entry - Represents an entry for
-- HomeDirectoryMappings.
--
-- $sel:target:HomeDirectoryMapEntry',
-- homeDirectoryMapEntry_target - Represents the map target that
-- is used in a HomeDirectorymapEntry.
newHomeDirectoryMapEntry :: Text -> Text -> HomeDirectoryMapEntry
-- | Represents an entry for HomeDirectoryMappings.
homeDirectoryMapEntry_entry :: Lens' HomeDirectoryMapEntry Text
-- | Represents the map target that is used in a
-- HomeDirectorymapEntry.
homeDirectoryMapEntry_target :: Lens' HomeDirectoryMapEntry Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.HomeDirectoryMapEntry.HomeDirectoryMapEntry
instance GHC.Show.Show Amazonka.Transfer.Types.HomeDirectoryMapEntry.HomeDirectoryMapEntry
instance GHC.Read.Read Amazonka.Transfer.Types.HomeDirectoryMapEntry.HomeDirectoryMapEntry
instance GHC.Classes.Eq Amazonka.Transfer.Types.HomeDirectoryMapEntry.HomeDirectoryMapEntry
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.HomeDirectoryMapEntry.HomeDirectoryMapEntry
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.HomeDirectoryMapEntry.HomeDirectoryMapEntry
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.HomeDirectoryMapEntry.HomeDirectoryMapEntry
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.HomeDirectoryMapEntry.HomeDirectoryMapEntry
module Amazonka.Transfer.Types.HomeDirectoryType
newtype HomeDirectoryType
HomeDirectoryType' :: Text -> HomeDirectoryType
[fromHomeDirectoryType] :: HomeDirectoryType -> Text
pattern HomeDirectoryType_LOGICAL :: HomeDirectoryType
pattern HomeDirectoryType_PATH :: HomeDirectoryType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance GHC.Generics.Generic Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance GHC.Classes.Ord Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance GHC.Classes.Eq Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance GHC.Read.Read Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
instance GHC.Show.Show Amazonka.Transfer.Types.HomeDirectoryType.HomeDirectoryType
module Amazonka.Transfer.Types.IdentityProviderDetails
-- | Returns information related to the type of user authentication that is
-- in use for a file transfer protocol-enabled server's users. A server
-- can have only one method of authentication.
--
-- See: newIdentityProviderDetails smart constructor.
data IdentityProviderDetails
IdentityProviderDetails' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> IdentityProviderDetails
-- | The identifier of the Directory Service directory that you want to
-- stop sharing.
[$sel:directoryId:IdentityProviderDetails'] :: IdentityProviderDetails -> Maybe Text
-- | The ARN for a lambda function to use for the Identity provider.
[$sel:function:IdentityProviderDetails'] :: IdentityProviderDetails -> Maybe Text
-- | Provides the type of InvocationRole used to authenticate the
-- user account.
[$sel:invocationRole:IdentityProviderDetails'] :: IdentityProviderDetails -> Maybe Text
-- | Provides the location of the service endpoint used to authenticate
-- users.
[$sel:url:IdentityProviderDetails'] :: IdentityProviderDetails -> Maybe Text
-- | Create a value of IdentityProviderDetails with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:directoryId:IdentityProviderDetails',
-- identityProviderDetails_directoryId - The identifier of the
-- Directory Service directory that you want to stop sharing.
--
-- $sel:function:IdentityProviderDetails',
-- identityProviderDetails_function - The ARN for a lambda
-- function to use for the Identity provider.
--
-- $sel:invocationRole:IdentityProviderDetails',
-- identityProviderDetails_invocationRole - Provides the type of
-- InvocationRole used to authenticate the user account.
--
-- $sel:url:IdentityProviderDetails',
-- identityProviderDetails_url - Provides the location of the
-- service endpoint used to authenticate users.
newIdentityProviderDetails :: IdentityProviderDetails
-- | The identifier of the Directory Service directory that you want to
-- stop sharing.
identityProviderDetails_directoryId :: Lens' IdentityProviderDetails (Maybe Text)
-- | The ARN for a lambda function to use for the Identity provider.
identityProviderDetails_function :: Lens' IdentityProviderDetails (Maybe Text)
-- | Provides the type of InvocationRole used to authenticate the
-- user account.
identityProviderDetails_invocationRole :: Lens' IdentityProviderDetails (Maybe Text)
-- | Provides the location of the service endpoint used to authenticate
-- users.
identityProviderDetails_url :: Lens' IdentityProviderDetails (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.IdentityProviderDetails.IdentityProviderDetails
instance GHC.Show.Show Amazonka.Transfer.Types.IdentityProviderDetails.IdentityProviderDetails
instance GHC.Read.Read Amazonka.Transfer.Types.IdentityProviderDetails.IdentityProviderDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.IdentityProviderDetails.IdentityProviderDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.IdentityProviderDetails.IdentityProviderDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.IdentityProviderDetails.IdentityProviderDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.IdentityProviderDetails.IdentityProviderDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.IdentityProviderDetails.IdentityProviderDetails
module Amazonka.Transfer.Types.IdentityProviderType
-- | Returns information related to the type of user authentication that is
-- in use for a file transfer protocol-enabled server's users. For
-- AWS_DIRECTORY_SERVICE or SERVICE_MANAGED
-- authentication, the Secure Shell (SSH) public keys are stored with a
-- user on the server instance. For API_GATEWAY authentication,
-- your custom authentication method is implemented by using an API call.
-- The server can have only one method of authentication.
newtype IdentityProviderType
IdentityProviderType' :: Text -> IdentityProviderType
[fromIdentityProviderType] :: IdentityProviderType -> Text
pattern IdentityProviderType_API_GATEWAY :: IdentityProviderType
pattern IdentityProviderType_AWS_DIRECTORY_SERVICE :: IdentityProviderType
pattern IdentityProviderType_AWS_LAMBDA :: IdentityProviderType
pattern IdentityProviderType_SERVICE_MANAGED :: IdentityProviderType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance GHC.Generics.Generic Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance GHC.Classes.Ord Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance GHC.Classes.Eq Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance GHC.Read.Read Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
instance GHC.Show.Show Amazonka.Transfer.Types.IdentityProviderType.IdentityProviderType
module Amazonka.Transfer.Types.ListedAccess
-- | Lists the properties for one or more specified associated accesses.
--
-- See: newListedAccess smart constructor.
data ListedAccess
ListedAccess' :: Maybe Text -> Maybe Text -> Maybe HomeDirectoryType -> Maybe Text -> ListedAccess
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
[$sel:externalId:ListedAccess'] :: ListedAccess -> Maybe Text
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:ListedAccess'] :: ListedAccess -> Maybe Text
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:ListedAccess'] :: ListedAccess -> Maybe HomeDirectoryType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':ListedAccess'] :: ListedAccess -> Maybe Text
-- | Create a value of ListedAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:externalId:ListedAccess', listedAccess_externalId -
-- A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
--
-- $sel:homeDirectory:ListedAccess',
-- listedAccess_homeDirectory - The landing directory (folder) for
-- a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryType:ListedAccess',
-- listedAccess_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:role':ListedAccess', listedAccess_role - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that controls your users' access to your Amazon S3 bucket or Amazon
-- EFS file system. The policies attached to this role determine the
-- level of access that you want to provide your users when transferring
-- files into and out of your Amazon S3 bucket or Amazon EFS file system.
-- The IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
newListedAccess :: ListedAccess
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
listedAccess_externalId :: Lens' ListedAccess (Maybe Text)
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
listedAccess_homeDirectory :: Lens' ListedAccess (Maybe Text)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
listedAccess_homeDirectoryType :: Lens' ListedAccess (Maybe HomeDirectoryType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
listedAccess_role :: Lens' ListedAccess (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedAccess.ListedAccess
instance GHC.Show.Show Amazonka.Transfer.Types.ListedAccess.ListedAccess
instance GHC.Read.Read Amazonka.Transfer.Types.ListedAccess.ListedAccess
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedAccess.ListedAccess
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedAccess.ListedAccess
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedAccess.ListedAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedAccess.ListedAccess
module Amazonka.Transfer.Types.ListedAgreement
-- | Describes the properties of an agreement.
--
-- See: newListedAgreement smart constructor.
data ListedAgreement
ListedAgreement' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe AgreementStatusType -> ListedAgreement
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
[$sel:agreementId:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | The Amazon Resource Name (ARN) of the specified agreement.
[$sel:arn:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | The current description for the agreement. You can change it by
-- calling the UpdateAgreement operation and providing a new
-- description.
[$sel:description:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | A unique identifier for the AS2 local profile.
[$sel:localProfileId:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | A unique identifier for the partner profile.
[$sel:partnerProfileId:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | The unique identifier for the agreement.
[$sel:serverId:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | The agreement can be either ACTIVE or INACTIVE.
[$sel:status:ListedAgreement'] :: ListedAgreement -> Maybe AgreementStatusType
-- | Create a value of ListedAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:agreementId:ListedAgreement',
-- listedAgreement_agreementId - A unique identifier for the
-- agreement. This identifier is returned when you create an agreement.
--
-- $sel:arn:ListedAgreement', listedAgreement_arn - The
-- Amazon Resource Name (ARN) of the specified agreement.
--
-- $sel:description:ListedAgreement',
-- listedAgreement_description - The current description for the
-- agreement. You can change it by calling the UpdateAgreement
-- operation and providing a new description.
--
-- $sel:localProfileId:ListedAgreement',
-- listedAgreement_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:partnerProfileId:ListedAgreement',
-- listedAgreement_partnerProfileId - A unique identifier for the
-- partner profile.
--
-- $sel:serverId:ListedAgreement', listedAgreement_serverId
-- - The unique identifier for the agreement.
--
-- $sel:status:ListedAgreement', listedAgreement_status -
-- The agreement can be either ACTIVE or INACTIVE.
newListedAgreement :: ListedAgreement
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
listedAgreement_agreementId :: Lens' ListedAgreement (Maybe Text)
-- | The Amazon Resource Name (ARN) of the specified agreement.
listedAgreement_arn :: Lens' ListedAgreement (Maybe Text)
-- | The current description for the agreement. You can change it by
-- calling the UpdateAgreement operation and providing a new
-- description.
listedAgreement_description :: Lens' ListedAgreement (Maybe Text)
-- | A unique identifier for the AS2 local profile.
listedAgreement_localProfileId :: Lens' ListedAgreement (Maybe Text)
-- | A unique identifier for the partner profile.
listedAgreement_partnerProfileId :: Lens' ListedAgreement (Maybe Text)
-- | The unique identifier for the agreement.
listedAgreement_serverId :: Lens' ListedAgreement (Maybe Text)
-- | The agreement can be either ACTIVE or INACTIVE.
listedAgreement_status :: Lens' ListedAgreement (Maybe AgreementStatusType)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedAgreement.ListedAgreement
instance GHC.Show.Show Amazonka.Transfer.Types.ListedAgreement.ListedAgreement
instance GHC.Read.Read Amazonka.Transfer.Types.ListedAgreement.ListedAgreement
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedAgreement.ListedAgreement
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedAgreement.ListedAgreement
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedAgreement.ListedAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedAgreement.ListedAgreement
module Amazonka.Transfer.Types.ListedCertificate
-- | Describes the properties of a certificate.
--
-- See: newListedCertificate smart constructor.
data ListedCertificate
ListedCertificate' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe POSIX -> Maybe CertificateStatusType -> Maybe CertificateType -> Maybe CertificateUsageType -> ListedCertificate
-- | An optional date that specifies when the certificate becomes active.
[$sel:activeDate:ListedCertificate'] :: ListedCertificate -> Maybe POSIX
-- | The Amazon Resource Name (ARN) of the specified certificate.
[$sel:arn:ListedCertificate'] :: ListedCertificate -> Maybe Text
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateId:ListedCertificate'] :: ListedCertificate -> Maybe Text
-- | The name or short description that's used to identify the certificate.
[$sel:description:ListedCertificate'] :: ListedCertificate -> Maybe Text
-- | An optional date that specifies when the certificate becomes inactive.
[$sel:inactiveDate:ListedCertificate'] :: ListedCertificate -> Maybe POSIX
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
[$sel:status:ListedCertificate'] :: ListedCertificate -> Maybe CertificateStatusType
-- | The type for the certificate. If a private key has been specified for
-- the certificate, its type is CERTIFICATE_WITH_PRIVATE_KEY. If
-- there is no private key, the type is CERTIFICATE.
[$sel:type':ListedCertificate'] :: ListedCertificate -> Maybe CertificateType
-- | Specifies whether this certificate is used for signing or encryption.
[$sel:usage:ListedCertificate'] :: ListedCertificate -> Maybe CertificateUsageType
-- | Create a value of ListedCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:activeDate:ListedCertificate',
-- listedCertificate_activeDate - An optional date that specifies
-- when the certificate becomes active.
--
-- $sel:arn:ListedCertificate', listedCertificate_arn - The
-- Amazon Resource Name (ARN) of the specified certificate.
--
-- $sel:certificateId:ListedCertificate',
-- listedCertificate_certificateId - An array of identifiers for
-- the imported certificates. You use this identifier for working with
-- profiles and partner profiles.
--
-- $sel:description:ListedCertificate',
-- listedCertificate_description - The name or short description
-- that's used to identify the certificate.
--
-- $sel:inactiveDate:ListedCertificate',
-- listedCertificate_inactiveDate - An optional date that
-- specifies when the certificate becomes inactive.
--
-- $sel:status:ListedCertificate', listedCertificate_status
-- - The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
--
-- $sel:type':ListedCertificate', listedCertificate_type -
-- The type for the certificate. If a private key has been specified for
-- the certificate, its type is CERTIFICATE_WITH_PRIVATE_KEY. If
-- there is no private key, the type is CERTIFICATE.
--
-- $sel:usage:ListedCertificate', listedCertificate_usage -
-- Specifies whether this certificate is used for signing or encryption.
newListedCertificate :: ListedCertificate
-- | An optional date that specifies when the certificate becomes active.
listedCertificate_activeDate :: Lens' ListedCertificate (Maybe UTCTime)
-- | The Amazon Resource Name (ARN) of the specified certificate.
listedCertificate_arn :: Lens' ListedCertificate (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
listedCertificate_certificateId :: Lens' ListedCertificate (Maybe Text)
-- | The name or short description that's used to identify the certificate.
listedCertificate_description :: Lens' ListedCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
listedCertificate_inactiveDate :: Lens' ListedCertificate (Maybe UTCTime)
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
listedCertificate_status :: Lens' ListedCertificate (Maybe CertificateStatusType)
-- | The type for the certificate. If a private key has been specified for
-- the certificate, its type is CERTIFICATE_WITH_PRIVATE_KEY. If
-- there is no private key, the type is CERTIFICATE.
listedCertificate_type :: Lens' ListedCertificate (Maybe CertificateType)
-- | Specifies whether this certificate is used for signing or encryption.
listedCertificate_usage :: Lens' ListedCertificate (Maybe CertificateUsageType)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedCertificate.ListedCertificate
instance GHC.Show.Show Amazonka.Transfer.Types.ListedCertificate.ListedCertificate
instance GHC.Read.Read Amazonka.Transfer.Types.ListedCertificate.ListedCertificate
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedCertificate.ListedCertificate
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedCertificate.ListedCertificate
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedCertificate.ListedCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedCertificate.ListedCertificate
module Amazonka.Transfer.Types.ListedConnector
-- | Returns details of the connector that is specified.
--
-- See: newListedConnector smart constructor.
data ListedConnector
ListedConnector' :: Maybe Text -> Maybe Text -> Maybe Text -> ListedConnector
-- | The Amazon Resource Name (ARN) of the specified connector.
[$sel:arn:ListedConnector'] :: ListedConnector -> Maybe Text
-- | The unique identifier for the connector.
[$sel:connectorId:ListedConnector'] :: ListedConnector -> Maybe Text
-- | The URL of the partner's AS2 endpoint.
[$sel:url:ListedConnector'] :: ListedConnector -> Maybe Text
-- | Create a value of ListedConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedConnector', listedConnector_arn - The
-- Amazon Resource Name (ARN) of the specified connector.
--
-- $sel:connectorId:ListedConnector',
-- listedConnector_connectorId - The unique identifier for the
-- connector.
--
-- $sel:url:ListedConnector', listedConnector_url - The URL
-- of the partner's AS2 endpoint.
newListedConnector :: ListedConnector
-- | The Amazon Resource Name (ARN) of the specified connector.
listedConnector_arn :: Lens' ListedConnector (Maybe Text)
-- | The unique identifier for the connector.
listedConnector_connectorId :: Lens' ListedConnector (Maybe Text)
-- | The URL of the partner's AS2 endpoint.
listedConnector_url :: Lens' ListedConnector (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedConnector.ListedConnector
instance GHC.Show.Show Amazonka.Transfer.Types.ListedConnector.ListedConnector
instance GHC.Read.Read Amazonka.Transfer.Types.ListedConnector.ListedConnector
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedConnector.ListedConnector
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedConnector.ListedConnector
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedConnector.ListedConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedConnector.ListedConnector
module Amazonka.Transfer.Types.ListedHostKey
-- | Returns properties of the host key that's specified.
--
-- See: newListedHostKey smart constructor.
data ListedHostKey
ListedHostKey' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Text -> ListedHostKey
-- | The date on which the host key was added to the server.
[$sel:dateImported:ListedHostKey'] :: ListedHostKey -> Maybe POSIX
-- | The current description for the host key. You can change it by calling
-- the UpdateHostKey operation and providing a new description.
[$sel:description:ListedHostKey'] :: ListedHostKey -> Maybe Text
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
[$sel:fingerprint:ListedHostKey'] :: ListedHostKey -> Maybe Text
-- | A unique identifier for the host key.
[$sel:hostKeyId:ListedHostKey'] :: ListedHostKey -> Maybe Text
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
[$sel:type':ListedHostKey'] :: ListedHostKey -> Maybe Text
-- | The unique Amazon Resource Name (ARN) of the host key.
[$sel:arn:ListedHostKey'] :: ListedHostKey -> Text
-- | Create a value of ListedHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:ListedHostKey',
-- listedHostKey_dateImported - The date on which the host key was
-- added to the server.
--
-- $sel:description:ListedHostKey',
-- listedHostKey_description - The current description for the
-- host key. You can change it by calling the UpdateHostKey
-- operation and providing a new description.
--
-- $sel:fingerprint:ListedHostKey',
-- listedHostKey_fingerprint - The public key fingerprint, which
-- is a short sequence of bytes used to identify the longer public key.
--
-- $sel:hostKeyId:ListedHostKey', listedHostKey_hostKeyId -
-- A unique identifier for the host key.
--
-- $sel:type':ListedHostKey', listedHostKey_type - The
-- encryption algorithm that is used for the host key. The Type
-- parameter is specified by using one of the following values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
--
-- $sel:arn:ListedHostKey', listedHostKey_arn - The unique
-- Amazon Resource Name (ARN) of the host key.
newListedHostKey :: Text -> ListedHostKey
-- | The date on which the host key was added to the server.
listedHostKey_dateImported :: Lens' ListedHostKey (Maybe UTCTime)
-- | The current description for the host key. You can change it by calling
-- the UpdateHostKey operation and providing a new description.
listedHostKey_description :: Lens' ListedHostKey (Maybe Text)
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
listedHostKey_fingerprint :: Lens' ListedHostKey (Maybe Text)
-- | A unique identifier for the host key.
listedHostKey_hostKeyId :: Lens' ListedHostKey (Maybe Text)
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
listedHostKey_type :: Lens' ListedHostKey (Maybe Text)
-- | The unique Amazon Resource Name (ARN) of the host key.
listedHostKey_arn :: Lens' ListedHostKey Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedHostKey.ListedHostKey
instance GHC.Show.Show Amazonka.Transfer.Types.ListedHostKey.ListedHostKey
instance GHC.Read.Read Amazonka.Transfer.Types.ListedHostKey.ListedHostKey
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedHostKey.ListedHostKey
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedHostKey.ListedHostKey
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedHostKey.ListedHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedHostKey.ListedHostKey
module Amazonka.Transfer.Types.ListedUser
-- | Returns properties of the user that you specify.
--
-- See: newListedUser smart constructor.
data ListedUser
ListedUser' :: Maybe Text -> Maybe HomeDirectoryType -> Maybe Text -> Maybe Int -> Maybe Text -> Text -> ListedUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:ListedUser'] :: ListedUser -> Maybe Text
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:ListedUser'] :: ListedUser -> Maybe HomeDirectoryType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
--
-- The IAM role that controls your users' access to your Amazon S3 bucket
-- for servers with Domain=S3, or your EFS file system for
-- servers with Domain=EFS.
--
-- The policies attached to this role determine the level of access you
-- want to provide your users when transferring files into and out of
-- your S3 buckets or EFS file systems.
[$sel:role':ListedUser'] :: ListedUser -> Maybe Text
-- | Specifies the number of SSH public keys stored for the user you
-- specified.
[$sel:sshPublicKeyCount:ListedUser'] :: ListedUser -> Maybe Int
-- | Specifies the name of the user whose ARN was specified. User names are
-- used for authentication purposes.
[$sel:userName:ListedUser'] :: ListedUser -> Maybe Text
-- | Provides the unique Amazon Resource Name (ARN) for the user that you
-- want to learn about.
[$sel:arn:ListedUser'] :: ListedUser -> Text
-- | Create a value of ListedUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:homeDirectory:ListedUser', listedUser_homeDirectory
-- - The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryType:ListedUser',
-- listedUser_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:role':ListedUser', listedUser_role - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that controls your users' access to your Amazon S3 bucket or Amazon
-- EFS file system. The policies attached to this role determine the
-- level of access that you want to provide your users when transferring
-- files into and out of your Amazon S3 bucket or Amazon EFS file system.
-- The IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
--
-- The IAM role that controls your users' access to your Amazon S3 bucket
-- for servers with Domain=S3, or your EFS file system for
-- servers with Domain=EFS.
--
-- The policies attached to this role determine the level of access you
-- want to provide your users when transferring files into and out of
-- your S3 buckets or EFS file systems.
--
-- $sel:sshPublicKeyCount:ListedUser',
-- listedUser_sshPublicKeyCount - Specifies the number of SSH
-- public keys stored for the user you specified.
--
-- $sel:userName:ListedUser', listedUser_userName -
-- Specifies the name of the user whose ARN was specified. User names are
-- used for authentication purposes.
--
-- $sel:arn:ListedUser', listedUser_arn - Provides the
-- unique Amazon Resource Name (ARN) for the user that you want to learn
-- about.
newListedUser :: Text -> ListedUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
listedUser_homeDirectory :: Lens' ListedUser (Maybe Text)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
listedUser_homeDirectoryType :: Lens' ListedUser (Maybe HomeDirectoryType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
--
-- The IAM role that controls your users' access to your Amazon S3 bucket
-- for servers with Domain=S3, or your EFS file system for
-- servers with Domain=EFS.
--
-- The policies attached to this role determine the level of access you
-- want to provide your users when transferring files into and out of
-- your S3 buckets or EFS file systems.
listedUser_role :: Lens' ListedUser (Maybe Text)
-- | Specifies the number of SSH public keys stored for the user you
-- specified.
listedUser_sshPublicKeyCount :: Lens' ListedUser (Maybe Int)
-- | Specifies the name of the user whose ARN was specified. User names are
-- used for authentication purposes.
listedUser_userName :: Lens' ListedUser (Maybe Text)
-- | Provides the unique Amazon Resource Name (ARN) for the user that you
-- want to learn about.
listedUser_arn :: Lens' ListedUser Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedUser.ListedUser
instance GHC.Show.Show Amazonka.Transfer.Types.ListedUser.ListedUser
instance GHC.Read.Read Amazonka.Transfer.Types.ListedUser.ListedUser
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedUser.ListedUser
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedUser.ListedUser
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedUser.ListedUser
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedUser.ListedUser
module Amazonka.Transfer.Types.ListedWorkflow
-- | Contains the identifier, text description, and Amazon Resource Name
-- (ARN) for the workflow.
--
-- See: newListedWorkflow smart constructor.
data ListedWorkflow
ListedWorkflow' :: Maybe Text -> Maybe Text -> Maybe Text -> ListedWorkflow
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
[$sel:arn:ListedWorkflow'] :: ListedWorkflow -> Maybe Text
-- | Specifies the text description for the workflow.
[$sel:description:ListedWorkflow'] :: ListedWorkflow -> Maybe Text
-- | A unique identifier for the workflow.
[$sel:workflowId:ListedWorkflow'] :: ListedWorkflow -> Maybe Text
-- | Create a value of ListedWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedWorkflow', listedWorkflow_arn - Specifies
-- the unique Amazon Resource Name (ARN) for the workflow.
--
-- $sel:description:ListedWorkflow',
-- listedWorkflow_description - Specifies the text description for
-- the workflow.
--
-- $sel:workflowId:ListedWorkflow',
-- listedWorkflow_workflowId - A unique identifier for the
-- workflow.
newListedWorkflow :: ListedWorkflow
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
listedWorkflow_arn :: Lens' ListedWorkflow (Maybe Text)
-- | Specifies the text description for the workflow.
listedWorkflow_description :: Lens' ListedWorkflow (Maybe Text)
-- | A unique identifier for the workflow.
listedWorkflow_workflowId :: Lens' ListedWorkflow (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedWorkflow.ListedWorkflow
instance GHC.Show.Show Amazonka.Transfer.Types.ListedWorkflow.ListedWorkflow
instance GHC.Read.Read Amazonka.Transfer.Types.ListedWorkflow.ListedWorkflow
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedWorkflow.ListedWorkflow
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedWorkflow.ListedWorkflow
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedWorkflow.ListedWorkflow
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedWorkflow.ListedWorkflow
module Amazonka.Transfer.Types.LoggingConfiguration
-- | Consists of the logging role and the log group name.
--
-- See: newLoggingConfiguration smart constructor.
data LoggingConfiguration
LoggingConfiguration' :: Maybe Text -> Maybe Text -> LoggingConfiguration
-- | The name of the CloudWatch logging group for the Transfer Family
-- server to which this workflow belongs.
[$sel:logGroupName:LoggingConfiguration'] :: LoggingConfiguration -> Maybe Text
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
[$sel:loggingRole:LoggingConfiguration'] :: LoggingConfiguration -> Maybe Text
-- | Create a value of LoggingConfiguration with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:logGroupName:LoggingConfiguration',
-- loggingConfiguration_logGroupName - The name of the CloudWatch
-- logging group for the Transfer Family server to which this workflow
-- belongs.
--
-- $sel:loggingRole:LoggingConfiguration',
-- loggingConfiguration_loggingRole - The Amazon Resource Name
-- (ARN) of the Identity and Access Management (IAM) role that allows a
-- server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon
-- EFSevents. When set, you can view user activity in your CloudWatch
-- logs.
newLoggingConfiguration :: LoggingConfiguration
-- | The name of the CloudWatch logging group for the Transfer Family
-- server to which this workflow belongs.
loggingConfiguration_logGroupName :: Lens' LoggingConfiguration (Maybe Text)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
loggingConfiguration_loggingRole :: Lens' LoggingConfiguration (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.LoggingConfiguration.LoggingConfiguration
instance GHC.Show.Show Amazonka.Transfer.Types.LoggingConfiguration.LoggingConfiguration
instance GHC.Read.Read Amazonka.Transfer.Types.LoggingConfiguration.LoggingConfiguration
instance GHC.Classes.Eq Amazonka.Transfer.Types.LoggingConfiguration.LoggingConfiguration
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.LoggingConfiguration.LoggingConfiguration
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.LoggingConfiguration.LoggingConfiguration
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.LoggingConfiguration.LoggingConfiguration
module Amazonka.Transfer.Types.MdnResponse
newtype MdnResponse
MdnResponse' :: Text -> MdnResponse
[fromMdnResponse] :: MdnResponse -> Text
pattern MdnResponse_NONE :: MdnResponse
pattern MdnResponse_SYNC :: MdnResponse
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance GHC.Generics.Generic Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance GHC.Classes.Ord Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance GHC.Classes.Eq Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance GHC.Read.Read Amazonka.Transfer.Types.MdnResponse.MdnResponse
instance GHC.Show.Show Amazonka.Transfer.Types.MdnResponse.MdnResponse
module Amazonka.Transfer.Types.MdnSigningAlg
newtype MdnSigningAlg
MdnSigningAlg' :: Text -> MdnSigningAlg
[fromMdnSigningAlg] :: MdnSigningAlg -> Text
pattern MdnSigningAlg_DEFAULT :: MdnSigningAlg
pattern MdnSigningAlg_NONE :: MdnSigningAlg
pattern MdnSigningAlg_SHA1 :: MdnSigningAlg
pattern MdnSigningAlg_SHA256 :: MdnSigningAlg
pattern MdnSigningAlg_SHA384 :: MdnSigningAlg
pattern MdnSigningAlg_SHA512 :: MdnSigningAlg
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance GHC.Generics.Generic Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance GHC.Classes.Ord Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance GHC.Classes.Eq Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance GHC.Read.Read Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
instance GHC.Show.Show Amazonka.Transfer.Types.MdnSigningAlg.MdnSigningAlg
module Amazonka.Transfer.Types.OverwriteExisting
newtype OverwriteExisting
OverwriteExisting' :: Text -> OverwriteExisting
[fromOverwriteExisting] :: OverwriteExisting -> Text
pattern OverwriteExisting_FALSE :: OverwriteExisting
pattern OverwriteExisting_TRUE :: OverwriteExisting
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance GHC.Generics.Generic Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance GHC.Classes.Ord Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance GHC.Classes.Eq Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance GHC.Read.Read Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
instance GHC.Show.Show Amazonka.Transfer.Types.OverwriteExisting.OverwriteExisting
module Amazonka.Transfer.Types.PosixProfile
-- | The full POSIX identity, including user ID (Uid), group ID
-- (Gid), and any secondary groups IDs (SecondaryGids),
-- that controls your users' access to your Amazon EFS file systems. The
-- POSIX permissions that are set on files and directories in your file
-- system determine the level of access your users get when transferring
-- files into and out of your Amazon EFS file systems.
--
-- See: newPosixProfile smart constructor.
data PosixProfile
PosixProfile' :: Maybe [Natural] -> Natural -> Natural -> PosixProfile
-- | The secondary POSIX group IDs used for all EFS operations by this
-- user.
[$sel:secondaryGids:PosixProfile'] :: PosixProfile -> Maybe [Natural]
-- | The POSIX user ID used for all EFS operations by this user.
[$sel:uid:PosixProfile'] :: PosixProfile -> Natural
-- | The POSIX group ID used for all EFS operations by this user.
[$sel:gid:PosixProfile'] :: PosixProfile -> Natural
-- | Create a value of PosixProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:secondaryGids:PosixProfile',
-- posixProfile_secondaryGids - The secondary POSIX group IDs used
-- for all EFS operations by this user.
--
-- $sel:uid:PosixProfile', posixProfile_uid - The POSIX
-- user ID used for all EFS operations by this user.
--
-- $sel:gid:PosixProfile', posixProfile_gid - The POSIX
-- group ID used for all EFS operations by this user.
newPosixProfile :: Natural -> Natural -> PosixProfile
-- | The secondary POSIX group IDs used for all EFS operations by this
-- user.
posixProfile_secondaryGids :: Lens' PosixProfile (Maybe [Natural])
-- | The POSIX user ID used for all EFS operations by this user.
posixProfile_uid :: Lens' PosixProfile Natural
-- | The POSIX group ID used for all EFS operations by this user.
posixProfile_gid :: Lens' PosixProfile Natural
instance GHC.Generics.Generic Amazonka.Transfer.Types.PosixProfile.PosixProfile
instance GHC.Show.Show Amazonka.Transfer.Types.PosixProfile.PosixProfile
instance GHC.Read.Read Amazonka.Transfer.Types.PosixProfile.PosixProfile
instance GHC.Classes.Eq Amazonka.Transfer.Types.PosixProfile.PosixProfile
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.PosixProfile.PosixProfile
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.PosixProfile.PosixProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.PosixProfile.PosixProfile
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.PosixProfile.PosixProfile
module Amazonka.Transfer.Types.DescribedAccess
-- | Describes the properties of the access that was specified.
--
-- See: newDescribedAccess smart constructor.
data DescribedAccess
DescribedAccess' :: Maybe Text -> Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> DescribedAccess
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
[$sel:externalId:DescribedAccess'] :: DescribedAccess -> Maybe Text
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:DescribedAccess'] :: DescribedAccess -> Maybe Text
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock down the associated access to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
[$sel:homeDirectoryMappings:DescribedAccess'] :: DescribedAccess -> Maybe (NonEmpty HomeDirectoryMapEntry)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:DescribedAccess'] :: DescribedAccess -> Maybe HomeDirectoryType
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
[$sel:policy:DescribedAccess'] :: DescribedAccess -> Maybe Text
[$sel:posixProfile:DescribedAccess'] :: DescribedAccess -> Maybe PosixProfile
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':DescribedAccess'] :: DescribedAccess -> Maybe Text
-- | Create a value of DescribedAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:externalId:DescribedAccess',
-- describedAccess_externalId - A unique identifier that is
-- required to identify specific groups within your directory. The users
-- of the group that you associate have access to your Amazon S3 or
-- Amazon EFS resources over the enabled protocols using Transfer Family.
-- If you know the group name, you can view the SID values by running the
-- following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
--
-- $sel:homeDirectory:DescribedAccess',
-- describedAccess_homeDirectory - The landing directory (folder)
-- for a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryMappings:DescribedAccess',
-- describedAccess_homeDirectoryMappings - Logical directory
-- mappings that specify what Amazon S3 or Amazon EFS paths and keys
-- should be visible to your user and how you want to make them visible.
-- You must specify the Entry and Target pair, where
-- Entry shows how the path is made visible and Target
-- is the actual Amazon S3 or Amazon EFS path. If you only specify a
-- target, it is displayed as is. You also must ensure that your Identity
-- and Access Management (IAM) role provides access to paths in
-- Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock down the associated access to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- $sel:homeDirectoryType:DescribedAccess',
-- describedAccess_homeDirectoryType - The type of landing
-- directory (folder) that you want your users' home directory to be when
-- they log in to the server. If you set it to PATH, the user
-- will see the absolute Amazon S3 bucket or EFS paths as is in their
-- file transfer protocol clients. If you set it LOGICAL, you
-- need to provide mappings in the HomeDirectoryMappings for how
-- you want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:policy:DescribedAccess', describedAccess_policy - A
-- session policy for your user so that you can use the same Identity and
-- Access Management (IAM) role across multiple users. This policy scopes
-- down a user's access to portions of their Amazon S3 bucket. Variables
-- that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- $sel:posixProfile:DescribedAccess',
-- describedAccess_posixProfile - Undocumented member.
--
-- $sel:role':DescribedAccess', describedAccess_role - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that controls your users' access to your Amazon S3 bucket or
-- Amazon EFS file system. The policies attached to this role determine
-- the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
newDescribedAccess :: DescribedAccess
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
describedAccess_externalId :: Lens' DescribedAccess (Maybe Text)
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
describedAccess_homeDirectory :: Lens' DescribedAccess (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock down the associated access to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
describedAccess_homeDirectoryMappings :: Lens' DescribedAccess (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
describedAccess_homeDirectoryType :: Lens' DescribedAccess (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
describedAccess_policy :: Lens' DescribedAccess (Maybe Text)
-- | Undocumented member.
describedAccess_posixProfile :: Lens' DescribedAccess (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
describedAccess_role :: Lens' DescribedAccess (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedAccess.DescribedAccess
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedAccess.DescribedAccess
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedAccess.DescribedAccess
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedAccess.DescribedAccess
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedAccess.DescribedAccess
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedAccess.DescribedAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedAccess.DescribedAccess
module Amazonka.Transfer.Types.ProfileType
newtype ProfileType
ProfileType' :: Text -> ProfileType
[fromProfileType] :: ProfileType -> Text
pattern ProfileType_LOCAL :: ProfileType
pattern ProfileType_PARTNER :: ProfileType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.ProfileType.ProfileType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.ProfileType.ProfileType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.ProfileType.ProfileType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.ProfileType.ProfileType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.ProfileType.ProfileType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ProfileType.ProfileType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.ProfileType.ProfileType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.ProfileType.ProfileType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.ProfileType.ProfileType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.ProfileType.ProfileType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.ProfileType.ProfileType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.ProfileType.ProfileType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ProfileType.ProfileType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ProfileType.ProfileType
instance GHC.Generics.Generic Amazonka.Transfer.Types.ProfileType.ProfileType
instance GHC.Classes.Ord Amazonka.Transfer.Types.ProfileType.ProfileType
instance GHC.Classes.Eq Amazonka.Transfer.Types.ProfileType.ProfileType
instance GHC.Read.Read Amazonka.Transfer.Types.ProfileType.ProfileType
instance GHC.Show.Show Amazonka.Transfer.Types.ProfileType.ProfileType
module Amazonka.Transfer.Types.ListedProfile
-- | Returns the properties of the profile that was specified.
--
-- See: newListedProfile smart constructor.
data ListedProfile
ListedProfile' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProfileType -> ListedProfile
-- | The Amazon Resource Name (ARN) of the specified profile.
[$sel:arn:ListedProfile'] :: ListedProfile -> Maybe Text
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
[$sel:as2Id:ListedProfile'] :: ListedProfile -> Maybe Text
-- | A unique identifier for the local or partner AS2 profile.
[$sel:profileId:ListedProfile'] :: ListedProfile -> Maybe Text
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
[$sel:profileType:ListedProfile'] :: ListedProfile -> Maybe ProfileType
-- | Create a value of ListedProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedProfile', listedProfile_arn - The Amazon
-- Resource Name (ARN) of the specified profile.
--
-- $sel:as2Id:ListedProfile', listedProfile_as2Id - The
-- As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
--
-- $sel:profileId:ListedProfile', listedProfile_profileId -
-- A unique identifier for the local or partner AS2 profile.
--
-- $sel:profileType:ListedProfile',
-- listedProfile_profileType - Indicates whether to list only
-- LOCAL type profiles or only PARTNER type profiles.
-- If not supplied in the request, the command lists all types of
-- profiles.
newListedProfile :: ListedProfile
-- | The Amazon Resource Name (ARN) of the specified profile.
listedProfile_arn :: Lens' ListedProfile (Maybe Text)
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
listedProfile_as2Id :: Lens' ListedProfile (Maybe Text)
-- | A unique identifier for the local or partner AS2 profile.
listedProfile_profileId :: Lens' ListedProfile (Maybe Text)
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
listedProfile_profileType :: Lens' ListedProfile (Maybe ProfileType)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedProfile.ListedProfile
instance GHC.Show.Show Amazonka.Transfer.Types.ListedProfile.ListedProfile
instance GHC.Read.Read Amazonka.Transfer.Types.ListedProfile.ListedProfile
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedProfile.ListedProfile
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedProfile.ListedProfile
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedProfile.ListedProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedProfile.ListedProfile
module Amazonka.Transfer.Types.Protocol
newtype Protocol
Protocol' :: Text -> Protocol
[fromProtocol] :: Protocol -> Text
pattern Protocol_AS2 :: Protocol
pattern Protocol_FTP :: Protocol
pattern Protocol_FTPS :: Protocol
pattern Protocol_SFTP :: Protocol
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.Protocol.Protocol
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.Protocol.Protocol
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.Protocol.Protocol
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.Protocol.Protocol
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.Protocol.Protocol
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.Protocol.Protocol
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.Protocol.Protocol
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.Protocol.Protocol
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.Protocol.Protocol
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.Protocol.Protocol
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.Protocol.Protocol
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.Protocol.Protocol
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.Protocol.Protocol
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.Protocol.Protocol
instance GHC.Generics.Generic Amazonka.Transfer.Types.Protocol.Protocol
instance GHC.Classes.Ord Amazonka.Transfer.Types.Protocol.Protocol
instance GHC.Classes.Eq Amazonka.Transfer.Types.Protocol.Protocol
instance GHC.Read.Read Amazonka.Transfer.Types.Protocol.Protocol
instance GHC.Show.Show Amazonka.Transfer.Types.Protocol.Protocol
module Amazonka.Transfer.Types.S3FileLocation
-- | Specifies the details for the file location for the file that's being
-- used in the workflow. Only applicable if you are using S3 storage.
--
-- See: newS3FileLocation smart constructor.
data S3FileLocation
S3FileLocation' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> S3FileLocation
-- | Specifies the S3 bucket that contains the file being used.
[$sel:bucket:S3FileLocation'] :: S3FileLocation -> Maybe Text
-- | The entity tag is a hash of the object. The ETag reflects changes only
-- to the contents of an object, not its metadata.
[$sel:etag:S3FileLocation'] :: S3FileLocation -> Maybe Text
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
[$sel:key:S3FileLocation'] :: S3FileLocation -> Maybe Text
-- | Specifies the file version.
[$sel:versionId:S3FileLocation'] :: S3FileLocation -> Maybe Text
-- | Create a value of S3FileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:bucket:S3FileLocation', s3FileLocation_bucket -
-- Specifies the S3 bucket that contains the file being used.
--
-- $sel:etag:S3FileLocation', s3FileLocation_etag - The
-- entity tag is a hash of the object. The ETag reflects changes only to
-- the contents of an object, not its metadata.
--
-- $sel:key:S3FileLocation', s3FileLocation_key - The name
-- assigned to the file when it was created in Amazon S3. You use the
-- object key to retrieve the object.
--
-- $sel:versionId:S3FileLocation', s3FileLocation_versionId
-- - Specifies the file version.
newS3FileLocation :: S3FileLocation
-- | Specifies the S3 bucket that contains the file being used.
s3FileLocation_bucket :: Lens' S3FileLocation (Maybe Text)
-- | The entity tag is a hash of the object. The ETag reflects changes only
-- to the contents of an object, not its metadata.
s3FileLocation_etag :: Lens' S3FileLocation (Maybe Text)
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
s3FileLocation_key :: Lens' S3FileLocation (Maybe Text)
-- | Specifies the file version.
s3FileLocation_versionId :: Lens' S3FileLocation (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.S3FileLocation.S3FileLocation
instance GHC.Show.Show Amazonka.Transfer.Types.S3FileLocation.S3FileLocation
instance GHC.Read.Read Amazonka.Transfer.Types.S3FileLocation.S3FileLocation
instance GHC.Classes.Eq Amazonka.Transfer.Types.S3FileLocation.S3FileLocation
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.S3FileLocation.S3FileLocation
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.S3FileLocation.S3FileLocation
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.S3FileLocation.S3FileLocation
module Amazonka.Transfer.Types.FileLocation
-- | Specifies the Amazon S3 or EFS file details to be used in the step.
--
-- See: newFileLocation smart constructor.
data FileLocation
FileLocation' :: Maybe EfsFileLocation -> Maybe S3FileLocation -> FileLocation
-- | Specifies the Amazon EFS identifier and the path for the file being
-- used.
[$sel:efsFileLocation:FileLocation'] :: FileLocation -> Maybe EfsFileLocation
-- | Specifies the S3 details for the file being used, such as bucket,
-- ETag, and so forth.
[$sel:s3FileLocation:FileLocation'] :: FileLocation -> Maybe S3FileLocation
-- | Create a value of FileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:efsFileLocation:FileLocation',
-- fileLocation_efsFileLocation - Specifies the Amazon EFS
-- identifier and the path for the file being used.
--
-- $sel:s3FileLocation:FileLocation',
-- fileLocation_s3FileLocation - Specifies the S3 details for the
-- file being used, such as bucket, ETag, and so forth.
newFileLocation :: FileLocation
-- | Specifies the Amazon EFS identifier and the path for the file being
-- used.
fileLocation_efsFileLocation :: Lens' FileLocation (Maybe EfsFileLocation)
-- | Specifies the S3 details for the file being used, such as bucket,
-- ETag, and so forth.
fileLocation_s3FileLocation :: Lens' FileLocation (Maybe S3FileLocation)
instance GHC.Generics.Generic Amazonka.Transfer.Types.FileLocation.FileLocation
instance GHC.Show.Show Amazonka.Transfer.Types.FileLocation.FileLocation
instance GHC.Read.Read Amazonka.Transfer.Types.FileLocation.FileLocation
instance GHC.Classes.Eq Amazonka.Transfer.Types.FileLocation.FileLocation
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.FileLocation.FileLocation
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.FileLocation.FileLocation
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.FileLocation.FileLocation
module Amazonka.Transfer.Types.S3InputFileLocation
-- | Specifies the customer input S3 file location. If it is used inside
-- copyStepDetails.DestinationFileLocation, it should be the S3
-- copy destination.
--
-- You need to provide the bucket and key. The key can represent either a
-- path or a file. This is determined by whether or not you end the key
-- value with the forward slash (/) character. If the final character is
-- "/", then your file is copied to the folder, and its name does not
-- change. If, rather, the final character is alphanumeric, your uploaded
-- file is renamed to the path value. In this case, if a file with that
-- name already exists, it is overwritten.
--
-- For example, if your path is shared-files/bob/, your uploaded
-- files are copied to the shared-files/bob/, folder. If your
-- path is shared-files/today, each uploaded file is copied to
-- the shared-files folder and named today: each upload
-- overwrites the previous version of the bob file.
--
-- See: newS3InputFileLocation smart constructor.
data S3InputFileLocation
S3InputFileLocation' :: Maybe Text -> Maybe Text -> S3InputFileLocation
-- | Specifies the S3 bucket for the customer input file.
[$sel:bucket:S3InputFileLocation'] :: S3InputFileLocation -> Maybe Text
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
[$sel:key:S3InputFileLocation'] :: S3InputFileLocation -> Maybe Text
-- | Create a value of S3InputFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:bucket:S3InputFileLocation',
-- s3InputFileLocation_bucket - Specifies the S3 bucket for the
-- customer input file.
--
-- $sel:key:S3InputFileLocation', s3InputFileLocation_key -
-- The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
newS3InputFileLocation :: S3InputFileLocation
-- | Specifies the S3 bucket for the customer input file.
s3InputFileLocation_bucket :: Lens' S3InputFileLocation (Maybe Text)
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
s3InputFileLocation_key :: Lens' S3InputFileLocation (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.S3InputFileLocation.S3InputFileLocation
instance GHC.Show.Show Amazonka.Transfer.Types.S3InputFileLocation.S3InputFileLocation
instance GHC.Read.Read Amazonka.Transfer.Types.S3InputFileLocation.S3InputFileLocation
instance GHC.Classes.Eq Amazonka.Transfer.Types.S3InputFileLocation.S3InputFileLocation
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.S3InputFileLocation.S3InputFileLocation
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.S3InputFileLocation.S3InputFileLocation
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.S3InputFileLocation.S3InputFileLocation
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.S3InputFileLocation.S3InputFileLocation
module Amazonka.Transfer.Types.InputFileLocation
-- | Specifies the location for the file being copied. Only applicable for
-- the Copy type of workflow steps.
--
-- See: newInputFileLocation smart constructor.
data InputFileLocation
InputFileLocation' :: Maybe EfsFileLocation -> Maybe S3InputFileLocation -> InputFileLocation
-- | Reserved for future use.
[$sel:efsFileLocation:InputFileLocation'] :: InputFileLocation -> Maybe EfsFileLocation
-- | Specifies the details for the S3 file being copied.
[$sel:s3FileLocation:InputFileLocation'] :: InputFileLocation -> Maybe S3InputFileLocation
-- | Create a value of InputFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:efsFileLocation:InputFileLocation',
-- inputFileLocation_efsFileLocation - Reserved for future use.
--
-- $sel:s3FileLocation:InputFileLocation',
-- inputFileLocation_s3FileLocation - Specifies the details for
-- the S3 file being copied.
newInputFileLocation :: InputFileLocation
-- | Reserved for future use.
inputFileLocation_efsFileLocation :: Lens' InputFileLocation (Maybe EfsFileLocation)
-- | Specifies the details for the S3 file being copied.
inputFileLocation_s3FileLocation :: Lens' InputFileLocation (Maybe S3InputFileLocation)
instance GHC.Generics.Generic Amazonka.Transfer.Types.InputFileLocation.InputFileLocation
instance GHC.Show.Show Amazonka.Transfer.Types.InputFileLocation.InputFileLocation
instance GHC.Read.Read Amazonka.Transfer.Types.InputFileLocation.InputFileLocation
instance GHC.Classes.Eq Amazonka.Transfer.Types.InputFileLocation.InputFileLocation
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.InputFileLocation.InputFileLocation
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.InputFileLocation.InputFileLocation
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.InputFileLocation.InputFileLocation
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.InputFileLocation.InputFileLocation
module Amazonka.Transfer.Types.DecryptStepDetails
-- | See: newDecryptStepDetails smart constructor.
data DecryptStepDetails
DecryptStepDetails' :: Maybe Text -> Maybe OverwriteExisting -> Maybe Text -> EncryptionType -> InputFileLocation -> DecryptStepDetails
[$sel:name:DecryptStepDetails'] :: DecryptStepDetails -> Maybe Text
[$sel:overwriteExisting:DecryptStepDetails'] :: DecryptStepDetails -> Maybe OverwriteExisting
[$sel:sourceFileLocation:DecryptStepDetails'] :: DecryptStepDetails -> Maybe Text
[$sel:type':DecryptStepDetails'] :: DecryptStepDetails -> EncryptionType
[$sel:destinationFileLocation:DecryptStepDetails'] :: DecryptStepDetails -> InputFileLocation
-- | Create a value of DecryptStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:DecryptStepDetails', decryptStepDetails_name -
-- Undocumented member.
--
-- $sel:overwriteExisting:DecryptStepDetails',
-- decryptStepDetails_overwriteExisting - Undocumented member.
--
-- $sel:sourceFileLocation:DecryptStepDetails',
-- decryptStepDetails_sourceFileLocation - Undocumented member.
--
-- $sel:type':DecryptStepDetails', decryptStepDetails_type
-- - Undocumented member.
--
-- $sel:destinationFileLocation:DecryptStepDetails',
-- decryptStepDetails_destinationFileLocation - Undocumented
-- member.
newDecryptStepDetails :: EncryptionType -> InputFileLocation -> DecryptStepDetails
-- | Undocumented member.
decryptStepDetails_name :: Lens' DecryptStepDetails (Maybe Text)
-- | Undocumented member.
decryptStepDetails_overwriteExisting :: Lens' DecryptStepDetails (Maybe OverwriteExisting)
-- | Undocumented member.
decryptStepDetails_sourceFileLocation :: Lens' DecryptStepDetails (Maybe Text)
-- | Undocumented member.
decryptStepDetails_type :: Lens' DecryptStepDetails EncryptionType
-- | Undocumented member.
decryptStepDetails_destinationFileLocation :: Lens' DecryptStepDetails InputFileLocation
instance GHC.Generics.Generic Amazonka.Transfer.Types.DecryptStepDetails.DecryptStepDetails
instance GHC.Show.Show Amazonka.Transfer.Types.DecryptStepDetails.DecryptStepDetails
instance GHC.Read.Read Amazonka.Transfer.Types.DecryptStepDetails.DecryptStepDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.DecryptStepDetails.DecryptStepDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DecryptStepDetails.DecryptStepDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DecryptStepDetails.DecryptStepDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DecryptStepDetails.DecryptStepDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.DecryptStepDetails.DecryptStepDetails
module Amazonka.Transfer.Types.CopyStepDetails
-- | Each step type has its own StepDetails structure.
--
-- See: newCopyStepDetails smart constructor.
data CopyStepDetails
CopyStepDetails' :: Maybe InputFileLocation -> Maybe Text -> Maybe OverwriteExisting -> Maybe Text -> CopyStepDetails
-- | Specifies the location for the file being copied. Only applicable for
-- Copy type workflow steps. Use ${Transfer:username} in this
-- field to parametrize the destination prefix by username.
[$sel:destinationFileLocation:CopyStepDetails'] :: CopyStepDetails -> Maybe InputFileLocation
-- | The name of the step, used as an identifier.
[$sel:name:CopyStepDetails'] :: CopyStepDetails -> Maybe Text
-- | A flag that indicates whether or not to overwrite an existing file of
-- the same name. The default is FALSE.
[$sel:overwriteExisting:CopyStepDetails'] :: CopyStepDetails -> Maybe OverwriteExisting
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
[$sel:sourceFileLocation:CopyStepDetails'] :: CopyStepDetails -> Maybe Text
-- | Create a value of CopyStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:destinationFileLocation:CopyStepDetails',
-- copyStepDetails_destinationFileLocation - Specifies the
-- location for the file being copied. Only applicable for Copy type
-- workflow steps. Use ${Transfer:username} in this field to
-- parametrize the destination prefix by username.
--
-- $sel:name:CopyStepDetails', copyStepDetails_name - The
-- name of the step, used as an identifier.
--
-- $sel:overwriteExisting:CopyStepDetails',
-- copyStepDetails_overwriteExisting - A flag that indicates
-- whether or not to overwrite an existing file of the same name. The
-- default is FALSE.
--
-- $sel:sourceFileLocation:CopyStepDetails',
-- copyStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
newCopyStepDetails :: CopyStepDetails
-- | Specifies the location for the file being copied. Only applicable for
-- Copy type workflow steps. Use ${Transfer:username} in this
-- field to parametrize the destination prefix by username.
copyStepDetails_destinationFileLocation :: Lens' CopyStepDetails (Maybe InputFileLocation)
-- | The name of the step, used as an identifier.
copyStepDetails_name :: Lens' CopyStepDetails (Maybe Text)
-- | A flag that indicates whether or not to overwrite an existing file of
-- the same name. The default is FALSE.
copyStepDetails_overwriteExisting :: Lens' CopyStepDetails (Maybe OverwriteExisting)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
copyStepDetails_sourceFileLocation :: Lens' CopyStepDetails (Maybe Text)
instance GHC.Generics.Generic Amazonka.Transfer.Types.CopyStepDetails.CopyStepDetails
instance GHC.Show.Show Amazonka.Transfer.Types.CopyStepDetails.CopyStepDetails
instance GHC.Read.Read Amazonka.Transfer.Types.CopyStepDetails.CopyStepDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.CopyStepDetails.CopyStepDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.CopyStepDetails.CopyStepDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.CopyStepDetails.CopyStepDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.CopyStepDetails.CopyStepDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.CopyStepDetails.CopyStepDetails
module Amazonka.Transfer.Types.S3Tag
-- | Specifies the key-value pair that are assigned to a file during the
-- execution of a Tagging step.
--
-- See: newS3Tag smart constructor.
data S3Tag
S3Tag' :: Text -> Text -> S3Tag
-- | The name assigned to the tag that you create.
[$sel:key:S3Tag'] :: S3Tag -> Text
-- | The value that corresponds to the key.
[$sel:value:S3Tag'] :: S3Tag -> Text
-- | Create a value of S3Tag with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:key:S3Tag', s3Tag_key - The name assigned to the
-- tag that you create.
--
-- $sel:value:S3Tag', s3Tag_value - The value that
-- corresponds to the key.
newS3Tag :: Text -> Text -> S3Tag
-- | The name assigned to the tag that you create.
s3Tag_key :: Lens' S3Tag Text
-- | The value that corresponds to the key.
s3Tag_value :: Lens' S3Tag Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.S3Tag.S3Tag
instance GHC.Show.Show Amazonka.Transfer.Types.S3Tag.S3Tag
instance GHC.Read.Read Amazonka.Transfer.Types.S3Tag.S3Tag
instance GHC.Classes.Eq Amazonka.Transfer.Types.S3Tag.S3Tag
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.S3Tag.S3Tag
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.S3Tag.S3Tag
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.S3Tag.S3Tag
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.S3Tag.S3Tag
module Amazonka.Transfer.Types.SetStatOption
newtype SetStatOption
SetStatOption' :: Text -> SetStatOption
[fromSetStatOption] :: SetStatOption -> Text
pattern SetStatOption_DEFAULT :: SetStatOption
pattern SetStatOption_ENABLE_NO_OP :: SetStatOption
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance GHC.Generics.Generic Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance GHC.Classes.Ord Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance GHC.Classes.Eq Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance GHC.Read.Read Amazonka.Transfer.Types.SetStatOption.SetStatOption
instance GHC.Show.Show Amazonka.Transfer.Types.SetStatOption.SetStatOption
module Amazonka.Transfer.Types.SigningAlg
newtype SigningAlg
SigningAlg' :: Text -> SigningAlg
[fromSigningAlg] :: SigningAlg -> Text
pattern SigningAlg_NONE :: SigningAlg
pattern SigningAlg_SHA1 :: SigningAlg
pattern SigningAlg_SHA256 :: SigningAlg
pattern SigningAlg_SHA384 :: SigningAlg
pattern SigningAlg_SHA512 :: SigningAlg
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance GHC.Generics.Generic Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance GHC.Classes.Ord Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance GHC.Classes.Eq Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance GHC.Read.Read Amazonka.Transfer.Types.SigningAlg.SigningAlg
instance GHC.Show.Show Amazonka.Transfer.Types.SigningAlg.SigningAlg
module Amazonka.Transfer.Types.As2ConnectorConfig
-- | Contains the details for a connector object. The connector object is
-- used for AS2 outbound processes, to connect the Transfer Family
-- customer with the trading partner.
--
-- See: newAs2ConnectorConfig smart constructor.
data As2ConnectorConfig
As2ConnectorConfig' :: Maybe CompressionEnum -> Maybe EncryptionAlg -> Maybe Text -> Maybe MdnResponse -> Maybe MdnSigningAlg -> Maybe Text -> Maybe Text -> Maybe SigningAlg -> As2ConnectorConfig
-- | Specifies whether the AS2 file is compressed.
[$sel:compression:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe CompressionEnum
-- | The algorithm that is used to encrypt the file.
[$sel:encryptionAlgorithm:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe EncryptionAlg
-- | A unique identifier for the AS2 local profile.
[$sel:localProfileId:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe Text
-- | Used for outbound requests (from an Transfer Family server to a
-- partner AS2 server) to determine whether the partner response for
-- transfers is synchronous or asynchronous. Specify either of the
-- following values:
--
--
-- - SYNC: The system expects a synchronous MDN response,
-- confirming that the file was transferred successfully (or not).
-- - NONE: Specifies that no MDN response is required.
--
[$sel:mdnResponse:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe MdnResponse
-- | The signing algorithm for the MDN response.
--
-- If set to DEFAULT (or not set at all), the value for
-- SigningAlogorithm is used.
[$sel:mdnSigningAlgorithm:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe MdnSigningAlg
-- | Used as the Subject HTTP header attribute in AS2 messages
-- that are being sent with the connector.
[$sel:messageSubject:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe Text
-- | A unique identifier for the partner profile for the connector.
[$sel:partnerProfileId:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe Text
-- | The algorithm that is used to sign the AS2 messages sent with the
-- connector.
[$sel:signingAlgorithm:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe SigningAlg
-- | Create a value of As2ConnectorConfig with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:compression:As2ConnectorConfig',
-- as2ConnectorConfig_compression - Specifies whether the AS2 file
-- is compressed.
--
-- $sel:encryptionAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_encryptionAlgorithm - The algorithm that is
-- used to encrypt the file.
--
-- $sel:localProfileId:As2ConnectorConfig',
-- as2ConnectorConfig_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:mdnResponse:As2ConnectorConfig',
-- as2ConnectorConfig_mdnResponse - Used for outbound requests
-- (from an Transfer Family server to a partner AS2 server) to determine
-- whether the partner response for transfers is synchronous or
-- asynchronous. Specify either of the following values:
--
--
-- - SYNC: The system expects a synchronous MDN response,
-- confirming that the file was transferred successfully (or not).
-- - NONE: Specifies that no MDN response is required.
--
--
-- $sel:mdnSigningAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_mdnSigningAlgorithm - The signing algorithm
-- for the MDN response.
--
-- If set to DEFAULT (or not set at all), the value for
-- SigningAlogorithm is used.
--
-- $sel:messageSubject:As2ConnectorConfig',
-- as2ConnectorConfig_messageSubject - Used as the
-- Subject HTTP header attribute in AS2 messages that are being
-- sent with the connector.
--
-- $sel:partnerProfileId:As2ConnectorConfig',
-- as2ConnectorConfig_partnerProfileId - A unique identifier for
-- the partner profile for the connector.
--
-- $sel:signingAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_signingAlgorithm - The algorithm that is
-- used to sign the AS2 messages sent with the connector.
newAs2ConnectorConfig :: As2ConnectorConfig
-- | Specifies whether the AS2 file is compressed.
as2ConnectorConfig_compression :: Lens' As2ConnectorConfig (Maybe CompressionEnum)
-- | The algorithm that is used to encrypt the file.
as2ConnectorConfig_encryptionAlgorithm :: Lens' As2ConnectorConfig (Maybe EncryptionAlg)
-- | A unique identifier for the AS2 local profile.
as2ConnectorConfig_localProfileId :: Lens' As2ConnectorConfig (Maybe Text)
-- | Used for outbound requests (from an Transfer Family server to a
-- partner AS2 server) to determine whether the partner response for
-- transfers is synchronous or asynchronous. Specify either of the
-- following values:
--
--
-- - SYNC: The system expects a synchronous MDN response,
-- confirming that the file was transferred successfully (or not).
-- - NONE: Specifies that no MDN response is required.
--
as2ConnectorConfig_mdnResponse :: Lens' As2ConnectorConfig (Maybe MdnResponse)
-- | The signing algorithm for the MDN response.
--
-- If set to DEFAULT (or not set at all), the value for
-- SigningAlogorithm is used.
as2ConnectorConfig_mdnSigningAlgorithm :: Lens' As2ConnectorConfig (Maybe MdnSigningAlg)
-- | Used as the Subject HTTP header attribute in AS2 messages
-- that are being sent with the connector.
as2ConnectorConfig_messageSubject :: Lens' As2ConnectorConfig (Maybe Text)
-- | A unique identifier for the partner profile for the connector.
as2ConnectorConfig_partnerProfileId :: Lens' As2ConnectorConfig (Maybe Text)
-- | The algorithm that is used to sign the AS2 messages sent with the
-- connector.
as2ConnectorConfig_signingAlgorithm :: Lens' As2ConnectorConfig (Maybe SigningAlg)
instance GHC.Generics.Generic Amazonka.Transfer.Types.As2ConnectorConfig.As2ConnectorConfig
instance GHC.Show.Show Amazonka.Transfer.Types.As2ConnectorConfig.As2ConnectorConfig
instance GHC.Read.Read Amazonka.Transfer.Types.As2ConnectorConfig.As2ConnectorConfig
instance GHC.Classes.Eq Amazonka.Transfer.Types.As2ConnectorConfig.As2ConnectorConfig
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.As2ConnectorConfig.As2ConnectorConfig
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.As2ConnectorConfig.As2ConnectorConfig
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.As2ConnectorConfig.As2ConnectorConfig
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.As2ConnectorConfig.As2ConnectorConfig
module Amazonka.Transfer.Types.SshPublicKey
-- | Provides information about the public Secure Shell (SSH) key that is
-- associated with a user account for the specific file transfer
-- protocol-enabled server (as identified by ServerId). The
-- information returned includes the date the key was imported, the
-- public key contents, and the public key ID. A user can store more than
-- one SSH public key associated with their user name on a specific
-- server.
--
-- See: newSshPublicKey smart constructor.
data SshPublicKey
SshPublicKey' :: POSIX -> Text -> Text -> SshPublicKey
-- | Specifies the date that the public key was added to the user account.
[$sel:dateImported:SshPublicKey'] :: SshPublicKey -> POSIX
-- | Specifies the content of the SSH public key as specified by the
-- PublicKeyId.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
[$sel:sshPublicKeyBody:SshPublicKey'] :: SshPublicKey -> Text
-- | Specifies the SshPublicKeyId parameter contains the
-- identifier of the public key.
[$sel:sshPublicKeyId:SshPublicKey'] :: SshPublicKey -> Text
-- | Create a value of SshPublicKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:SshPublicKey',
-- sshPublicKey_dateImported - Specifies the date that the public
-- key was added to the user account.
--
-- $sel:sshPublicKeyBody:SshPublicKey',
-- sshPublicKey_sshPublicKeyBody - Specifies the content of the
-- SSH public key as specified by the PublicKeyId.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
--
-- $sel:sshPublicKeyId:SshPublicKey',
-- sshPublicKey_sshPublicKeyId - Specifies the
-- SshPublicKeyId parameter contains the identifier of the
-- public key.
newSshPublicKey :: UTCTime -> Text -> Text -> SshPublicKey
-- | Specifies the date that the public key was added to the user account.
sshPublicKey_dateImported :: Lens' SshPublicKey UTCTime
-- | Specifies the content of the SSH public key as specified by the
-- PublicKeyId.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
sshPublicKey_sshPublicKeyBody :: Lens' SshPublicKey Text
-- | Specifies the SshPublicKeyId parameter contains the
-- identifier of the public key.
sshPublicKey_sshPublicKeyId :: Lens' SshPublicKey Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.SshPublicKey.SshPublicKey
instance GHC.Show.Show Amazonka.Transfer.Types.SshPublicKey.SshPublicKey
instance GHC.Read.Read Amazonka.Transfer.Types.SshPublicKey.SshPublicKey
instance GHC.Classes.Eq Amazonka.Transfer.Types.SshPublicKey.SshPublicKey
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.SshPublicKey.SshPublicKey
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.SshPublicKey.SshPublicKey
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.SshPublicKey.SshPublicKey
module Amazonka.Transfer.Types.State
-- | Describes the condition of a file transfer protocol-enabled server
-- with respect to its ability to perform file operations. There are six
-- possible states: OFFLINE, ONLINE, STARTING,
-- STOPPING, START_FAILED, and STOP_FAILED.
--
-- OFFLINE indicates that the server exists, but that it is not
-- available for file operations. ONLINE indicates that the
-- server is available to perform file operations. STARTING
-- indicates that the server's was instantiated, but the server is not
-- yet available to perform file operations. Under normal conditions, it
-- can take a couple of minutes for the server to be completely
-- operational. Both START_FAILED and STOP_FAILED are
-- error conditions.
newtype State
State' :: Text -> State
[fromState] :: State -> Text
pattern State_OFFLINE :: State
pattern State_ONLINE :: State
pattern State_STARTING :: State
pattern State_START_FAILED :: State
pattern State_STOPPING :: State
pattern State_STOP_FAILED :: State
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.State.State
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.State.State
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.State.State
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.State.State
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.State.State
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.State.State
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.State.State
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.State.State
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.State.State
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.State.State
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.State.State
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.State.State
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.State.State
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.State.State
instance GHC.Generics.Generic Amazonka.Transfer.Types.State.State
instance GHC.Classes.Ord Amazonka.Transfer.Types.State.State
instance GHC.Classes.Eq Amazonka.Transfer.Types.State.State
instance GHC.Read.Read Amazonka.Transfer.Types.State.State
instance GHC.Show.Show Amazonka.Transfer.Types.State.State
module Amazonka.Transfer.Types.ListedServer
-- | Returns properties of a file transfer protocol-enabled server that was
-- specified.
--
-- See: newListedServer smart constructor.
data ListedServer
ListedServer' :: Maybe Domain -> Maybe EndpointType -> Maybe IdentityProviderType -> Maybe Text -> Maybe Text -> Maybe State -> Maybe Int -> Text -> ListedServer
-- | Specifies the domain of the storage system that is used for file
-- transfers.
[$sel:domain:ListedServer'] :: ListedServer -> Maybe Domain
-- | Specifies the type of VPC endpoint that your server is connected to.
-- If your server is connected to a VPC endpoint, your server isn't
-- accessible over the public internet.
[$sel:endpointType:ListedServer'] :: ListedServer -> Maybe EndpointType
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
[$sel:identityProviderType:ListedServer'] :: ListedServer -> Maybe IdentityProviderType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
[$sel:loggingRole:ListedServer'] :: ListedServer -> Maybe Text
-- | Specifies the unique system assigned identifier for the servers that
-- were listed.
[$sel:serverId:ListedServer'] :: ListedServer -> Maybe Text
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
[$sel:state:ListedServer'] :: ListedServer -> Maybe State
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
[$sel:userCount:ListedServer'] :: ListedServer -> Maybe Int
-- | Specifies the unique Amazon Resource Name (ARN) for a server to be
-- listed.
[$sel:arn:ListedServer'] :: ListedServer -> Text
-- | Create a value of ListedServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:domain:ListedServer', listedServer_domain -
-- Specifies the domain of the storage system that is used for file
-- transfers.
--
-- $sel:endpointType:ListedServer',
-- listedServer_endpointType - Specifies the type of VPC endpoint
-- that your server is connected to. If your server is connected to a VPC
-- endpoint, your server isn't accessible over the public internet.
--
-- $sel:identityProviderType:ListedServer',
-- listedServer_identityProviderType - The mode of authentication
-- for a server. The default value is SERVICE_MANAGED, which
-- allows you to store and access user credentials within the Transfer
-- Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
--
-- $sel:loggingRole:ListedServer', listedServer_loggingRole
-- - The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
--
-- $sel:serverId:ListedServer', listedServer_serverId -
-- Specifies the unique system assigned identifier for the servers that
-- were listed.
--
-- $sel:state:ListedServer', listedServer_state - The
-- condition of the server that was described. A value of ONLINE
-- indicates that the server can accept jobs and transfer files. A
-- State value of OFFLINE means that the server cannot
-- perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
--
-- $sel:userCount:ListedServer', listedServer_userCount -
-- Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
--
-- $sel:arn:ListedServer', listedServer_arn - Specifies the
-- unique Amazon Resource Name (ARN) for a server to be listed.
newListedServer :: Text -> ListedServer
-- | Specifies the domain of the storage system that is used for file
-- transfers.
listedServer_domain :: Lens' ListedServer (Maybe Domain)
-- | Specifies the type of VPC endpoint that your server is connected to.
-- If your server is connected to a VPC endpoint, your server isn't
-- accessible over the public internet.
listedServer_endpointType :: Lens' ListedServer (Maybe EndpointType)
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
listedServer_identityProviderType :: Lens' ListedServer (Maybe IdentityProviderType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
listedServer_loggingRole :: Lens' ListedServer (Maybe Text)
-- | Specifies the unique system assigned identifier for the servers that
-- were listed.
listedServer_serverId :: Lens' ListedServer (Maybe Text)
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
listedServer_state :: Lens' ListedServer (Maybe State)
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
listedServer_userCount :: Lens' ListedServer (Maybe Int)
-- | Specifies the unique Amazon Resource Name (ARN) for a server to be
-- listed.
listedServer_arn :: Lens' ListedServer Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedServer.ListedServer
instance GHC.Show.Show Amazonka.Transfer.Types.ListedServer.ListedServer
instance GHC.Read.Read Amazonka.Transfer.Types.ListedServer.ListedServer
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedServer.ListedServer
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedServer.ListedServer
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedServer.ListedServer
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedServer.ListedServer
module Amazonka.Transfer.Types.Tag
-- | Creates a key-value pair for a specific resource. Tags are metadata
-- that you can use to search for and group a resource for various
-- purposes. You can apply tags to servers, users, and roles. A tag key
-- can take more than one value. For example, to group servers for
-- accounting purposes, you might create a tag called Group and
-- assign the values Research and Accounting to that
-- group.
--
-- See: newTag smart constructor.
data Tag
Tag' :: Text -> Text -> Tag
-- | The name assigned to the tag that you create.
[$sel:key:Tag'] :: Tag -> Text
-- | Contains one or more values that you assigned to the key name you
-- create.
[$sel:value:Tag'] :: Tag -> Text
-- | Create a value of Tag with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:key:Tag', tag_key - The name assigned to the tag
-- that you create.
--
-- $sel:value:Tag', tag_value - Contains one or more values
-- that you assigned to the key name you create.
newTag :: Text -> Text -> Tag
-- | The name assigned to the tag that you create.
tag_key :: Lens' Tag Text
-- | Contains one or more values that you assigned to the key name you
-- create.
tag_value :: Lens' Tag Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.Tag.Tag
instance GHC.Show.Show Amazonka.Transfer.Types.Tag.Tag
instance GHC.Read.Read Amazonka.Transfer.Types.Tag.Tag
instance GHC.Classes.Eq Amazonka.Transfer.Types.Tag.Tag
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.Tag.Tag
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.Tag.Tag
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.Tag.Tag
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.Tag.Tag
module Amazonka.Transfer.Types.DescribedUser
-- | Describes the properties of a user that was specified.
--
-- See: newDescribedUser smart constructor.
data DescribedUser
DescribedUser' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Maybe [SshPublicKey] -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:DescribedUser'] :: DescribedUser -> Maybe Text
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
[$sel:homeDirectoryMappings:DescribedUser'] :: DescribedUser -> Maybe (NonEmpty HomeDirectoryMapEntry)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:DescribedUser'] :: DescribedUser -> Maybe HomeDirectoryType
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
[$sel:policy:DescribedUser'] :: DescribedUser -> Maybe Text
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon Elastic File System (Amazon EFS) file systems. The POSIX
-- permissions that are set on files and directories in your file system
-- determine the level of access your users get when transferring files
-- into and out of your Amazon EFS file systems.
[$sel:posixProfile:DescribedUser'] :: DescribedUser -> Maybe PosixProfile
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':DescribedUser'] :: DescribedUser -> Maybe Text
-- | Specifies the public key portion of the Secure Shell (SSH) keys stored
-- for the described user.
[$sel:sshPublicKeys:DescribedUser'] :: DescribedUser -> Maybe [SshPublicKey]
-- | Specifies the key-value pairs for the user requested. Tag can be used
-- to search for and group users for a variety of purposes.
[$sel:tags:DescribedUser'] :: DescribedUser -> Maybe (NonEmpty Tag)
-- | Specifies the name of the user that was requested to be described.
-- User names are used for authentication purposes. This is the string
-- that will be used by your user when they log in to your server.
[$sel:userName:DescribedUser'] :: DescribedUser -> Maybe Text
-- | Specifies the unique Amazon Resource Name (ARN) for the user that was
-- requested to be described.
[$sel:arn:DescribedUser'] :: DescribedUser -> Text
-- | Create a value of DescribedUser with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:homeDirectory:DescribedUser',
-- describedUser_homeDirectory - The landing directory (folder)
-- for a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryMappings:DescribedUser',
-- describedUser_homeDirectoryMappings - Logical directory
-- mappings that specify what Amazon S3 or Amazon EFS paths and keys
-- should be visible to your user and how you want to make them visible.
-- You must specify the Entry and Target pair, where
-- Entry shows how the path is made visible and Target
-- is the actual Amazon S3 or Amazon EFS path. If you only specify a
-- target, it is displayed as is. You also must ensure that your Identity
-- and Access Management (IAM) role provides access to paths in
-- Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- $sel:homeDirectoryType:DescribedUser',
-- describedUser_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:policy:DescribedUser', describedUser_policy - A
-- session policy for your user so that you can use the same Identity and
-- Access Management (IAM) role across multiple users. This policy scopes
-- down a user's access to portions of their Amazon S3 bucket. Variables
-- that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- $sel:posixProfile:DescribedUser',
-- describedUser_posixProfile - Specifies the full POSIX identity,
-- including user ID (Uid), group ID (Gid), and any
-- secondary groups IDs (SecondaryGids), that controls your
-- users' access to your Amazon Elastic File System (Amazon EFS) file
-- systems. The POSIX permissions that are set on files and directories
-- in your file system determine the level of access your users get when
-- transferring files into and out of your Amazon EFS file systems.
--
-- $sel:role':DescribedUser', describedUser_role - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that controls your users' access to your Amazon S3 bucket or
-- Amazon EFS file system. The policies attached to this role determine
-- the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
--
-- $sel:sshPublicKeys:DescribedUser',
-- describedUser_sshPublicKeys - Specifies the public key portion
-- of the Secure Shell (SSH) keys stored for the described user.
--
-- $sel:tags:DescribedUser', describedUser_tags - Specifies
-- the key-value pairs for the user requested. Tag can be used to search
-- for and group users for a variety of purposes.
--
-- $sel:userName:DescribedUser', describedUser_userName -
-- Specifies the name of the user that was requested to be described.
-- User names are used for authentication purposes. This is the string
-- that will be used by your user when they log in to your server.
--
-- $sel:arn:DescribedUser', describedUser_arn - Specifies
-- the unique Amazon Resource Name (ARN) for the user that was requested
-- to be described.
newDescribedUser :: Text -> DescribedUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
describedUser_homeDirectory :: Lens' DescribedUser (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
describedUser_homeDirectoryMappings :: Lens' DescribedUser (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
describedUser_homeDirectoryType :: Lens' DescribedUser (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
describedUser_policy :: Lens' DescribedUser (Maybe Text)
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon Elastic File System (Amazon EFS) file systems. The POSIX
-- permissions that are set on files and directories in your file system
-- determine the level of access your users get when transferring files
-- into and out of your Amazon EFS file systems.
describedUser_posixProfile :: Lens' DescribedUser (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
describedUser_role :: Lens' DescribedUser (Maybe Text)
-- | Specifies the public key portion of the Secure Shell (SSH) keys stored
-- for the described user.
describedUser_sshPublicKeys :: Lens' DescribedUser (Maybe [SshPublicKey])
-- | Specifies the key-value pairs for the user requested. Tag can be used
-- to search for and group users for a variety of purposes.
describedUser_tags :: Lens' DescribedUser (Maybe (NonEmpty Tag))
-- | Specifies the name of the user that was requested to be described.
-- User names are used for authentication purposes. This is the string
-- that will be used by your user when they log in to your server.
describedUser_userName :: Lens' DescribedUser (Maybe Text)
-- | Specifies the unique Amazon Resource Name (ARN) for the user that was
-- requested to be described.
describedUser_arn :: Lens' DescribedUser Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedUser.DescribedUser
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedUser.DescribedUser
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedUser.DescribedUser
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedUser.DescribedUser
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedUser.DescribedUser
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedUser.DescribedUser
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedUser.DescribedUser
module Amazonka.Transfer.Types.DescribedProfile
-- | The details for a local or partner AS2 profile.
--
-- See: newDescribedProfile smart constructor.
data DescribedProfile
DescribedProfile' :: Maybe Text -> Maybe [Text] -> Maybe Text -> Maybe ProfileType -> Maybe (NonEmpty Tag) -> Text -> DescribedProfile
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
[$sel:as2Id:DescribedProfile'] :: DescribedProfile -> Maybe Text
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateIds:DescribedProfile'] :: DescribedProfile -> Maybe [Text]
-- | A unique identifier for the local or partner AS2 profile.
[$sel:profileId:DescribedProfile'] :: DescribedProfile -> Maybe Text
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
[$sel:profileType:DescribedProfile'] :: DescribedProfile -> Maybe ProfileType
-- | Key-value pairs that can be used to group and search for profiles.
[$sel:tags:DescribedProfile'] :: DescribedProfile -> Maybe (NonEmpty Tag)
-- | The unique Amazon Resource Name (ARN) for the profile.
[$sel:arn:DescribedProfile'] :: DescribedProfile -> Text
-- | Create a value of DescribedProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:as2Id:DescribedProfile', describedProfile_as2Id -
-- The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
--
-- $sel:certificateIds:DescribedProfile',
-- describedProfile_certificateIds - An array of identifiers for
-- the imported certificates. You use this identifier for working with
-- profiles and partner profiles.
--
-- $sel:profileId:DescribedProfile',
-- describedProfile_profileId - A unique identifier for the local
-- or partner AS2 profile.
--
-- $sel:profileType:DescribedProfile',
-- describedProfile_profileType - Indicates whether to list only
-- LOCAL type profiles or only PARTNER type profiles.
-- If not supplied in the request, the command lists all types of
-- profiles.
--
-- $sel:tags:DescribedProfile', describedProfile_tags -
-- Key-value pairs that can be used to group and search for profiles.
--
-- $sel:arn:DescribedProfile', describedProfile_arn - The
-- unique Amazon Resource Name (ARN) for the profile.
newDescribedProfile :: Text -> DescribedProfile
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
describedProfile_as2Id :: Lens' DescribedProfile (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
describedProfile_certificateIds :: Lens' DescribedProfile (Maybe [Text])
-- | A unique identifier for the local or partner AS2 profile.
describedProfile_profileId :: Lens' DescribedProfile (Maybe Text)
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
describedProfile_profileType :: Lens' DescribedProfile (Maybe ProfileType)
-- | Key-value pairs that can be used to group and search for profiles.
describedProfile_tags :: Lens' DescribedProfile (Maybe (NonEmpty Tag))
-- | The unique Amazon Resource Name (ARN) for the profile.
describedProfile_arn :: Lens' DescribedProfile Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedProfile.DescribedProfile
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedProfile.DescribedProfile
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedProfile.DescribedProfile
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedProfile.DescribedProfile
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedProfile.DescribedProfile
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedProfile.DescribedProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedProfile.DescribedProfile
module Amazonka.Transfer.Types.DescribedHostKey
-- | The details for a server host key.
--
-- See: newDescribedHostKey smart constructor.
data DescribedHostKey
DescribedHostKey' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedHostKey
-- | The date on which the host key was added to the server.
[$sel:dateImported:DescribedHostKey'] :: DescribedHostKey -> Maybe POSIX
-- | The text description for this host key.
[$sel:description:DescribedHostKey'] :: DescribedHostKey -> Maybe Text
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
[$sel:hostKeyFingerprint:DescribedHostKey'] :: DescribedHostKey -> Maybe Text
-- | A unique identifier for the host key.
[$sel:hostKeyId:DescribedHostKey'] :: DescribedHostKey -> Maybe Text
-- | Key-value pairs that can be used to group and search for host keys.
[$sel:tags:DescribedHostKey'] :: DescribedHostKey -> Maybe (NonEmpty Tag)
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
[$sel:type':DescribedHostKey'] :: DescribedHostKey -> Maybe Text
-- | The unique Amazon Resource Name (ARN) for the host key.
[$sel:arn:DescribedHostKey'] :: DescribedHostKey -> Text
-- | Create a value of DescribedHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:DescribedHostKey',
-- describedHostKey_dateImported - The date on which the host key
-- was added to the server.
--
-- $sel:description:DescribedHostKey',
-- describedHostKey_description - The text description for this
-- host key.
--
-- $sel:hostKeyFingerprint:DescribedHostKey',
-- describedHostKey_hostKeyFingerprint - The public key
-- fingerprint, which is a short sequence of bytes used to identify the
-- longer public key.
--
-- $sel:hostKeyId:DescribedHostKey',
-- describedHostKey_hostKeyId - A unique identifier for the host
-- key.
--
-- $sel:tags:DescribedHostKey', describedHostKey_tags -
-- Key-value pairs that can be used to group and search for host keys.
--
-- $sel:type':DescribedHostKey', describedHostKey_type -
-- The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
--
-- $sel:arn:DescribedHostKey', describedHostKey_arn - The
-- unique Amazon Resource Name (ARN) for the host key.
newDescribedHostKey :: Text -> DescribedHostKey
-- | The date on which the host key was added to the server.
describedHostKey_dateImported :: Lens' DescribedHostKey (Maybe UTCTime)
-- | The text description for this host key.
describedHostKey_description :: Lens' DescribedHostKey (Maybe Text)
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
describedHostKey_hostKeyFingerprint :: Lens' DescribedHostKey (Maybe Text)
-- | A unique identifier for the host key.
describedHostKey_hostKeyId :: Lens' DescribedHostKey (Maybe Text)
-- | Key-value pairs that can be used to group and search for host keys.
describedHostKey_tags :: Lens' DescribedHostKey (Maybe (NonEmpty Tag))
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
describedHostKey_type :: Lens' DescribedHostKey (Maybe Text)
-- | The unique Amazon Resource Name (ARN) for the host key.
describedHostKey_arn :: Lens' DescribedHostKey Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedHostKey.DescribedHostKey
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedHostKey.DescribedHostKey
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedHostKey.DescribedHostKey
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedHostKey.DescribedHostKey
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedHostKey.DescribedHostKey
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedHostKey.DescribedHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedHostKey.DescribedHostKey
module Amazonka.Transfer.Types.DescribedConnector
-- | Describes the parameters for the connector, as identified by the
-- ConnectorId.
--
-- See: newDescribedConnector smart constructor.
data DescribedConnector
DescribedConnector' :: Maybe Text -> Maybe As2ConnectorConfig -> Maybe Text -> Maybe Text -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedConnector
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
[$sel:accessRole:DescribedConnector'] :: DescribedConnector -> Maybe Text
-- | A structure that contains the parameters for a connector object.
[$sel:as2Config:DescribedConnector'] :: DescribedConnector -> Maybe As2ConnectorConfig
-- | The unique identifier for the connector.
[$sel:connectorId:DescribedConnector'] :: DescribedConnector -> Maybe Text
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
[$sel:loggingRole:DescribedConnector'] :: DescribedConnector -> Maybe Text
-- | Key-value pairs that can be used to group and search for connectors.
[$sel:tags:DescribedConnector'] :: DescribedConnector -> Maybe (NonEmpty Tag)
-- | The URL of the partner's AS2 endpoint.
[$sel:url:DescribedConnector'] :: DescribedConnector -> Maybe Text
-- | The unique Amazon Resource Name (ARN) for the connector.
[$sel:arn:DescribedConnector'] :: DescribedConnector -> Text
-- | Create a value of DescribedConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:accessRole:DescribedConnector',
-- describedConnector_accessRole - With AS2, you can send files by
-- calling StartFileTransfer and specifying the file paths in
-- the request parameter, SendFilePaths. We use the file’s
-- parent directory (for example, for --send-file-paths
-- /bucket/dir/file.txt, parent directory is /bucket/dir/)
-- to temporarily store a processed AS2 message file, store the MDN when
-- we receive them from the partner, and write a final JSON file
-- containing relevant metadata of the transmission. So, the
-- AccessRole needs to provide read and write access to the
-- parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- $sel:as2Config:DescribedConnector',
-- describedConnector_as2Config - A structure that contains the
-- parameters for a connector object.
--
-- $sel:connectorId:DescribedConnector',
-- describedConnector_connectorId - The unique identifier for the
-- connector.
--
-- $sel:loggingRole:DescribedConnector',
-- describedConnector_loggingRole - The Amazon Resource Name (ARN)
-- of the Identity and Access Management (IAM) role that allows a
-- connector to turn on CloudWatch logging for Amazon S3 events. When
-- set, you can view connector activity in your CloudWatch logs.
--
-- $sel:tags:DescribedConnector', describedConnector_tags -
-- Key-value pairs that can be used to group and search for connectors.
--
-- $sel:url:DescribedConnector', describedConnector_url -
-- The URL of the partner's AS2 endpoint.
--
-- $sel:arn:DescribedConnector', describedConnector_arn -
-- The unique Amazon Resource Name (ARN) for the connector.
newDescribedConnector :: Text -> DescribedConnector
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
describedConnector_accessRole :: Lens' DescribedConnector (Maybe Text)
-- | A structure that contains the parameters for a connector object.
describedConnector_as2Config :: Lens' DescribedConnector (Maybe As2ConnectorConfig)
-- | The unique identifier for the connector.
describedConnector_connectorId :: Lens' DescribedConnector (Maybe Text)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
describedConnector_loggingRole :: Lens' DescribedConnector (Maybe Text)
-- | Key-value pairs that can be used to group and search for connectors.
describedConnector_tags :: Lens' DescribedConnector (Maybe (NonEmpty Tag))
-- | The URL of the partner's AS2 endpoint.
describedConnector_url :: Lens' DescribedConnector (Maybe Text)
-- | The unique Amazon Resource Name (ARN) for the connector.
describedConnector_arn :: Lens' DescribedConnector Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedConnector.DescribedConnector
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedConnector.DescribedConnector
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedConnector.DescribedConnector
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedConnector.DescribedConnector
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedConnector.DescribedConnector
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedConnector.DescribedConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedConnector.DescribedConnector
module Amazonka.Transfer.Types.DescribedCertificate
-- | Describes the properties of a certificate.
--
-- See: newDescribedCertificate smart constructor.
data DescribedCertificate
DescribedCertificate' :: Maybe POSIX -> Maybe (Sensitive Text) -> Maybe (Sensitive Text) -> Maybe Text -> Maybe Text -> Maybe POSIX -> Maybe POSIX -> Maybe POSIX -> Maybe Text -> Maybe CertificateStatusType -> Maybe (NonEmpty Tag) -> Maybe CertificateType -> Maybe CertificateUsageType -> Text -> DescribedCertificate
-- | An optional date that specifies when the certificate becomes active.
[$sel:activeDate:DescribedCertificate'] :: DescribedCertificate -> Maybe POSIX
-- | The file name for the certificate.
[$sel:certificate:DescribedCertificate'] :: DescribedCertificate -> Maybe (Sensitive Text)
-- | The list of certificates that make up the chain for the certificate.
[$sel:certificateChain:DescribedCertificate'] :: DescribedCertificate -> Maybe (Sensitive Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateId:DescribedCertificate'] :: DescribedCertificate -> Maybe Text
-- | The name or description that's used to identity the certificate.
[$sel:description:DescribedCertificate'] :: DescribedCertificate -> Maybe Text
-- | An optional date that specifies when the certificate becomes inactive.
[$sel:inactiveDate:DescribedCertificate'] :: DescribedCertificate -> Maybe POSIX
-- | The final date that the certificate is valid.
[$sel:notAfterDate:DescribedCertificate'] :: DescribedCertificate -> Maybe POSIX
-- | The earliest date that the certificate is valid.
[$sel:notBeforeDate:DescribedCertificate'] :: DescribedCertificate -> Maybe POSIX
-- | The serial number for the certificate.
[$sel:serial:DescribedCertificate'] :: DescribedCertificate -> Maybe Text
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
[$sel:status:DescribedCertificate'] :: DescribedCertificate -> Maybe CertificateStatusType
-- | Key-value pairs that can be used to group and search for certificates.
[$sel:tags:DescribedCertificate'] :: DescribedCertificate -> Maybe (NonEmpty Tag)
-- | If a private key has been specified for the certificate, its type is
-- CERTIFICATE_WITH_PRIVATE_KEY. If there is no private key, the
-- type is CERTIFICATE.
[$sel:type':DescribedCertificate'] :: DescribedCertificate -> Maybe CertificateType
-- | Specifies whether this certificate is used for signing or encryption.
[$sel:usage:DescribedCertificate'] :: DescribedCertificate -> Maybe CertificateUsageType
-- | The unique Amazon Resource Name (ARN) for the certificate.
[$sel:arn:DescribedCertificate'] :: DescribedCertificate -> Text
-- | Create a value of DescribedCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:activeDate:DescribedCertificate',
-- describedCertificate_activeDate - An optional date that
-- specifies when the certificate becomes active.
--
-- $sel:certificate:DescribedCertificate',
-- describedCertificate_certificate - The file name for the
-- certificate.
--
-- $sel:certificateChain:DescribedCertificate',
-- describedCertificate_certificateChain - The list of
-- certificates that make up the chain for the certificate.
--
-- $sel:certificateId:DescribedCertificate',
-- describedCertificate_certificateId - An array of identifiers
-- for the imported certificates. You use this identifier for working
-- with profiles and partner profiles.
--
-- $sel:description:DescribedCertificate',
-- describedCertificate_description - The name or description
-- that's used to identity the certificate.
--
-- $sel:inactiveDate:DescribedCertificate',
-- describedCertificate_inactiveDate - An optional date that
-- specifies when the certificate becomes inactive.
--
-- $sel:notAfterDate:DescribedCertificate',
-- describedCertificate_notAfterDate - The final date that the
-- certificate is valid.
--
-- $sel:notBeforeDate:DescribedCertificate',
-- describedCertificate_notBeforeDate - The earliest date that the
-- certificate is valid.
--
-- $sel:serial:DescribedCertificate',
-- describedCertificate_serial - The serial number for the
-- certificate.
--
-- $sel:status:DescribedCertificate',
-- describedCertificate_status - The certificate can be either
-- ACTIVE, PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
--
-- $sel:tags:DescribedCertificate',
-- describedCertificate_tags - Key-value pairs that can be used to
-- group and search for certificates.
--
-- $sel:type':DescribedCertificate',
-- describedCertificate_type - If a private key has been specified
-- for the certificate, its type is
-- CERTIFICATE_WITH_PRIVATE_KEY. If there is no private key, the
-- type is CERTIFICATE.
--
-- $sel:usage:DescribedCertificate',
-- describedCertificate_usage - Specifies whether this certificate
-- is used for signing or encryption.
--
-- $sel:arn:DescribedCertificate', describedCertificate_arn
-- - The unique Amazon Resource Name (ARN) for the certificate.
newDescribedCertificate :: Text -> DescribedCertificate
-- | An optional date that specifies when the certificate becomes active.
describedCertificate_activeDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The file name for the certificate.
describedCertificate_certificate :: Lens' DescribedCertificate (Maybe Text)
-- | The list of certificates that make up the chain for the certificate.
describedCertificate_certificateChain :: Lens' DescribedCertificate (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
describedCertificate_certificateId :: Lens' DescribedCertificate (Maybe Text)
-- | The name or description that's used to identity the certificate.
describedCertificate_description :: Lens' DescribedCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
describedCertificate_inactiveDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The final date that the certificate is valid.
describedCertificate_notAfterDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The earliest date that the certificate is valid.
describedCertificate_notBeforeDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The serial number for the certificate.
describedCertificate_serial :: Lens' DescribedCertificate (Maybe Text)
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
describedCertificate_status :: Lens' DescribedCertificate (Maybe CertificateStatusType)
-- | Key-value pairs that can be used to group and search for certificates.
describedCertificate_tags :: Lens' DescribedCertificate (Maybe (NonEmpty Tag))
-- | If a private key has been specified for the certificate, its type is
-- CERTIFICATE_WITH_PRIVATE_KEY. If there is no private key, the
-- type is CERTIFICATE.
describedCertificate_type :: Lens' DescribedCertificate (Maybe CertificateType)
-- | Specifies whether this certificate is used for signing or encryption.
describedCertificate_usage :: Lens' DescribedCertificate (Maybe CertificateUsageType)
-- | The unique Amazon Resource Name (ARN) for the certificate.
describedCertificate_arn :: Lens' DescribedCertificate Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedCertificate.DescribedCertificate
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedCertificate.DescribedCertificate
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedCertificate.DescribedCertificate
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedCertificate.DescribedCertificate
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedCertificate.DescribedCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedCertificate.DescribedCertificate
module Amazonka.Transfer.Types.DescribedAgreement
-- | Describes the properties of an agreement.
--
-- See: newDescribedAgreement smart constructor.
data DescribedAgreement
DescribedAgreement' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe AgreementStatusType -> Maybe (NonEmpty Tag) -> Text -> DescribedAgreement
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
[$sel:accessRole:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
[$sel:agreementId:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | The landing directory (folder) for files that are transferred by using
-- the AS2 protocol.
[$sel:baseDirectory:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | The name or short description that's used to identify the agreement.
[$sel:description:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | A unique identifier for the AS2 local profile.
[$sel:localProfileId:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | A unique identifier for the partner profile used in the agreement.
[$sel:partnerProfileId:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | A system-assigned unique identifier for a server instance. This
-- identifier indicates the specific server that the agreement uses.
[$sel:serverId:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | The current status of the agreement, either ACTIVE or
-- INACTIVE.
[$sel:status:DescribedAgreement'] :: DescribedAgreement -> Maybe AgreementStatusType
-- | Key-value pairs that can be used to group and search for agreements.
[$sel:tags:DescribedAgreement'] :: DescribedAgreement -> Maybe (NonEmpty Tag)
-- | The unique Amazon Resource Name (ARN) for the agreement.
[$sel:arn:DescribedAgreement'] :: DescribedAgreement -> Text
-- | Create a value of DescribedAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:accessRole:DescribedAgreement',
-- describedAgreement_accessRole - With AS2, you can send files by
-- calling StartFileTransfer and specifying the file paths in
-- the request parameter, SendFilePaths. We use the file’s
-- parent directory (for example, for --send-file-paths
-- /bucket/dir/file.txt, parent directory is /bucket/dir/)
-- to temporarily store a processed AS2 message file, store the MDN when
-- we receive them from the partner, and write a final JSON file
-- containing relevant metadata of the transmission. So, the
-- AccessRole needs to provide read and write access to the
-- parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- $sel:agreementId:DescribedAgreement',
-- describedAgreement_agreementId - A unique identifier for the
-- agreement. This identifier is returned when you create an agreement.
--
-- $sel:baseDirectory:DescribedAgreement',
-- describedAgreement_baseDirectory - The landing directory
-- (folder) for files that are transferred by using the AS2 protocol.
--
-- $sel:description:DescribedAgreement',
-- describedAgreement_description - The name or short description
-- that's used to identify the agreement.
--
-- $sel:localProfileId:DescribedAgreement',
-- describedAgreement_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:partnerProfileId:DescribedAgreement',
-- describedAgreement_partnerProfileId - A unique identifier for
-- the partner profile used in the agreement.
--
-- $sel:serverId:DescribedAgreement',
-- describedAgreement_serverId - A system-assigned unique
-- identifier for a server instance. This identifier indicates the
-- specific server that the agreement uses.
--
-- $sel:status:DescribedAgreement',
-- describedAgreement_status - The current status of the
-- agreement, either ACTIVE or INACTIVE.
--
-- $sel:tags:DescribedAgreement', describedAgreement_tags -
-- Key-value pairs that can be used to group and search for agreements.
--
-- $sel:arn:DescribedAgreement', describedAgreement_arn -
-- The unique Amazon Resource Name (ARN) for the agreement.
newDescribedAgreement :: Text -> DescribedAgreement
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
describedAgreement_accessRole :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
describedAgreement_agreementId :: Lens' DescribedAgreement (Maybe Text)
-- | The landing directory (folder) for files that are transferred by using
-- the AS2 protocol.
describedAgreement_baseDirectory :: Lens' DescribedAgreement (Maybe Text)
-- | The name or short description that's used to identify the agreement.
describedAgreement_description :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the AS2 local profile.
describedAgreement_localProfileId :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the partner profile used in the agreement.
describedAgreement_partnerProfileId :: Lens' DescribedAgreement (Maybe Text)
-- | A system-assigned unique identifier for a server instance. This
-- identifier indicates the specific server that the agreement uses.
describedAgreement_serverId :: Lens' DescribedAgreement (Maybe Text)
-- | The current status of the agreement, either ACTIVE or
-- INACTIVE.
describedAgreement_status :: Lens' DescribedAgreement (Maybe AgreementStatusType)
-- | Key-value pairs that can be used to group and search for agreements.
describedAgreement_tags :: Lens' DescribedAgreement (Maybe (NonEmpty Tag))
-- | The unique Amazon Resource Name (ARN) for the agreement.
describedAgreement_arn :: Lens' DescribedAgreement Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedAgreement.DescribedAgreement
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedAgreement.DescribedAgreement
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedAgreement.DescribedAgreement
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedAgreement.DescribedAgreement
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedAgreement.DescribedAgreement
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedAgreement.DescribedAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedAgreement.DescribedAgreement
module Amazonka.Transfer.Types.TagStepDetails
-- | Each step type has its own StepDetails structure.
--
-- The key/value pairs used to tag a file during the execution of a
-- workflow step.
--
-- See: newTagStepDetails smart constructor.
data TagStepDetails
TagStepDetails' :: Maybe Text -> Maybe Text -> Maybe (NonEmpty S3Tag) -> TagStepDetails
-- | The name of the step, used as an identifier.
[$sel:name:TagStepDetails'] :: TagStepDetails -> Maybe Text
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
[$sel:sourceFileLocation:TagStepDetails'] :: TagStepDetails -> Maybe Text
-- | Array that contains from 1 to 10 key/value pairs.
[$sel:tags:TagStepDetails'] :: TagStepDetails -> Maybe (NonEmpty S3Tag)
-- | Create a value of TagStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:TagStepDetails', tagStepDetails_name - The
-- name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:TagStepDetails',
-- tagStepDetails_sourceFileLocation - Specifies which file to use
-- as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
--
-- $sel:tags:TagStepDetails', tagStepDetails_tags - Array
-- that contains from 1 to 10 key/value pairs.
newTagStepDetails :: TagStepDetails
-- | The name of the step, used as an identifier.
tagStepDetails_name :: Lens' TagStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
tagStepDetails_sourceFileLocation :: Lens' TagStepDetails (Maybe Text)
-- | Array that contains from 1 to 10 key/value pairs.
tagStepDetails_tags :: Lens' TagStepDetails (Maybe (NonEmpty S3Tag))
instance GHC.Generics.Generic Amazonka.Transfer.Types.TagStepDetails.TagStepDetails
instance GHC.Show.Show Amazonka.Transfer.Types.TagStepDetails.TagStepDetails
instance GHC.Read.Read Amazonka.Transfer.Types.TagStepDetails.TagStepDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.TagStepDetails.TagStepDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.TagStepDetails.TagStepDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.TagStepDetails.TagStepDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.TagStepDetails.TagStepDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.TagStepDetails.TagStepDetails
module Amazonka.Transfer.Types.TlsSessionResumptionMode
newtype TlsSessionResumptionMode
TlsSessionResumptionMode' :: Text -> TlsSessionResumptionMode
[fromTlsSessionResumptionMode] :: TlsSessionResumptionMode -> Text
pattern TlsSessionResumptionMode_DISABLED :: TlsSessionResumptionMode
pattern TlsSessionResumptionMode_ENABLED :: TlsSessionResumptionMode
pattern TlsSessionResumptionMode_ENFORCED :: TlsSessionResumptionMode
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance GHC.Generics.Generic Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance GHC.Classes.Ord Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance GHC.Classes.Eq Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance GHC.Read.Read Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
instance GHC.Show.Show Amazonka.Transfer.Types.TlsSessionResumptionMode.TlsSessionResumptionMode
module Amazonka.Transfer.Types.ProtocolDetails
-- | The protocol settings that are configured for your server.
--
-- See: newProtocolDetails smart constructor.
data ProtocolDetails
ProtocolDetails' :: Maybe (NonEmpty As2Transport) -> Maybe Text -> Maybe SetStatOption -> Maybe TlsSessionResumptionMode -> ProtocolDetails
-- | Indicates the transport method for the AS2 messages. Currently, only
-- HTTP is supported.
[$sel:as2Transports:ProtocolDetails'] :: ProtocolDetails -> Maybe (NonEmpty As2Transport)
-- | Indicates passive mode, for FTP and FTPS protocols. Enter a single
-- IPv4 address, such as the public IP address of a firewall, router, or
-- load balancer. For example:
--
--
-- aws transfer update-server --protocol-details PassiveIp=0.0.0.0
--
--
-- Replace 0.0.0.0 in the example above with the actual IP
-- address you want to use.
--
-- If you change the PassiveIp value, you must stop and then
-- restart your Transfer Family server for the change to take effect. For
-- details on using passive mode (PASV) in a NAT environment, see
-- Configuring your FTPS server behind a firewall or NAT with Transfer
-- Family.
--
-- Special values
--
-- The AUTO and 0.0.0.0 are special values for the
-- PassiveIp parameter. The value PassiveIp=AUTO is
-- assigned by default to FTP and FTPS type servers. In this case, the
-- server automatically responds with one of the endpoint IPs within the
-- PASV response. PassiveIp=0.0.0.0 has a more unique
-- application for its usage. For example, if you have a High
-- Availability (HA) Network Load Balancer (NLB) environment, where you
-- have 3 subnets, you can only specify a single IP address using the
-- PassiveIp parameter. This reduces the effectiveness of having
-- High Availability. In this case, you can specify
-- PassiveIp=0.0.0.0. This tells the client to use the same IP
-- address as the Control connection and utilize all AZs for their
-- connections. Note, however, that not all FTP clients support the
-- PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support
-- it. If you are using other clients, check to see if your client
-- supports the PassiveIp=0.0.0.0 response.
[$sel:passiveIp:ProtocolDetails'] :: ProtocolDetails -> Maybe Text
-- | Use the SetStatOption to ignore the error that is generated
-- when the client attempts to use SETSTAT on a file you are
-- uploading to an S3 bucket.
--
-- Some SFTP file transfer clients can attempt to change the attributes
-- of remote files, including timestamp and permissions, using commands,
-- such as SETSTAT when uploading the file. However, these
-- commands are not compatible with object storage systems, such as
-- Amazon S3. Due to this incompatibility, file uploads from these
-- clients can result in errors even when the file is otherwise
-- successfully uploaded.
--
-- Set the value to ENABLE_NO_OP to have the Transfer Family
-- server ignore the SETSTAT command, and upload files without
-- needing to make any changes to your SFTP client. While the
-- SetStatOption ENABLE_NO_OP setting ignores the
-- error, it does generate a log entry in Amazon CloudWatch Logs, so you
-- can determine when the client is making a SETSTAT call.
--
-- If you want to preserve the original timestamp for your file, and
-- modify other file attributes using SETSTAT, you can use
-- Amazon EFS as backend storage with Transfer Family.
[$sel:setStatOption:ProtocolDetails'] :: ProtocolDetails -> Maybe SetStatOption
-- | A property used with Transfer Family servers that use the FTPS
-- protocol. TLS Session Resumption provides a mechanism to resume or
-- share a negotiated secret key between the control and data connection
-- for an FTPS session. TlsSessionResumptionMode determines
-- whether or not the server resumes recent, negotiated sessions through
-- a unique session ID. This property is available during
-- CreateServer and UpdateServer calls. If a
-- TlsSessionResumptionMode value is not specified during
-- CreateServer, it is set to ENFORCED by default.
--
--
-- - DISABLED: the server does not process TLS session
-- resumption client requests and creates a new TLS session for each
-- request.
-- - ENABLED: the server processes and accepts clients that
-- are performing TLS session resumption. The server doesn't reject
-- client data connections that do not perform the TLS session resumption
-- client processing.
-- - ENFORCED: the server processes and accepts clients that
-- are performing TLS session resumption. The server rejects client data
-- connections that do not perform the TLS session resumption client
-- processing. Before you set the value to ENFORCED, test your
-- clients.Not all FTPS clients perform TLS session resumption. So, if
-- you choose to enforce TLS session resumption, you prevent any
-- connections from FTPS clients that don't perform the protocol
-- negotiation. To determine whether or not you can use the
-- ENFORCED value, you need to test your clients.
--
[$sel:tlsSessionResumptionMode:ProtocolDetails'] :: ProtocolDetails -> Maybe TlsSessionResumptionMode
-- | Create a value of ProtocolDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:as2Transports:ProtocolDetails',
-- protocolDetails_as2Transports - Indicates the transport method
-- for the AS2 messages. Currently, only HTTP is supported.
--
-- $sel:passiveIp:ProtocolDetails',
-- protocolDetails_passiveIp - Indicates passive mode, for FTP and
-- FTPS protocols. Enter a single IPv4 address, such as the public IP
-- address of a firewall, router, or load balancer. For example:
--
--
-- aws transfer update-server --protocol-details PassiveIp=0.0.0.0
--
--
-- Replace 0.0.0.0 in the example above with the actual IP
-- address you want to use.
--
-- If you change the PassiveIp value, you must stop and then
-- restart your Transfer Family server for the change to take effect. For
-- details on using passive mode (PASV) in a NAT environment, see
-- Configuring your FTPS server behind a firewall or NAT with Transfer
-- Family.
--
-- Special values
--
-- The AUTO and 0.0.0.0 are special values for the
-- PassiveIp parameter. The value PassiveIp=AUTO is
-- assigned by default to FTP and FTPS type servers. In this case, the
-- server automatically responds with one of the endpoint IPs within the
-- PASV response. PassiveIp=0.0.0.0 has a more unique
-- application for its usage. For example, if you have a High
-- Availability (HA) Network Load Balancer (NLB) environment, where you
-- have 3 subnets, you can only specify a single IP address using the
-- PassiveIp parameter. This reduces the effectiveness of having
-- High Availability. In this case, you can specify
-- PassiveIp=0.0.0.0. This tells the client to use the same IP
-- address as the Control connection and utilize all AZs for their
-- connections. Note, however, that not all FTP clients support the
-- PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support
-- it. If you are using other clients, check to see if your client
-- supports the PassiveIp=0.0.0.0 response.
--
-- $sel:setStatOption:ProtocolDetails',
-- protocolDetails_setStatOption - Use the SetStatOption
-- to ignore the error that is generated when the client attempts to use
-- SETSTAT on a file you are uploading to an S3 bucket.
--
-- Some SFTP file transfer clients can attempt to change the attributes
-- of remote files, including timestamp and permissions, using commands,
-- such as SETSTAT when uploading the file. However, these
-- commands are not compatible with object storage systems, such as
-- Amazon S3. Due to this incompatibility, file uploads from these
-- clients can result in errors even when the file is otherwise
-- successfully uploaded.
--
-- Set the value to ENABLE_NO_OP to have the Transfer Family
-- server ignore the SETSTAT command, and upload files without
-- needing to make any changes to your SFTP client. While the
-- SetStatOption ENABLE_NO_OP setting ignores the
-- error, it does generate a log entry in Amazon CloudWatch Logs, so you
-- can determine when the client is making a SETSTAT call.
--
-- If you want to preserve the original timestamp for your file, and
-- modify other file attributes using SETSTAT, you can use
-- Amazon EFS as backend storage with Transfer Family.
--
-- $sel:tlsSessionResumptionMode:ProtocolDetails',
-- protocolDetails_tlsSessionResumptionMode - A property used with
-- Transfer Family servers that use the FTPS protocol. TLS Session
-- Resumption provides a mechanism to resume or share a negotiated secret
-- key between the control and data connection for an FTPS session.
-- TlsSessionResumptionMode determines whether or not the server
-- resumes recent, negotiated sessions through a unique session ID. This
-- property is available during CreateServer and
-- UpdateServer calls. If a TlsSessionResumptionMode
-- value is not specified during CreateServer, it is set to
-- ENFORCED by default.
--
--
-- - DISABLED: the server does not process TLS session
-- resumption client requests and creates a new TLS session for each
-- request.
-- - ENABLED: the server processes and accepts clients that
-- are performing TLS session resumption. The server doesn't reject
-- client data connections that do not perform the TLS session resumption
-- client processing.
-- - ENFORCED: the server processes and accepts clients that
-- are performing TLS session resumption. The server rejects client data
-- connections that do not perform the TLS session resumption client
-- processing. Before you set the value to ENFORCED, test your
-- clients.Not all FTPS clients perform TLS session resumption. So, if
-- you choose to enforce TLS session resumption, you prevent any
-- connections from FTPS clients that don't perform the protocol
-- negotiation. To determine whether or not you can use the
-- ENFORCED value, you need to test your clients.
--
newProtocolDetails :: ProtocolDetails
-- | Indicates the transport method for the AS2 messages. Currently, only
-- HTTP is supported.
protocolDetails_as2Transports :: Lens' ProtocolDetails (Maybe (NonEmpty As2Transport))
-- | Indicates passive mode, for FTP and FTPS protocols. Enter a single
-- IPv4 address, such as the public IP address of a firewall, router, or
-- load balancer. For example:
--
--
-- aws transfer update-server --protocol-details PassiveIp=0.0.0.0
--
--
-- Replace 0.0.0.0 in the example above with the actual IP
-- address you want to use.
--
-- If you change the PassiveIp value, you must stop and then
-- restart your Transfer Family server for the change to take effect. For
-- details on using passive mode (PASV) in a NAT environment, see
-- Configuring your FTPS server behind a firewall or NAT with Transfer
-- Family.
--
-- Special values
--
-- The AUTO and 0.0.0.0 are special values for the
-- PassiveIp parameter. The value PassiveIp=AUTO is
-- assigned by default to FTP and FTPS type servers. In this case, the
-- server automatically responds with one of the endpoint IPs within the
-- PASV response. PassiveIp=0.0.0.0 has a more unique
-- application for its usage. For example, if you have a High
-- Availability (HA) Network Load Balancer (NLB) environment, where you
-- have 3 subnets, you can only specify a single IP address using the
-- PassiveIp parameter. This reduces the effectiveness of having
-- High Availability. In this case, you can specify
-- PassiveIp=0.0.0.0. This tells the client to use the same IP
-- address as the Control connection and utilize all AZs for their
-- connections. Note, however, that not all FTP clients support the
-- PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support
-- it. If you are using other clients, check to see if your client
-- supports the PassiveIp=0.0.0.0 response.
protocolDetails_passiveIp :: Lens' ProtocolDetails (Maybe Text)
-- | Use the SetStatOption to ignore the error that is generated
-- when the client attempts to use SETSTAT on a file you are
-- uploading to an S3 bucket.
--
-- Some SFTP file transfer clients can attempt to change the attributes
-- of remote files, including timestamp and permissions, using commands,
-- such as SETSTAT when uploading the file. However, these
-- commands are not compatible with object storage systems, such as
-- Amazon S3. Due to this incompatibility, file uploads from these
-- clients can result in errors even when the file is otherwise
-- successfully uploaded.
--
-- Set the value to ENABLE_NO_OP to have the Transfer Family
-- server ignore the SETSTAT command, and upload files without
-- needing to make any changes to your SFTP client. While the
-- SetStatOption ENABLE_NO_OP setting ignores the
-- error, it does generate a log entry in Amazon CloudWatch Logs, so you
-- can determine when the client is making a SETSTAT call.
--
-- If you want to preserve the original timestamp for your file, and
-- modify other file attributes using SETSTAT, you can use
-- Amazon EFS as backend storage with Transfer Family.
protocolDetails_setStatOption :: Lens' ProtocolDetails (Maybe SetStatOption)
-- | A property used with Transfer Family servers that use the FTPS
-- protocol. TLS Session Resumption provides a mechanism to resume or
-- share a negotiated secret key between the control and data connection
-- for an FTPS session. TlsSessionResumptionMode determines
-- whether or not the server resumes recent, negotiated sessions through
-- a unique session ID. This property is available during
-- CreateServer and UpdateServer calls. If a
-- TlsSessionResumptionMode value is not specified during
-- CreateServer, it is set to ENFORCED by default.
--
--
-- - DISABLED: the server does not process TLS session
-- resumption client requests and creates a new TLS session for each
-- request.
-- - ENABLED: the server processes and accepts clients that
-- are performing TLS session resumption. The server doesn't reject
-- client data connections that do not perform the TLS session resumption
-- client processing.
-- - ENFORCED: the server processes and accepts clients that
-- are performing TLS session resumption. The server rejects client data
-- connections that do not perform the TLS session resumption client
-- processing. Before you set the value to ENFORCED, test your
-- clients.Not all FTPS clients perform TLS session resumption. So, if
-- you choose to enforce TLS session resumption, you prevent any
-- connections from FTPS clients that don't perform the protocol
-- negotiation. To determine whether or not you can use the
-- ENFORCED value, you need to test your clients.
--
protocolDetails_tlsSessionResumptionMode :: Lens' ProtocolDetails (Maybe TlsSessionResumptionMode)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ProtocolDetails.ProtocolDetails
instance GHC.Show.Show Amazonka.Transfer.Types.ProtocolDetails.ProtocolDetails
instance GHC.Read.Read Amazonka.Transfer.Types.ProtocolDetails.ProtocolDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.ProtocolDetails.ProtocolDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ProtocolDetails.ProtocolDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ProtocolDetails.ProtocolDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ProtocolDetails.ProtocolDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.ProtocolDetails.ProtocolDetails
module Amazonka.Transfer.Types.UserDetails
-- | Specifies the user name, server ID, and session ID for a workflow.
--
-- See: newUserDetails smart constructor.
data UserDetails
UserDetails' :: Maybe Text -> Text -> Text -> UserDetails
-- | The system-assigned unique identifier for a session that corresponds
-- to the workflow.
[$sel:sessionId:UserDetails'] :: UserDetails -> Maybe Text
-- | A unique string that identifies a user account associated with a
-- server.
[$sel:userName:UserDetails'] :: UserDetails -> Text
-- | The system-assigned unique identifier for a Transfer server instance.
[$sel:serverId:UserDetails'] :: UserDetails -> Text
-- | Create a value of UserDetails with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:sessionId:UserDetails', userDetails_sessionId - The
-- system-assigned unique identifier for a session that corresponds to
-- the workflow.
--
-- $sel:userName:UserDetails', userDetails_userName - A
-- unique string that identifies a user account associated with a server.
--
-- $sel:serverId:UserDetails', userDetails_serverId - The
-- system-assigned unique identifier for a Transfer server instance.
newUserDetails :: Text -> Text -> UserDetails
-- | The system-assigned unique identifier for a session that corresponds
-- to the workflow.
userDetails_sessionId :: Lens' UserDetails (Maybe Text)
-- | A unique string that identifies a user account associated with a
-- server.
userDetails_userName :: Lens' UserDetails Text
-- | The system-assigned unique identifier for a Transfer server instance.
userDetails_serverId :: Lens' UserDetails Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.UserDetails.UserDetails
instance GHC.Show.Show Amazonka.Transfer.Types.UserDetails.UserDetails
instance GHC.Read.Read Amazonka.Transfer.Types.UserDetails.UserDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.UserDetails.UserDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.UserDetails.UserDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.UserDetails.UserDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.UserDetails.UserDetails
module Amazonka.Transfer.Types.ServiceMetadata
-- | A container object for the session details that are associated with a
-- workflow.
--
-- See: newServiceMetadata smart constructor.
data ServiceMetadata
ServiceMetadata' :: UserDetails -> ServiceMetadata
-- | The Server ID (ServerId), Session ID (SessionId) and
-- user (UserName) make up the UserDetails.
[$sel:userDetails:ServiceMetadata'] :: ServiceMetadata -> UserDetails
-- | Create a value of ServiceMetadata with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:userDetails:ServiceMetadata',
-- serviceMetadata_userDetails - The Server ID
-- (ServerId), Session ID (SessionId) and user
-- (UserName) make up the UserDetails.
newServiceMetadata :: UserDetails -> ServiceMetadata
-- | The Server ID (ServerId), Session ID (SessionId) and
-- user (UserName) make up the UserDetails.
serviceMetadata_userDetails :: Lens' ServiceMetadata UserDetails
instance GHC.Generics.Generic Amazonka.Transfer.Types.ServiceMetadata.ServiceMetadata
instance GHC.Show.Show Amazonka.Transfer.Types.ServiceMetadata.ServiceMetadata
instance GHC.Read.Read Amazonka.Transfer.Types.ServiceMetadata.ServiceMetadata
instance GHC.Classes.Eq Amazonka.Transfer.Types.ServiceMetadata.ServiceMetadata
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ServiceMetadata.ServiceMetadata
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ServiceMetadata.ServiceMetadata
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ServiceMetadata.ServiceMetadata
module Amazonka.Transfer.Types.ListedExecution
-- | Returns properties of the execution that is specified.
--
-- See: newListedExecution smart constructor.
data ListedExecution
ListedExecution' :: Maybe Text -> Maybe FileLocation -> Maybe ServiceMetadata -> Maybe ExecutionStatus -> ListedExecution
-- | A unique identifier for the execution of a workflow.
[$sel:executionId:ListedExecution'] :: ListedExecution -> Maybe Text
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
[$sel:initialFileLocation:ListedExecution'] :: ListedExecution -> Maybe FileLocation
-- | A container object for the session details that are associated with a
-- workflow.
[$sel:serviceMetadata:ListedExecution'] :: ListedExecution -> Maybe ServiceMetadata
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
[$sel:status:ListedExecution'] :: ListedExecution -> Maybe ExecutionStatus
-- | Create a value of ListedExecution with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:executionId:ListedExecution',
-- listedExecution_executionId - A unique identifier for the
-- execution of a workflow.
--
-- $sel:initialFileLocation:ListedExecution',
-- listedExecution_initialFileLocation - A structure that
-- describes the Amazon S3 or EFS file location. This is the file
-- location when the execution begins: if the file is being copied, this
-- is the initial (as opposed to destination) file location.
--
-- $sel:serviceMetadata:ListedExecution',
-- listedExecution_serviceMetadata - A container object for the
-- session details that are associated with a workflow.
--
-- $sel:status:ListedExecution', listedExecution_status -
-- The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
newListedExecution :: ListedExecution
-- | A unique identifier for the execution of a workflow.
listedExecution_executionId :: Lens' ListedExecution (Maybe Text)
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
listedExecution_initialFileLocation :: Lens' ListedExecution (Maybe FileLocation)
-- | A container object for the session details that are associated with a
-- workflow.
listedExecution_serviceMetadata :: Lens' ListedExecution (Maybe ServiceMetadata)
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
listedExecution_status :: Lens' ListedExecution (Maybe ExecutionStatus)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ListedExecution.ListedExecution
instance GHC.Show.Show Amazonka.Transfer.Types.ListedExecution.ListedExecution
instance GHC.Read.Read Amazonka.Transfer.Types.ListedExecution.ListedExecution
instance GHC.Classes.Eq Amazonka.Transfer.Types.ListedExecution.ListedExecution
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ListedExecution.ListedExecution
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ListedExecution.ListedExecution
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ListedExecution.ListedExecution
module Amazonka.Transfer.Types.WorkflowDetail
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- See: newWorkflowDetail smart constructor.
data WorkflowDetail
WorkflowDetail' :: Text -> Text -> WorkflowDetail
-- | A unique identifier for the workflow.
[$sel:workflowId:WorkflowDetail'] :: WorkflowDetail -> Text
-- | Includes the necessary permissions for S3, EFS, and Lambda operations
-- that Transfer can assume, so that all workflow steps can operate on
-- the required resources
[$sel:executionRole:WorkflowDetail'] :: WorkflowDetail -> Text
-- | Create a value of WorkflowDetail with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:workflowId:WorkflowDetail',
-- workflowDetail_workflowId - A unique identifier for the
-- workflow.
--
-- $sel:executionRole:WorkflowDetail',
-- workflowDetail_executionRole - Includes the necessary
-- permissions for S3, EFS, and Lambda operations that Transfer can
-- assume, so that all workflow steps can operate on the required
-- resources
newWorkflowDetail :: Text -> Text -> WorkflowDetail
-- | A unique identifier for the workflow.
workflowDetail_workflowId :: Lens' WorkflowDetail Text
-- | Includes the necessary permissions for S3, EFS, and Lambda operations
-- that Transfer can assume, so that all workflow steps can operate on
-- the required resources
workflowDetail_executionRole :: Lens' WorkflowDetail Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.WorkflowDetail.WorkflowDetail
instance GHC.Show.Show Amazonka.Transfer.Types.WorkflowDetail.WorkflowDetail
instance GHC.Read.Read Amazonka.Transfer.Types.WorkflowDetail.WorkflowDetail
instance GHC.Classes.Eq Amazonka.Transfer.Types.WorkflowDetail.WorkflowDetail
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.WorkflowDetail.WorkflowDetail
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.WorkflowDetail.WorkflowDetail
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.WorkflowDetail.WorkflowDetail
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.WorkflowDetail.WorkflowDetail
module Amazonka.Transfer.Types.WorkflowDetails
-- | Container for the WorkflowDetail data type. It is used by
-- actions that trigger a workflow to begin execution.
--
-- See: newWorkflowDetails smart constructor.
data WorkflowDetails
WorkflowDetails' :: Maybe [WorkflowDetail] -> Maybe [WorkflowDetail] -> WorkflowDetails
-- | A trigger that starts a workflow if a file is only partially uploaded.
-- You can attach a workflow to a server that executes whenever there is
-- a partial upload.
--
-- A partial upload occurs when a file is open when the session
-- disconnects.
[$sel:onPartialUpload:WorkflowDetails'] :: WorkflowDetails -> Maybe [WorkflowDetail]
-- | A trigger that starts a workflow: the workflow begins to execute after
-- a file is uploaded.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
[$sel:onUpload:WorkflowDetails'] :: WorkflowDetails -> Maybe [WorkflowDetail]
-- | Create a value of WorkflowDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:onPartialUpload:WorkflowDetails',
-- workflowDetails_onPartialUpload - A trigger that starts a
-- workflow if a file is only partially uploaded. You can attach a
-- workflow to a server that executes whenever there is a partial upload.
--
-- A partial upload occurs when a file is open when the session
-- disconnects.
--
-- $sel:onUpload:WorkflowDetails', workflowDetails_onUpload
-- - A trigger that starts a workflow: the workflow begins to execute
-- after a file is uploaded.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
newWorkflowDetails :: WorkflowDetails
-- | A trigger that starts a workflow if a file is only partially uploaded.
-- You can attach a workflow to a server that executes whenever there is
-- a partial upload.
--
-- A partial upload occurs when a file is open when the session
-- disconnects.
workflowDetails_onPartialUpload :: Lens' WorkflowDetails (Maybe [WorkflowDetail])
-- | A trigger that starts a workflow: the workflow begins to execute after
-- a file is uploaded.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
workflowDetails_onUpload :: Lens' WorkflowDetails (Maybe [WorkflowDetail])
instance GHC.Generics.Generic Amazonka.Transfer.Types.WorkflowDetails.WorkflowDetails
instance GHC.Show.Show Amazonka.Transfer.Types.WorkflowDetails.WorkflowDetails
instance GHC.Read.Read Amazonka.Transfer.Types.WorkflowDetails.WorkflowDetails
instance GHC.Classes.Eq Amazonka.Transfer.Types.WorkflowDetails.WorkflowDetails
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.WorkflowDetails.WorkflowDetails
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.WorkflowDetails.WorkflowDetails
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.WorkflowDetails.WorkflowDetails
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.WorkflowDetails.WorkflowDetails
module Amazonka.Transfer.Types.DescribedServer
-- | Describes the properties of a file transfer protocol-enabled server
-- that was specified.
--
-- See: newDescribedServer smart constructor.
data DescribedServer
DescribedServer' :: Maybe Text -> Maybe Domain -> Maybe EndpointDetails -> Maybe EndpointType -> Maybe Text -> Maybe IdentityProviderDetails -> Maybe IdentityProviderType -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProtocolDetails -> Maybe (NonEmpty Protocol) -> Maybe Text -> Maybe Text -> Maybe State -> Maybe (NonEmpty Tag) -> Maybe Int -> Maybe WorkflowDetails -> Text -> DescribedServer
-- | Specifies the ARN of the Amazon Web ServicesCertificate Manager (ACM)
-- certificate. Required when Protocols is set to FTPS.
[$sel:certificate:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies the domain of the storage system that is used for file
-- transfers.
[$sel:domain:DescribedServer'] :: DescribedServer -> Maybe Domain
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
[$sel:endpointDetails:DescribedServer'] :: DescribedServer -> Maybe EndpointDetails
-- | Defines the type of endpoint that your server is connected to. If your
-- server is connected to a VPC endpoint, your server isn't accessible
-- over the public internet.
[$sel:endpointType:DescribedServer'] :: DescribedServer -> Maybe EndpointType
-- | Specifies the Base64-encoded SHA256 fingerprint of the server's host
-- key. This value is equivalent to the output of the ssh-keygen -l
-- -f my-new-server-key command.
[$sel:hostKeyFingerprint:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies information to call a customer-supplied authentication API.
-- This field is not populated when the IdentityProviderType of
-- a server is AWS_DIRECTORY_SERVICE or
-- SERVICE_MANAGED.
[$sel:identityProviderDetails:DescribedServer'] :: DescribedServer -> Maybe IdentityProviderDetails
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
[$sel:identityProviderType:DescribedServer'] :: DescribedServer -> Maybe IdentityProviderType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
[$sel:loggingRole:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
[$sel:postAuthenticationLoginBanner:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
[$sel:preAuthenticationLoginBanner:DescribedServer'] :: DescribedServer -> Maybe Text
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
[$sel:protocolDetails:DescribedServer'] :: DescribedServer -> Maybe ProtocolDetails
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
[$sel:protocols:DescribedServer'] :: DescribedServer -> Maybe (NonEmpty Protocol)
-- | Specifies the name of the security policy that is attached to the
-- server.
[$sel:securityPolicyName:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies the unique system-assigned identifier for a server that you
-- instantiate.
[$sel:serverId:DescribedServer'] :: DescribedServer -> Maybe Text
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
[$sel:state:DescribedServer'] :: DescribedServer -> Maybe State
-- | Specifies the key-value pairs that you can use to search for and group
-- servers that were assigned to the server that was described.
[$sel:tags:DescribedServer'] :: DescribedServer -> Maybe (NonEmpty Tag)
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
[$sel:userCount:DescribedServer'] :: DescribedServer -> Maybe Int
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
[$sel:workflowDetails:DescribedServer'] :: DescribedServer -> Maybe WorkflowDetails
-- | Specifies the unique Amazon Resource Name (ARN) of the server.
[$sel:arn:DescribedServer'] :: DescribedServer -> Text
-- | Create a value of DescribedServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:certificate:DescribedServer',
-- describedServer_certificate - Specifies the ARN of the Amazon
-- Web ServicesCertificate Manager (ACM) certificate. Required when
-- Protocols is set to FTPS.
--
-- $sel:domain:DescribedServer', describedServer_domain -
-- Specifies the domain of the storage system that is used for file
-- transfers.
--
-- $sel:endpointDetails:DescribedServer',
-- describedServer_endpointDetails - The virtual private cloud
-- (VPC) endpoint settings that are configured for your server. When you
-- host your endpoint within your VPC, you can make your endpoint
-- accessible only to resources within your VPC, or you can attach
-- Elastic IP addresses and make your endpoint accessible to clients over
-- the internet. Your VPC's default security groups are automatically
-- assigned to your endpoint.
--
-- $sel:endpointType:DescribedServer',
-- describedServer_endpointType - Defines the type of endpoint
-- that your server is connected to. If your server is connected to a VPC
-- endpoint, your server isn't accessible over the public internet.
--
-- $sel:hostKeyFingerprint:DescribedServer',
-- describedServer_hostKeyFingerprint - Specifies the
-- Base64-encoded SHA256 fingerprint of the server's host key. This value
-- is equivalent to the output of the ssh-keygen -l -f
-- my-new-server-key command.
--
-- $sel:identityProviderDetails:DescribedServer',
-- describedServer_identityProviderDetails - Specifies information
-- to call a customer-supplied authentication API. This field is not
-- populated when the IdentityProviderType of a server is
-- AWS_DIRECTORY_SERVICE or SERVICE_MANAGED.
--
-- $sel:identityProviderType:DescribedServer',
-- describedServer_identityProviderType - The mode of
-- authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
--
-- $sel:loggingRole:DescribedServer',
-- describedServer_loggingRole - The Amazon Resource Name (ARN) of
-- the Identity and Access Management (IAM) role that allows a server to
-- turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents.
-- When set, you can view user activity in your CloudWatch logs.
--
-- $sel:postAuthenticationLoginBanner:DescribedServer',
-- describedServer_postAuthenticationLoginBanner - Specifies a
-- string to display when users connect to a server. This string is
-- displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
--
-- $sel:preAuthenticationLoginBanner:DescribedServer',
-- describedServer_preAuthenticationLoginBanner - Specifies a
-- string to display when users connect to a server. This string is
-- displayed before the user authenticates. For example, the following
-- banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
--
-- $sel:protocolDetails:DescribedServer',
-- describedServer_protocolDetails - The protocol settings that
-- are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
--
-- $sel:protocols:DescribedServer',
-- describedServer_protocols - Specifies the file transfer
-- protocol or protocols over which your file transfer protocol client
-- can connect to your server's endpoint. The available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
--
-- $sel:securityPolicyName:DescribedServer',
-- describedServer_securityPolicyName - Specifies the name of the
-- security policy that is attached to the server.
--
-- $sel:serverId:DescribedServer', describedServer_serverId
-- - Specifies the unique system-assigned identifier for a server that
-- you instantiate.
--
-- $sel:state:DescribedServer', describedServer_state - The
-- condition of the server that was described. A value of ONLINE
-- indicates that the server can accept jobs and transfer files. A
-- State value of OFFLINE means that the server cannot
-- perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
--
-- $sel:tags:DescribedServer', describedServer_tags -
-- Specifies the key-value pairs that you can use to search for and group
-- servers that were assigned to the server that was described.
--
-- $sel:userCount:DescribedServer',
-- describedServer_userCount - Specifies the number of users that
-- are assigned to a server you specified with the ServerId.
--
-- $sel:workflowDetails:DescribedServer',
-- describedServer_workflowDetails - Specifies the workflow ID for
-- the workflow to assign and the execution role that's used for
-- executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- $sel:arn:DescribedServer', describedServer_arn -
-- Specifies the unique Amazon Resource Name (ARN) of the server.
newDescribedServer :: Text -> DescribedServer
-- | Specifies the ARN of the Amazon Web ServicesCertificate Manager (ACM)
-- certificate. Required when Protocols is set to FTPS.
describedServer_certificate :: Lens' DescribedServer (Maybe Text)
-- | Specifies the domain of the storage system that is used for file
-- transfers.
describedServer_domain :: Lens' DescribedServer (Maybe Domain)
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
describedServer_endpointDetails :: Lens' DescribedServer (Maybe EndpointDetails)
-- | Defines the type of endpoint that your server is connected to. If your
-- server is connected to a VPC endpoint, your server isn't accessible
-- over the public internet.
describedServer_endpointType :: Lens' DescribedServer (Maybe EndpointType)
-- | Specifies the Base64-encoded SHA256 fingerprint of the server's host
-- key. This value is equivalent to the output of the ssh-keygen -l
-- -f my-new-server-key command.
describedServer_hostKeyFingerprint :: Lens' DescribedServer (Maybe Text)
-- | Specifies information to call a customer-supplied authentication API.
-- This field is not populated when the IdentityProviderType of
-- a server is AWS_DIRECTORY_SERVICE or
-- SERVICE_MANAGED.
describedServer_identityProviderDetails :: Lens' DescribedServer (Maybe IdentityProviderDetails)
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
describedServer_identityProviderType :: Lens' DescribedServer (Maybe IdentityProviderType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
describedServer_loggingRole :: Lens' DescribedServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
describedServer_postAuthenticationLoginBanner :: Lens' DescribedServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
describedServer_preAuthenticationLoginBanner :: Lens' DescribedServer (Maybe Text)
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
describedServer_protocolDetails :: Lens' DescribedServer (Maybe ProtocolDetails)
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
describedServer_protocols :: Lens' DescribedServer (Maybe (NonEmpty Protocol))
-- | Specifies the name of the security policy that is attached to the
-- server.
describedServer_securityPolicyName :: Lens' DescribedServer (Maybe Text)
-- | Specifies the unique system-assigned identifier for a server that you
-- instantiate.
describedServer_serverId :: Lens' DescribedServer (Maybe Text)
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
describedServer_state :: Lens' DescribedServer (Maybe State)
-- | Specifies the key-value pairs that you can use to search for and group
-- servers that were assigned to the server that was described.
describedServer_tags :: Lens' DescribedServer (Maybe (NonEmpty Tag))
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
describedServer_userCount :: Lens' DescribedServer (Maybe Int)
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
describedServer_workflowDetails :: Lens' DescribedServer (Maybe WorkflowDetails)
-- | Specifies the unique Amazon Resource Name (ARN) of the server.
describedServer_arn :: Lens' DescribedServer Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedServer.DescribedServer
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedServer.DescribedServer
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedServer.DescribedServer
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedServer.DescribedServer
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedServer.DescribedServer
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedServer.DescribedServer
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedServer.DescribedServer
module Amazonka.Transfer.Types.WorkflowStepType
newtype WorkflowStepType
WorkflowStepType' :: Text -> WorkflowStepType
[fromWorkflowStepType] :: WorkflowStepType -> Text
pattern WorkflowStepType_COPY :: WorkflowStepType
pattern WorkflowStepType_CUSTOM :: WorkflowStepType
pattern WorkflowStepType_DECRYPT :: WorkflowStepType
pattern WorkflowStepType_DELETE :: WorkflowStepType
pattern WorkflowStepType_TAG :: WorkflowStepType
instance Amazonka.Data.XML.ToXML Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Amazonka.Data.XML.FromXML Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Amazonka.Data.Headers.ToHeader Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Amazonka.Data.Log.ToLog Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Amazonka.Data.ByteString.ToByteString Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Amazonka.Data.Text.ToText Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Amazonka.Data.Text.FromText Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance GHC.Generics.Generic Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance GHC.Classes.Ord Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance GHC.Classes.Eq Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance GHC.Read.Read Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
instance GHC.Show.Show Amazonka.Transfer.Types.WorkflowStepType.WorkflowStepType
module Amazonka.Transfer.Types.WorkflowStep
-- | The basic building block of a workflow.
--
-- See: newWorkflowStep smart constructor.
data WorkflowStep
WorkflowStep' :: Maybe CopyStepDetails -> Maybe CustomStepDetails -> Maybe DecryptStepDetails -> Maybe DeleteStepDetails -> Maybe TagStepDetails -> Maybe WorkflowStepType -> WorkflowStep
-- | Details for a step that performs a file copy.
--
-- Consists of the following values:
--
--
-- - A description
-- - An S3 location for the destination of the file copy.
-- - A flag that indicates whether or not to overwrite an existing file
-- of the same name. The default is FALSE.
--
[$sel:copyStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe CopyStepDetails
-- | Details for a step that invokes a lambda function.
--
-- Consists of the lambda function name, target, and timeout (in
-- seconds).
[$sel:customStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe CustomStepDetails
[$sel:decryptStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe DecryptStepDetails
-- | Details for a step that deletes the file.
[$sel:deleteStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe DeleteStepDetails
-- | Details for a step that creates one or more tags.
--
-- You specify one or more tags: each tag contains a key/value pair.
[$sel:tagStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe TagStepDetails
-- | Currently, the following step types are supported.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
[$sel:type':WorkflowStep'] :: WorkflowStep -> Maybe WorkflowStepType
-- | Create a value of WorkflowStep with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:copyStepDetails:WorkflowStep',
-- workflowStep_copyStepDetails - Details for a step that performs
-- a file copy.
--
-- Consists of the following values:
--
--
-- - A description
-- - An S3 location for the destination of the file copy.
-- - A flag that indicates whether or not to overwrite an existing file
-- of the same name. The default is FALSE.
--
--
-- $sel:customStepDetails:WorkflowStep',
-- workflowStep_customStepDetails - Details for a step that
-- invokes a lambda function.
--
-- Consists of the lambda function name, target, and timeout (in
-- seconds).
--
-- $sel:decryptStepDetails:WorkflowStep',
-- workflowStep_decryptStepDetails - Undocumented member.
--
-- $sel:deleteStepDetails:WorkflowStep',
-- workflowStep_deleteStepDetails - Details for a step that
-- deletes the file.
--
-- $sel:tagStepDetails:WorkflowStep',
-- workflowStep_tagStepDetails - Details for a step that creates
-- one or more tags.
--
-- You specify one or more tags: each tag contains a key/value pair.
--
-- WorkflowStep, workflowStep_type - Currently, the
-- following step types are supported.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
newWorkflowStep :: WorkflowStep
-- | Details for a step that performs a file copy.
--
-- Consists of the following values:
--
--
-- - A description
-- - An S3 location for the destination of the file copy.
-- - A flag that indicates whether or not to overwrite an existing file
-- of the same name. The default is FALSE.
--
workflowStep_copyStepDetails :: Lens' WorkflowStep (Maybe CopyStepDetails)
-- | Details for a step that invokes a lambda function.
--
-- Consists of the lambda function name, target, and timeout (in
-- seconds).
workflowStep_customStepDetails :: Lens' WorkflowStep (Maybe CustomStepDetails)
-- | Undocumented member.
workflowStep_decryptStepDetails :: Lens' WorkflowStep (Maybe DecryptStepDetails)
-- | Details for a step that deletes the file.
workflowStep_deleteStepDetails :: Lens' WorkflowStep (Maybe DeleteStepDetails)
-- | Details for a step that creates one or more tags.
--
-- You specify one or more tags: each tag contains a key/value pair.
workflowStep_tagStepDetails :: Lens' WorkflowStep (Maybe TagStepDetails)
-- | Currently, the following step types are supported.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
workflowStep_type :: Lens' WorkflowStep (Maybe WorkflowStepType)
instance GHC.Generics.Generic Amazonka.Transfer.Types.WorkflowStep.WorkflowStep
instance GHC.Show.Show Amazonka.Transfer.Types.WorkflowStep.WorkflowStep
instance GHC.Read.Read Amazonka.Transfer.Types.WorkflowStep.WorkflowStep
instance GHC.Classes.Eq Amazonka.Transfer.Types.WorkflowStep.WorkflowStep
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.WorkflowStep.WorkflowStep
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.WorkflowStep.WorkflowStep
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.WorkflowStep.WorkflowStep
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.Types.WorkflowStep.WorkflowStep
module Amazonka.Transfer.Types.DescribedWorkflow
-- | Describes the properties of the specified workflow
--
-- See: newDescribedWorkflow smart constructor.
data DescribedWorkflow
DescribedWorkflow' :: Maybe Text -> Maybe [WorkflowStep] -> Maybe [WorkflowStep] -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedWorkflow
-- | Specifies the text description for the workflow.
[$sel:description:DescribedWorkflow'] :: DescribedWorkflow -> Maybe Text
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
[$sel:onExceptionSteps:DescribedWorkflow'] :: DescribedWorkflow -> Maybe [WorkflowStep]
-- | Specifies the details for the steps that are in the specified
-- workflow.
[$sel:steps:DescribedWorkflow'] :: DescribedWorkflow -> Maybe [WorkflowStep]
-- | Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
[$sel:tags:DescribedWorkflow'] :: DescribedWorkflow -> Maybe (NonEmpty Tag)
-- | A unique identifier for the workflow.
[$sel:workflowId:DescribedWorkflow'] :: DescribedWorkflow -> Maybe Text
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
[$sel:arn:DescribedWorkflow'] :: DescribedWorkflow -> Text
-- | Create a value of DescribedWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:description:DescribedWorkflow',
-- describedWorkflow_description - Specifies the text description
-- for the workflow.
--
-- $sel:onExceptionSteps:DescribedWorkflow',
-- describedWorkflow_onExceptionSteps - Specifies the steps
-- (actions) to take if errors are encountered during execution of the
-- workflow.
--
-- $sel:steps:DescribedWorkflow', describedWorkflow_steps -
-- Specifies the details for the steps that are in the specified
-- workflow.
--
-- $sel:tags:DescribedWorkflow', describedWorkflow_tags -
-- Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
--
-- $sel:workflowId:DescribedWorkflow',
-- describedWorkflow_workflowId - A unique identifier for the
-- workflow.
--
-- $sel:arn:DescribedWorkflow', describedWorkflow_arn -
-- Specifies the unique Amazon Resource Name (ARN) for the workflow.
newDescribedWorkflow :: Text -> DescribedWorkflow
-- | Specifies the text description for the workflow.
describedWorkflow_description :: Lens' DescribedWorkflow (Maybe Text)
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
describedWorkflow_onExceptionSteps :: Lens' DescribedWorkflow (Maybe [WorkflowStep])
-- | Specifies the details for the steps that are in the specified
-- workflow.
describedWorkflow_steps :: Lens' DescribedWorkflow (Maybe [WorkflowStep])
-- | Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
describedWorkflow_tags :: Lens' DescribedWorkflow (Maybe (NonEmpty Tag))
-- | A unique identifier for the workflow.
describedWorkflow_workflowId :: Lens' DescribedWorkflow (Maybe Text)
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
describedWorkflow_arn :: Lens' DescribedWorkflow Text
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedWorkflow.DescribedWorkflow
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedWorkflow.DescribedWorkflow
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedWorkflow.DescribedWorkflow
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedWorkflow.DescribedWorkflow
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedWorkflow.DescribedWorkflow
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedWorkflow.DescribedWorkflow
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedWorkflow.DescribedWorkflow
module Amazonka.Transfer.Types.ExecutionStepResult
-- | Specifies the following details for the step: error (if any), outputs
-- (if any), and the step type.
--
-- See: newExecutionStepResult smart constructor.
data ExecutionStepResult
ExecutionStepResult' :: Maybe ExecutionError -> Maybe Text -> Maybe WorkflowStepType -> ExecutionStepResult
-- | Specifies the details for an error, if it occurred during execution of
-- the specified workflow step.
[$sel:error:ExecutionStepResult'] :: ExecutionStepResult -> Maybe ExecutionError
-- | The values for the key/value pair applied as a tag to the file. Only
-- applicable if the step type is TAG.
[$sel:outputs:ExecutionStepResult'] :: ExecutionStepResult -> Maybe Text
-- | One of the available step types.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
[$sel:stepType:ExecutionStepResult'] :: ExecutionStepResult -> Maybe WorkflowStepType
-- | Create a value of ExecutionStepResult with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:error:ExecutionStepResult',
-- executionStepResult_error - Specifies the details for an error,
-- if it occurred during execution of the specified workflow step.
--
-- $sel:outputs:ExecutionStepResult',
-- executionStepResult_outputs - The values for the key/value pair
-- applied as a tag to the file. Only applicable if the step type is
-- TAG.
--
-- $sel:stepType:ExecutionStepResult',
-- executionStepResult_stepType - One of the available step types.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
newExecutionStepResult :: ExecutionStepResult
-- | Specifies the details for an error, if it occurred during execution of
-- the specified workflow step.
executionStepResult_error :: Lens' ExecutionStepResult (Maybe ExecutionError)
-- | The values for the key/value pair applied as a tag to the file. Only
-- applicable if the step type is TAG.
executionStepResult_outputs :: Lens' ExecutionStepResult (Maybe Text)
-- | One of the available step types.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
executionStepResult_stepType :: Lens' ExecutionStepResult (Maybe WorkflowStepType)
instance GHC.Generics.Generic Amazonka.Transfer.Types.ExecutionStepResult.ExecutionStepResult
instance GHC.Show.Show Amazonka.Transfer.Types.ExecutionStepResult.ExecutionStepResult
instance GHC.Read.Read Amazonka.Transfer.Types.ExecutionStepResult.ExecutionStepResult
instance GHC.Classes.Eq Amazonka.Transfer.Types.ExecutionStepResult.ExecutionStepResult
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ExecutionStepResult.ExecutionStepResult
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ExecutionStepResult.ExecutionStepResult
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ExecutionStepResult.ExecutionStepResult
module Amazonka.Transfer.Types.ExecutionResults
-- | Specifies the steps in the workflow, as well as the steps to execute
-- in case of any errors during workflow execution.
--
-- See: newExecutionResults smart constructor.
data ExecutionResults
ExecutionResults' :: Maybe (NonEmpty ExecutionStepResult) -> Maybe (NonEmpty ExecutionStepResult) -> ExecutionResults
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
[$sel:onExceptionSteps:ExecutionResults'] :: ExecutionResults -> Maybe (NonEmpty ExecutionStepResult)
-- | Specifies the details for the steps that are in the specified
-- workflow.
[$sel:steps:ExecutionResults'] :: ExecutionResults -> Maybe (NonEmpty ExecutionStepResult)
-- | Create a value of ExecutionResults with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:onExceptionSteps:ExecutionResults',
-- executionResults_onExceptionSteps - Specifies the steps
-- (actions) to take if errors are encountered during execution of the
-- workflow.
--
-- $sel:steps:ExecutionResults', executionResults_steps -
-- Specifies the details for the steps that are in the specified
-- workflow.
newExecutionResults :: ExecutionResults
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
executionResults_onExceptionSteps :: Lens' ExecutionResults (Maybe (NonEmpty ExecutionStepResult))
-- | Specifies the details for the steps that are in the specified
-- workflow.
executionResults_steps :: Lens' ExecutionResults (Maybe (NonEmpty ExecutionStepResult))
instance GHC.Generics.Generic Amazonka.Transfer.Types.ExecutionResults.ExecutionResults
instance GHC.Show.Show Amazonka.Transfer.Types.ExecutionResults.ExecutionResults
instance GHC.Read.Read Amazonka.Transfer.Types.ExecutionResults.ExecutionResults
instance GHC.Classes.Eq Amazonka.Transfer.Types.ExecutionResults.ExecutionResults
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.ExecutionResults.ExecutionResults
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.ExecutionResults.ExecutionResults
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.ExecutionResults.ExecutionResults
module Amazonka.Transfer.Types.DescribedExecution
-- | The details for an execution object.
--
-- See: newDescribedExecution smart constructor.
data DescribedExecution
DescribedExecution' :: Maybe Text -> Maybe Text -> Maybe FileLocation -> Maybe LoggingConfiguration -> Maybe PosixProfile -> Maybe ExecutionResults -> Maybe ServiceMetadata -> Maybe ExecutionStatus -> DescribedExecution
-- | A unique identifier for the execution of a workflow.
[$sel:executionId:DescribedExecution'] :: DescribedExecution -> Maybe Text
-- | The IAM role associated with the execution.
[$sel:executionRole:DescribedExecution'] :: DescribedExecution -> Maybe Text
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
[$sel:initialFileLocation:DescribedExecution'] :: DescribedExecution -> Maybe FileLocation
-- | The IAM logging role associated with the execution.
[$sel:loggingConfiguration:DescribedExecution'] :: DescribedExecution -> Maybe LoggingConfiguration
[$sel:posixProfile:DescribedExecution'] :: DescribedExecution -> Maybe PosixProfile
-- | A structure that describes the execution results. This includes a list
-- of the steps along with the details of each step, error type and
-- message (if any), and the OnExceptionSteps structure.
[$sel:results:DescribedExecution'] :: DescribedExecution -> Maybe ExecutionResults
-- | A container object for the session details that are associated with a
-- workflow.
[$sel:serviceMetadata:DescribedExecution'] :: DescribedExecution -> Maybe ServiceMetadata
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
[$sel:status:DescribedExecution'] :: DescribedExecution -> Maybe ExecutionStatus
-- | Create a value of DescribedExecution with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:executionId:DescribedExecution',
-- describedExecution_executionId - A unique identifier for the
-- execution of a workflow.
--
-- $sel:executionRole:DescribedExecution',
-- describedExecution_executionRole - The IAM role associated with
-- the execution.
--
-- $sel:initialFileLocation:DescribedExecution',
-- describedExecution_initialFileLocation - A structure that
-- describes the Amazon S3 or EFS file location. This is the file
-- location when the execution begins: if the file is being copied, this
-- is the initial (as opposed to destination) file location.
--
-- $sel:loggingConfiguration:DescribedExecution',
-- describedExecution_loggingConfiguration - The IAM logging role
-- associated with the execution.
--
-- $sel:posixProfile:DescribedExecution',
-- describedExecution_posixProfile - Undocumented member.
--
-- $sel:results:DescribedExecution',
-- describedExecution_results - A structure that describes the
-- execution results. This includes a list of the steps along with the
-- details of each step, error type and message (if any), and the
-- OnExceptionSteps structure.
--
-- $sel:serviceMetadata:DescribedExecution',
-- describedExecution_serviceMetadata - A container object for the
-- session details that are associated with a workflow.
--
-- $sel:status:DescribedExecution',
-- describedExecution_status - The status is one of the execution.
-- Can be in progress, completed, exception encountered, or handling the
-- exception.
newDescribedExecution :: DescribedExecution
-- | A unique identifier for the execution of a workflow.
describedExecution_executionId :: Lens' DescribedExecution (Maybe Text)
-- | The IAM role associated with the execution.
describedExecution_executionRole :: Lens' DescribedExecution (Maybe Text)
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
describedExecution_initialFileLocation :: Lens' DescribedExecution (Maybe FileLocation)
-- | The IAM logging role associated with the execution.
describedExecution_loggingConfiguration :: Lens' DescribedExecution (Maybe LoggingConfiguration)
-- | Undocumented member.
describedExecution_posixProfile :: Lens' DescribedExecution (Maybe PosixProfile)
-- | A structure that describes the execution results. This includes a list
-- of the steps along with the details of each step, error type and
-- message (if any), and the OnExceptionSteps structure.
describedExecution_results :: Lens' DescribedExecution (Maybe ExecutionResults)
-- | A container object for the session details that are associated with a
-- workflow.
describedExecution_serviceMetadata :: Lens' DescribedExecution (Maybe ServiceMetadata)
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
describedExecution_status :: Lens' DescribedExecution (Maybe ExecutionStatus)
instance GHC.Generics.Generic Amazonka.Transfer.Types.DescribedExecution.DescribedExecution
instance GHC.Show.Show Amazonka.Transfer.Types.DescribedExecution.DescribedExecution
instance GHC.Read.Read Amazonka.Transfer.Types.DescribedExecution.DescribedExecution
instance GHC.Classes.Eq Amazonka.Transfer.Types.DescribedExecution.DescribedExecution
instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.Transfer.Types.DescribedExecution.DescribedExecution
instance Data.Hashable.Class.Hashable Amazonka.Transfer.Types.DescribedExecution.DescribedExecution
instance Control.DeepSeq.NFData Amazonka.Transfer.Types.DescribedExecution.DescribedExecution
module Amazonka.Transfer.Types
-- | API version 2018-11-05 of the Amazon Transfer Family SDK
-- configuration.
defaultService :: Service
-- | You do not have sufficient access to perform this action.
_AccessDeniedException :: AsError a => Fold a ServiceError
-- | This exception is thrown when the UpdateServer is called for
-- a file transfer protocol-enabled server that has VPC as the endpoint
-- type and the server's VpcEndpointID is not in the available
-- state.
_ConflictException :: AsError a => Fold a ServiceError
-- | This exception is thrown when an error occurs in the Amazon Web
-- ServicesTransfer Family service.
_InternalServiceError :: AsError a => Fold a ServiceError
-- | The NextToken parameter that was passed is invalid.
_InvalidNextTokenException :: AsError a => Fold a ServiceError
-- | This exception is thrown when the client submits a malformed request.
_InvalidRequestException :: AsError a => Fold a ServiceError
-- | The requested resource does not exist.
_ResourceExistsException :: AsError a => Fold a ServiceError
-- | This exception is thrown when a resource is not found by the Amazon
-- Web ServicesTransfer Family service.
_ResourceNotFoundException :: AsError a => Fold a ServiceError
-- | The request has failed because the Amazon Web ServicesTransfer Family
-- service is not available.
_ServiceUnavailableException :: AsError a => Fold a ServiceError
-- | The request was denied due to request throttling.
_ThrottlingException :: AsError a => Fold a ServiceError
newtype AgreementStatusType
AgreementStatusType' :: Text -> AgreementStatusType
[fromAgreementStatusType] :: AgreementStatusType -> Text
pattern AgreementStatusType_ACTIVE :: AgreementStatusType
pattern AgreementStatusType_INACTIVE :: AgreementStatusType
newtype As2Transport
As2Transport' :: Text -> As2Transport
[fromAs2Transport] :: As2Transport -> Text
pattern As2Transport_HTTP :: As2Transport
newtype CertificateStatusType
CertificateStatusType' :: Text -> CertificateStatusType
[fromCertificateStatusType] :: CertificateStatusType -> Text
pattern CertificateStatusType_ACTIVE :: CertificateStatusType
pattern CertificateStatusType_INACTIVE :: CertificateStatusType
pattern CertificateStatusType_PENDING_ROTATION :: CertificateStatusType
newtype CertificateType
CertificateType' :: Text -> CertificateType
[fromCertificateType] :: CertificateType -> Text
pattern CertificateType_CERTIFICATE :: CertificateType
pattern CertificateType_CERTIFICATE_WITH_PRIVATE_KEY :: CertificateType
newtype CertificateUsageType
CertificateUsageType' :: Text -> CertificateUsageType
[fromCertificateUsageType] :: CertificateUsageType -> Text
pattern CertificateUsageType_ENCRYPTION :: CertificateUsageType
pattern CertificateUsageType_SIGNING :: CertificateUsageType
newtype CompressionEnum
CompressionEnum' :: Text -> CompressionEnum
[fromCompressionEnum] :: CompressionEnum -> Text
pattern CompressionEnum_DISABLED :: CompressionEnum
pattern CompressionEnum_ZLIB :: CompressionEnum
newtype CustomStepStatus
CustomStepStatus' :: Text -> CustomStepStatus
[fromCustomStepStatus] :: CustomStepStatus -> Text
pattern CustomStepStatus_FAILURE :: CustomStepStatus
pattern CustomStepStatus_SUCCESS :: CustomStepStatus
newtype Domain
Domain' :: Text -> Domain
[fromDomain] :: Domain -> Text
pattern Domain_EFS :: Domain
pattern Domain_S3 :: Domain
newtype EncryptionAlg
EncryptionAlg' :: Text -> EncryptionAlg
[fromEncryptionAlg] :: EncryptionAlg -> Text
pattern EncryptionAlg_AES128_CBC :: EncryptionAlg
pattern EncryptionAlg_AES192_CBC :: EncryptionAlg
pattern EncryptionAlg_AES256_CBC :: EncryptionAlg
pattern EncryptionAlg_NONE :: EncryptionAlg
newtype EncryptionType
EncryptionType' :: Text -> EncryptionType
[fromEncryptionType] :: EncryptionType -> Text
pattern EncryptionType_PGP :: EncryptionType
newtype EndpointType
EndpointType' :: Text -> EndpointType
[fromEndpointType] :: EndpointType -> Text
pattern EndpointType_PUBLIC :: EndpointType
pattern EndpointType_VPC :: EndpointType
pattern EndpointType_VPC_ENDPOINT :: EndpointType
newtype ExecutionErrorType
ExecutionErrorType' :: Text -> ExecutionErrorType
[fromExecutionErrorType] :: ExecutionErrorType -> Text
pattern ExecutionErrorType_ALREADY_EXISTS :: ExecutionErrorType
pattern ExecutionErrorType_BAD_REQUEST :: ExecutionErrorType
pattern ExecutionErrorType_CUSTOM_STEP_FAILED :: ExecutionErrorType
pattern ExecutionErrorType_INTERNAL_SERVER_ERROR :: ExecutionErrorType
pattern ExecutionErrorType_NOT_FOUND :: ExecutionErrorType
pattern ExecutionErrorType_PERMISSION_DENIED :: ExecutionErrorType
pattern ExecutionErrorType_THROTTLED :: ExecutionErrorType
pattern ExecutionErrorType_TIMEOUT :: ExecutionErrorType
newtype ExecutionStatus
ExecutionStatus' :: Text -> ExecutionStatus
[fromExecutionStatus] :: ExecutionStatus -> Text
pattern ExecutionStatus_COMPLETED :: ExecutionStatus
pattern ExecutionStatus_EXCEPTION :: ExecutionStatus
pattern ExecutionStatus_HANDLING_EXCEPTION :: ExecutionStatus
pattern ExecutionStatus_IN_PROGRESS :: ExecutionStatus
newtype HomeDirectoryType
HomeDirectoryType' :: Text -> HomeDirectoryType
[fromHomeDirectoryType] :: HomeDirectoryType -> Text
pattern HomeDirectoryType_LOGICAL :: HomeDirectoryType
pattern HomeDirectoryType_PATH :: HomeDirectoryType
-- | Returns information related to the type of user authentication that is
-- in use for a file transfer protocol-enabled server's users. For
-- AWS_DIRECTORY_SERVICE or SERVICE_MANAGED
-- authentication, the Secure Shell (SSH) public keys are stored with a
-- user on the server instance. For API_GATEWAY authentication,
-- your custom authentication method is implemented by using an API call.
-- The server can have only one method of authentication.
newtype IdentityProviderType
IdentityProviderType' :: Text -> IdentityProviderType
[fromIdentityProviderType] :: IdentityProviderType -> Text
pattern IdentityProviderType_API_GATEWAY :: IdentityProviderType
pattern IdentityProviderType_AWS_DIRECTORY_SERVICE :: IdentityProviderType
pattern IdentityProviderType_AWS_LAMBDA :: IdentityProviderType
pattern IdentityProviderType_SERVICE_MANAGED :: IdentityProviderType
newtype MdnResponse
MdnResponse' :: Text -> MdnResponse
[fromMdnResponse] :: MdnResponse -> Text
pattern MdnResponse_NONE :: MdnResponse
pattern MdnResponse_SYNC :: MdnResponse
newtype MdnSigningAlg
MdnSigningAlg' :: Text -> MdnSigningAlg
[fromMdnSigningAlg] :: MdnSigningAlg -> Text
pattern MdnSigningAlg_DEFAULT :: MdnSigningAlg
pattern MdnSigningAlg_NONE :: MdnSigningAlg
pattern MdnSigningAlg_SHA1 :: MdnSigningAlg
pattern MdnSigningAlg_SHA256 :: MdnSigningAlg
pattern MdnSigningAlg_SHA384 :: MdnSigningAlg
pattern MdnSigningAlg_SHA512 :: MdnSigningAlg
newtype OverwriteExisting
OverwriteExisting' :: Text -> OverwriteExisting
[fromOverwriteExisting] :: OverwriteExisting -> Text
pattern OverwriteExisting_FALSE :: OverwriteExisting
pattern OverwriteExisting_TRUE :: OverwriteExisting
newtype ProfileType
ProfileType' :: Text -> ProfileType
[fromProfileType] :: ProfileType -> Text
pattern ProfileType_LOCAL :: ProfileType
pattern ProfileType_PARTNER :: ProfileType
newtype Protocol
Protocol' :: Text -> Protocol
[fromProtocol] :: Protocol -> Text
pattern Protocol_AS2 :: Protocol
pattern Protocol_FTP :: Protocol
pattern Protocol_FTPS :: Protocol
pattern Protocol_SFTP :: Protocol
newtype SetStatOption
SetStatOption' :: Text -> SetStatOption
[fromSetStatOption] :: SetStatOption -> Text
pattern SetStatOption_DEFAULT :: SetStatOption
pattern SetStatOption_ENABLE_NO_OP :: SetStatOption
newtype SigningAlg
SigningAlg' :: Text -> SigningAlg
[fromSigningAlg] :: SigningAlg -> Text
pattern SigningAlg_NONE :: SigningAlg
pattern SigningAlg_SHA1 :: SigningAlg
pattern SigningAlg_SHA256 :: SigningAlg
pattern SigningAlg_SHA384 :: SigningAlg
pattern SigningAlg_SHA512 :: SigningAlg
-- | Describes the condition of a file transfer protocol-enabled server
-- with respect to its ability to perform file operations. There are six
-- possible states: OFFLINE, ONLINE, STARTING,
-- STOPPING, START_FAILED, and STOP_FAILED.
--
-- OFFLINE indicates that the server exists, but that it is not
-- available for file operations. ONLINE indicates that the
-- server is available to perform file operations. STARTING
-- indicates that the server's was instantiated, but the server is not
-- yet available to perform file operations. Under normal conditions, it
-- can take a couple of minutes for the server to be completely
-- operational. Both START_FAILED and STOP_FAILED are
-- error conditions.
newtype State
State' :: Text -> State
[fromState] :: State -> Text
pattern State_OFFLINE :: State
pattern State_ONLINE :: State
pattern State_STARTING :: State
pattern State_START_FAILED :: State
pattern State_STOPPING :: State
pattern State_STOP_FAILED :: State
newtype TlsSessionResumptionMode
TlsSessionResumptionMode' :: Text -> TlsSessionResumptionMode
[fromTlsSessionResumptionMode] :: TlsSessionResumptionMode -> Text
pattern TlsSessionResumptionMode_DISABLED :: TlsSessionResumptionMode
pattern TlsSessionResumptionMode_ENABLED :: TlsSessionResumptionMode
pattern TlsSessionResumptionMode_ENFORCED :: TlsSessionResumptionMode
newtype WorkflowStepType
WorkflowStepType' :: Text -> WorkflowStepType
[fromWorkflowStepType] :: WorkflowStepType -> Text
pattern WorkflowStepType_COPY :: WorkflowStepType
pattern WorkflowStepType_CUSTOM :: WorkflowStepType
pattern WorkflowStepType_DECRYPT :: WorkflowStepType
pattern WorkflowStepType_DELETE :: WorkflowStepType
pattern WorkflowStepType_TAG :: WorkflowStepType
-- | Contains the details for a connector object. The connector object is
-- used for AS2 outbound processes, to connect the Transfer Family
-- customer with the trading partner.
--
-- See: newAs2ConnectorConfig smart constructor.
data As2ConnectorConfig
As2ConnectorConfig' :: Maybe CompressionEnum -> Maybe EncryptionAlg -> Maybe Text -> Maybe MdnResponse -> Maybe MdnSigningAlg -> Maybe Text -> Maybe Text -> Maybe SigningAlg -> As2ConnectorConfig
-- | Specifies whether the AS2 file is compressed.
[$sel:compression:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe CompressionEnum
-- | The algorithm that is used to encrypt the file.
[$sel:encryptionAlgorithm:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe EncryptionAlg
-- | A unique identifier for the AS2 local profile.
[$sel:localProfileId:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe Text
-- | Used for outbound requests (from an Transfer Family server to a
-- partner AS2 server) to determine whether the partner response for
-- transfers is synchronous or asynchronous. Specify either of the
-- following values:
--
--
-- - SYNC: The system expects a synchronous MDN response,
-- confirming that the file was transferred successfully (or not).
-- - NONE: Specifies that no MDN response is required.
--
[$sel:mdnResponse:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe MdnResponse
-- | The signing algorithm for the MDN response.
--
-- If set to DEFAULT (or not set at all), the value for
-- SigningAlogorithm is used.
[$sel:mdnSigningAlgorithm:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe MdnSigningAlg
-- | Used as the Subject HTTP header attribute in AS2 messages
-- that are being sent with the connector.
[$sel:messageSubject:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe Text
-- | A unique identifier for the partner profile for the connector.
[$sel:partnerProfileId:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe Text
-- | The algorithm that is used to sign the AS2 messages sent with the
-- connector.
[$sel:signingAlgorithm:As2ConnectorConfig'] :: As2ConnectorConfig -> Maybe SigningAlg
-- | Create a value of As2ConnectorConfig with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:compression:As2ConnectorConfig',
-- as2ConnectorConfig_compression - Specifies whether the AS2 file
-- is compressed.
--
-- $sel:encryptionAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_encryptionAlgorithm - The algorithm that is
-- used to encrypt the file.
--
-- $sel:localProfileId:As2ConnectorConfig',
-- as2ConnectorConfig_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:mdnResponse:As2ConnectorConfig',
-- as2ConnectorConfig_mdnResponse - Used for outbound requests
-- (from an Transfer Family server to a partner AS2 server) to determine
-- whether the partner response for transfers is synchronous or
-- asynchronous. Specify either of the following values:
--
--
-- - SYNC: The system expects a synchronous MDN response,
-- confirming that the file was transferred successfully (or not).
-- - NONE: Specifies that no MDN response is required.
--
--
-- $sel:mdnSigningAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_mdnSigningAlgorithm - The signing algorithm
-- for the MDN response.
--
-- If set to DEFAULT (or not set at all), the value for
-- SigningAlogorithm is used.
--
-- $sel:messageSubject:As2ConnectorConfig',
-- as2ConnectorConfig_messageSubject - Used as the
-- Subject HTTP header attribute in AS2 messages that are being
-- sent with the connector.
--
-- $sel:partnerProfileId:As2ConnectorConfig',
-- as2ConnectorConfig_partnerProfileId - A unique identifier for
-- the partner profile for the connector.
--
-- $sel:signingAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_signingAlgorithm - The algorithm that is
-- used to sign the AS2 messages sent with the connector.
newAs2ConnectorConfig :: As2ConnectorConfig
-- | Specifies whether the AS2 file is compressed.
as2ConnectorConfig_compression :: Lens' As2ConnectorConfig (Maybe CompressionEnum)
-- | The algorithm that is used to encrypt the file.
as2ConnectorConfig_encryptionAlgorithm :: Lens' As2ConnectorConfig (Maybe EncryptionAlg)
-- | A unique identifier for the AS2 local profile.
as2ConnectorConfig_localProfileId :: Lens' As2ConnectorConfig (Maybe Text)
-- | Used for outbound requests (from an Transfer Family server to a
-- partner AS2 server) to determine whether the partner response for
-- transfers is synchronous or asynchronous. Specify either of the
-- following values:
--
--
-- - SYNC: The system expects a synchronous MDN response,
-- confirming that the file was transferred successfully (or not).
-- - NONE: Specifies that no MDN response is required.
--
as2ConnectorConfig_mdnResponse :: Lens' As2ConnectorConfig (Maybe MdnResponse)
-- | The signing algorithm for the MDN response.
--
-- If set to DEFAULT (or not set at all), the value for
-- SigningAlogorithm is used.
as2ConnectorConfig_mdnSigningAlgorithm :: Lens' As2ConnectorConfig (Maybe MdnSigningAlg)
-- | Used as the Subject HTTP header attribute in AS2 messages
-- that are being sent with the connector.
as2ConnectorConfig_messageSubject :: Lens' As2ConnectorConfig (Maybe Text)
-- | A unique identifier for the partner profile for the connector.
as2ConnectorConfig_partnerProfileId :: Lens' As2ConnectorConfig (Maybe Text)
-- | The algorithm that is used to sign the AS2 messages sent with the
-- connector.
as2ConnectorConfig_signingAlgorithm :: Lens' As2ConnectorConfig (Maybe SigningAlg)
-- | Each step type has its own StepDetails structure.
--
-- See: newCopyStepDetails smart constructor.
data CopyStepDetails
CopyStepDetails' :: Maybe InputFileLocation -> Maybe Text -> Maybe OverwriteExisting -> Maybe Text -> CopyStepDetails
-- | Specifies the location for the file being copied. Only applicable for
-- Copy type workflow steps. Use ${Transfer:username} in this
-- field to parametrize the destination prefix by username.
[$sel:destinationFileLocation:CopyStepDetails'] :: CopyStepDetails -> Maybe InputFileLocation
-- | The name of the step, used as an identifier.
[$sel:name:CopyStepDetails'] :: CopyStepDetails -> Maybe Text
-- | A flag that indicates whether or not to overwrite an existing file of
-- the same name. The default is FALSE.
[$sel:overwriteExisting:CopyStepDetails'] :: CopyStepDetails -> Maybe OverwriteExisting
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
[$sel:sourceFileLocation:CopyStepDetails'] :: CopyStepDetails -> Maybe Text
-- | Create a value of CopyStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:destinationFileLocation:CopyStepDetails',
-- copyStepDetails_destinationFileLocation - Specifies the
-- location for the file being copied. Only applicable for Copy type
-- workflow steps. Use ${Transfer:username} in this field to
-- parametrize the destination prefix by username.
--
-- $sel:name:CopyStepDetails', copyStepDetails_name - The
-- name of the step, used as an identifier.
--
-- $sel:overwriteExisting:CopyStepDetails',
-- copyStepDetails_overwriteExisting - A flag that indicates
-- whether or not to overwrite an existing file of the same name. The
-- default is FALSE.
--
-- $sel:sourceFileLocation:CopyStepDetails',
-- copyStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
newCopyStepDetails :: CopyStepDetails
-- | Specifies the location for the file being copied. Only applicable for
-- Copy type workflow steps. Use ${Transfer:username} in this
-- field to parametrize the destination prefix by username.
copyStepDetails_destinationFileLocation :: Lens' CopyStepDetails (Maybe InputFileLocation)
-- | The name of the step, used as an identifier.
copyStepDetails_name :: Lens' CopyStepDetails (Maybe Text)
-- | A flag that indicates whether or not to overwrite an existing file of
-- the same name. The default is FALSE.
copyStepDetails_overwriteExisting :: Lens' CopyStepDetails (Maybe OverwriteExisting)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
copyStepDetails_sourceFileLocation :: Lens' CopyStepDetails (Maybe Text)
-- | Each step type has its own StepDetails structure.
--
-- See: newCustomStepDetails smart constructor.
data CustomStepDetails
CustomStepDetails' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Natural -> CustomStepDetails
-- | The name of the step, used as an identifier.
[$sel:name:CustomStepDetails'] :: CustomStepDetails -> Maybe Text
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
[$sel:sourceFileLocation:CustomStepDetails'] :: CustomStepDetails -> Maybe Text
-- | The ARN for the lambda function that is being called.
[$sel:target:CustomStepDetails'] :: CustomStepDetails -> Maybe Text
-- | Timeout, in seconds, for the step.
[$sel:timeoutSeconds:CustomStepDetails'] :: CustomStepDetails -> Maybe Natural
-- | Create a value of CustomStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:CustomStepDetails', customStepDetails_name -
-- The name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:CustomStepDetails',
-- customStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
--
-- $sel:target:CustomStepDetails', customStepDetails_target
-- - The ARN for the lambda function that is being called.
--
-- $sel:timeoutSeconds:CustomStepDetails',
-- customStepDetails_timeoutSeconds - Timeout, in seconds, for the
-- step.
newCustomStepDetails :: CustomStepDetails
-- | The name of the step, used as an identifier.
customStepDetails_name :: Lens' CustomStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
customStepDetails_sourceFileLocation :: Lens' CustomStepDetails (Maybe Text)
-- | The ARN for the lambda function that is being called.
customStepDetails_target :: Lens' CustomStepDetails (Maybe Text)
-- | Timeout, in seconds, for the step.
customStepDetails_timeoutSeconds :: Lens' CustomStepDetails (Maybe Natural)
-- | See: newDecryptStepDetails smart constructor.
data DecryptStepDetails
DecryptStepDetails' :: Maybe Text -> Maybe OverwriteExisting -> Maybe Text -> EncryptionType -> InputFileLocation -> DecryptStepDetails
[$sel:name:DecryptStepDetails'] :: DecryptStepDetails -> Maybe Text
[$sel:overwriteExisting:DecryptStepDetails'] :: DecryptStepDetails -> Maybe OverwriteExisting
[$sel:sourceFileLocation:DecryptStepDetails'] :: DecryptStepDetails -> Maybe Text
[$sel:type':DecryptStepDetails'] :: DecryptStepDetails -> EncryptionType
[$sel:destinationFileLocation:DecryptStepDetails'] :: DecryptStepDetails -> InputFileLocation
-- | Create a value of DecryptStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:DecryptStepDetails', decryptStepDetails_name -
-- Undocumented member.
--
-- $sel:overwriteExisting:DecryptStepDetails',
-- decryptStepDetails_overwriteExisting - Undocumented member.
--
-- $sel:sourceFileLocation:DecryptStepDetails',
-- decryptStepDetails_sourceFileLocation - Undocumented member.
--
-- $sel:type':DecryptStepDetails', decryptStepDetails_type
-- - Undocumented member.
--
-- $sel:destinationFileLocation:DecryptStepDetails',
-- decryptStepDetails_destinationFileLocation - Undocumented
-- member.
newDecryptStepDetails :: EncryptionType -> InputFileLocation -> DecryptStepDetails
-- | Undocumented member.
decryptStepDetails_name :: Lens' DecryptStepDetails (Maybe Text)
-- | Undocumented member.
decryptStepDetails_overwriteExisting :: Lens' DecryptStepDetails (Maybe OverwriteExisting)
-- | Undocumented member.
decryptStepDetails_sourceFileLocation :: Lens' DecryptStepDetails (Maybe Text)
-- | Undocumented member.
decryptStepDetails_type :: Lens' DecryptStepDetails EncryptionType
-- | Undocumented member.
decryptStepDetails_destinationFileLocation :: Lens' DecryptStepDetails InputFileLocation
-- | The name of the step, used to identify the delete step.
--
-- See: newDeleteStepDetails smart constructor.
data DeleteStepDetails
DeleteStepDetails' :: Maybe Text -> Maybe Text -> DeleteStepDetails
-- | The name of the step, used as an identifier.
[$sel:name:DeleteStepDetails'] :: DeleteStepDetails -> Maybe Text
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
[$sel:sourceFileLocation:DeleteStepDetails'] :: DeleteStepDetails -> Maybe Text
-- | Create a value of DeleteStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:DeleteStepDetails', deleteStepDetails_name -
-- The name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:DeleteStepDetails',
-- deleteStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
newDeleteStepDetails :: DeleteStepDetails
-- | The name of the step, used as an identifier.
deleteStepDetails_name :: Lens' DeleteStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
deleteStepDetails_sourceFileLocation :: Lens' DeleteStepDetails (Maybe Text)
-- | Describes the properties of the access that was specified.
--
-- See: newDescribedAccess smart constructor.
data DescribedAccess
DescribedAccess' :: Maybe Text -> Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> DescribedAccess
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
[$sel:externalId:DescribedAccess'] :: DescribedAccess -> Maybe Text
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:DescribedAccess'] :: DescribedAccess -> Maybe Text
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock down the associated access to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
[$sel:homeDirectoryMappings:DescribedAccess'] :: DescribedAccess -> Maybe (NonEmpty HomeDirectoryMapEntry)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:DescribedAccess'] :: DescribedAccess -> Maybe HomeDirectoryType
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
[$sel:policy:DescribedAccess'] :: DescribedAccess -> Maybe Text
[$sel:posixProfile:DescribedAccess'] :: DescribedAccess -> Maybe PosixProfile
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':DescribedAccess'] :: DescribedAccess -> Maybe Text
-- | Create a value of DescribedAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:externalId:DescribedAccess',
-- describedAccess_externalId - A unique identifier that is
-- required to identify specific groups within your directory. The users
-- of the group that you associate have access to your Amazon S3 or
-- Amazon EFS resources over the enabled protocols using Transfer Family.
-- If you know the group name, you can view the SID values by running the
-- following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
--
-- $sel:homeDirectory:DescribedAccess',
-- describedAccess_homeDirectory - The landing directory (folder)
-- for a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryMappings:DescribedAccess',
-- describedAccess_homeDirectoryMappings - Logical directory
-- mappings that specify what Amazon S3 or Amazon EFS paths and keys
-- should be visible to your user and how you want to make them visible.
-- You must specify the Entry and Target pair, where
-- Entry shows how the path is made visible and Target
-- is the actual Amazon S3 or Amazon EFS path. If you only specify a
-- target, it is displayed as is. You also must ensure that your Identity
-- and Access Management (IAM) role provides access to paths in
-- Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock down the associated access to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- $sel:homeDirectoryType:DescribedAccess',
-- describedAccess_homeDirectoryType - The type of landing
-- directory (folder) that you want your users' home directory to be when
-- they log in to the server. If you set it to PATH, the user
-- will see the absolute Amazon S3 bucket or EFS paths as is in their
-- file transfer protocol clients. If you set it LOGICAL, you
-- need to provide mappings in the HomeDirectoryMappings for how
-- you want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:policy:DescribedAccess', describedAccess_policy - A
-- session policy for your user so that you can use the same Identity and
-- Access Management (IAM) role across multiple users. This policy scopes
-- down a user's access to portions of their Amazon S3 bucket. Variables
-- that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- $sel:posixProfile:DescribedAccess',
-- describedAccess_posixProfile - Undocumented member.
--
-- $sel:role':DescribedAccess', describedAccess_role - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that controls your users' access to your Amazon S3 bucket or
-- Amazon EFS file system. The policies attached to this role determine
-- the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
newDescribedAccess :: DescribedAccess
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
describedAccess_externalId :: Lens' DescribedAccess (Maybe Text)
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
describedAccess_homeDirectory :: Lens' DescribedAccess (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock down the associated access to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
describedAccess_homeDirectoryMappings :: Lens' DescribedAccess (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
describedAccess_homeDirectoryType :: Lens' DescribedAccess (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
describedAccess_policy :: Lens' DescribedAccess (Maybe Text)
-- | Undocumented member.
describedAccess_posixProfile :: Lens' DescribedAccess (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
describedAccess_role :: Lens' DescribedAccess (Maybe Text)
-- | Describes the properties of an agreement.
--
-- See: newDescribedAgreement smart constructor.
data DescribedAgreement
DescribedAgreement' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe AgreementStatusType -> Maybe (NonEmpty Tag) -> Text -> DescribedAgreement
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
[$sel:accessRole:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
[$sel:agreementId:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | The landing directory (folder) for files that are transferred by using
-- the AS2 protocol.
[$sel:baseDirectory:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | The name or short description that's used to identify the agreement.
[$sel:description:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | A unique identifier for the AS2 local profile.
[$sel:localProfileId:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | A unique identifier for the partner profile used in the agreement.
[$sel:partnerProfileId:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | A system-assigned unique identifier for a server instance. This
-- identifier indicates the specific server that the agreement uses.
[$sel:serverId:DescribedAgreement'] :: DescribedAgreement -> Maybe Text
-- | The current status of the agreement, either ACTIVE or
-- INACTIVE.
[$sel:status:DescribedAgreement'] :: DescribedAgreement -> Maybe AgreementStatusType
-- | Key-value pairs that can be used to group and search for agreements.
[$sel:tags:DescribedAgreement'] :: DescribedAgreement -> Maybe (NonEmpty Tag)
-- | The unique Amazon Resource Name (ARN) for the agreement.
[$sel:arn:DescribedAgreement'] :: DescribedAgreement -> Text
-- | Create a value of DescribedAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:accessRole:DescribedAgreement',
-- describedAgreement_accessRole - With AS2, you can send files by
-- calling StartFileTransfer and specifying the file paths in
-- the request parameter, SendFilePaths. We use the file’s
-- parent directory (for example, for --send-file-paths
-- /bucket/dir/file.txt, parent directory is /bucket/dir/)
-- to temporarily store a processed AS2 message file, store the MDN when
-- we receive them from the partner, and write a final JSON file
-- containing relevant metadata of the transmission. So, the
-- AccessRole needs to provide read and write access to the
-- parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- $sel:agreementId:DescribedAgreement',
-- describedAgreement_agreementId - A unique identifier for the
-- agreement. This identifier is returned when you create an agreement.
--
-- $sel:baseDirectory:DescribedAgreement',
-- describedAgreement_baseDirectory - The landing directory
-- (folder) for files that are transferred by using the AS2 protocol.
--
-- $sel:description:DescribedAgreement',
-- describedAgreement_description - The name or short description
-- that's used to identify the agreement.
--
-- $sel:localProfileId:DescribedAgreement',
-- describedAgreement_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:partnerProfileId:DescribedAgreement',
-- describedAgreement_partnerProfileId - A unique identifier for
-- the partner profile used in the agreement.
--
-- $sel:serverId:DescribedAgreement',
-- describedAgreement_serverId - A system-assigned unique
-- identifier for a server instance. This identifier indicates the
-- specific server that the agreement uses.
--
-- $sel:status:DescribedAgreement',
-- describedAgreement_status - The current status of the
-- agreement, either ACTIVE or INACTIVE.
--
-- $sel:tags:DescribedAgreement', describedAgreement_tags -
-- Key-value pairs that can be used to group and search for agreements.
--
-- $sel:arn:DescribedAgreement', describedAgreement_arn -
-- The unique Amazon Resource Name (ARN) for the agreement.
newDescribedAgreement :: Text -> DescribedAgreement
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
describedAgreement_accessRole :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
describedAgreement_agreementId :: Lens' DescribedAgreement (Maybe Text)
-- | The landing directory (folder) for files that are transferred by using
-- the AS2 protocol.
describedAgreement_baseDirectory :: Lens' DescribedAgreement (Maybe Text)
-- | The name or short description that's used to identify the agreement.
describedAgreement_description :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the AS2 local profile.
describedAgreement_localProfileId :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the partner profile used in the agreement.
describedAgreement_partnerProfileId :: Lens' DescribedAgreement (Maybe Text)
-- | A system-assigned unique identifier for a server instance. This
-- identifier indicates the specific server that the agreement uses.
describedAgreement_serverId :: Lens' DescribedAgreement (Maybe Text)
-- | The current status of the agreement, either ACTIVE or
-- INACTIVE.
describedAgreement_status :: Lens' DescribedAgreement (Maybe AgreementStatusType)
-- | Key-value pairs that can be used to group and search for agreements.
describedAgreement_tags :: Lens' DescribedAgreement (Maybe (NonEmpty Tag))
-- | The unique Amazon Resource Name (ARN) for the agreement.
describedAgreement_arn :: Lens' DescribedAgreement Text
-- | Describes the properties of a certificate.
--
-- See: newDescribedCertificate smart constructor.
data DescribedCertificate
DescribedCertificate' :: Maybe POSIX -> Maybe (Sensitive Text) -> Maybe (Sensitive Text) -> Maybe Text -> Maybe Text -> Maybe POSIX -> Maybe POSIX -> Maybe POSIX -> Maybe Text -> Maybe CertificateStatusType -> Maybe (NonEmpty Tag) -> Maybe CertificateType -> Maybe CertificateUsageType -> Text -> DescribedCertificate
-- | An optional date that specifies when the certificate becomes active.
[$sel:activeDate:DescribedCertificate'] :: DescribedCertificate -> Maybe POSIX
-- | The file name for the certificate.
[$sel:certificate:DescribedCertificate'] :: DescribedCertificate -> Maybe (Sensitive Text)
-- | The list of certificates that make up the chain for the certificate.
[$sel:certificateChain:DescribedCertificate'] :: DescribedCertificate -> Maybe (Sensitive Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateId:DescribedCertificate'] :: DescribedCertificate -> Maybe Text
-- | The name or description that's used to identity the certificate.
[$sel:description:DescribedCertificate'] :: DescribedCertificate -> Maybe Text
-- | An optional date that specifies when the certificate becomes inactive.
[$sel:inactiveDate:DescribedCertificate'] :: DescribedCertificate -> Maybe POSIX
-- | The final date that the certificate is valid.
[$sel:notAfterDate:DescribedCertificate'] :: DescribedCertificate -> Maybe POSIX
-- | The earliest date that the certificate is valid.
[$sel:notBeforeDate:DescribedCertificate'] :: DescribedCertificate -> Maybe POSIX
-- | The serial number for the certificate.
[$sel:serial:DescribedCertificate'] :: DescribedCertificate -> Maybe Text
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
[$sel:status:DescribedCertificate'] :: DescribedCertificate -> Maybe CertificateStatusType
-- | Key-value pairs that can be used to group and search for certificates.
[$sel:tags:DescribedCertificate'] :: DescribedCertificate -> Maybe (NonEmpty Tag)
-- | If a private key has been specified for the certificate, its type is
-- CERTIFICATE_WITH_PRIVATE_KEY. If there is no private key, the
-- type is CERTIFICATE.
[$sel:type':DescribedCertificate'] :: DescribedCertificate -> Maybe CertificateType
-- | Specifies whether this certificate is used for signing or encryption.
[$sel:usage:DescribedCertificate'] :: DescribedCertificate -> Maybe CertificateUsageType
-- | The unique Amazon Resource Name (ARN) for the certificate.
[$sel:arn:DescribedCertificate'] :: DescribedCertificate -> Text
-- | Create a value of DescribedCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:activeDate:DescribedCertificate',
-- describedCertificate_activeDate - An optional date that
-- specifies when the certificate becomes active.
--
-- $sel:certificate:DescribedCertificate',
-- describedCertificate_certificate - The file name for the
-- certificate.
--
-- $sel:certificateChain:DescribedCertificate',
-- describedCertificate_certificateChain - The list of
-- certificates that make up the chain for the certificate.
--
-- $sel:certificateId:DescribedCertificate',
-- describedCertificate_certificateId - An array of identifiers
-- for the imported certificates. You use this identifier for working
-- with profiles and partner profiles.
--
-- $sel:description:DescribedCertificate',
-- describedCertificate_description - The name or description
-- that's used to identity the certificate.
--
-- $sel:inactiveDate:DescribedCertificate',
-- describedCertificate_inactiveDate - An optional date that
-- specifies when the certificate becomes inactive.
--
-- $sel:notAfterDate:DescribedCertificate',
-- describedCertificate_notAfterDate - The final date that the
-- certificate is valid.
--
-- $sel:notBeforeDate:DescribedCertificate',
-- describedCertificate_notBeforeDate - The earliest date that the
-- certificate is valid.
--
-- $sel:serial:DescribedCertificate',
-- describedCertificate_serial - The serial number for the
-- certificate.
--
-- $sel:status:DescribedCertificate',
-- describedCertificate_status - The certificate can be either
-- ACTIVE, PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
--
-- $sel:tags:DescribedCertificate',
-- describedCertificate_tags - Key-value pairs that can be used to
-- group and search for certificates.
--
-- $sel:type':DescribedCertificate',
-- describedCertificate_type - If a private key has been specified
-- for the certificate, its type is
-- CERTIFICATE_WITH_PRIVATE_KEY. If there is no private key, the
-- type is CERTIFICATE.
--
-- $sel:usage:DescribedCertificate',
-- describedCertificate_usage - Specifies whether this certificate
-- is used for signing or encryption.
--
-- $sel:arn:DescribedCertificate', describedCertificate_arn
-- - The unique Amazon Resource Name (ARN) for the certificate.
newDescribedCertificate :: Text -> DescribedCertificate
-- | An optional date that specifies when the certificate becomes active.
describedCertificate_activeDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The file name for the certificate.
describedCertificate_certificate :: Lens' DescribedCertificate (Maybe Text)
-- | The list of certificates that make up the chain for the certificate.
describedCertificate_certificateChain :: Lens' DescribedCertificate (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
describedCertificate_certificateId :: Lens' DescribedCertificate (Maybe Text)
-- | The name or description that's used to identity the certificate.
describedCertificate_description :: Lens' DescribedCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
describedCertificate_inactiveDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The final date that the certificate is valid.
describedCertificate_notAfterDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The earliest date that the certificate is valid.
describedCertificate_notBeforeDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The serial number for the certificate.
describedCertificate_serial :: Lens' DescribedCertificate (Maybe Text)
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
describedCertificate_status :: Lens' DescribedCertificate (Maybe CertificateStatusType)
-- | Key-value pairs that can be used to group and search for certificates.
describedCertificate_tags :: Lens' DescribedCertificate (Maybe (NonEmpty Tag))
-- | If a private key has been specified for the certificate, its type is
-- CERTIFICATE_WITH_PRIVATE_KEY. If there is no private key, the
-- type is CERTIFICATE.
describedCertificate_type :: Lens' DescribedCertificate (Maybe CertificateType)
-- | Specifies whether this certificate is used for signing or encryption.
describedCertificate_usage :: Lens' DescribedCertificate (Maybe CertificateUsageType)
-- | The unique Amazon Resource Name (ARN) for the certificate.
describedCertificate_arn :: Lens' DescribedCertificate Text
-- | Describes the parameters for the connector, as identified by the
-- ConnectorId.
--
-- See: newDescribedConnector smart constructor.
data DescribedConnector
DescribedConnector' :: Maybe Text -> Maybe As2ConnectorConfig -> Maybe Text -> Maybe Text -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedConnector
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
[$sel:accessRole:DescribedConnector'] :: DescribedConnector -> Maybe Text
-- | A structure that contains the parameters for a connector object.
[$sel:as2Config:DescribedConnector'] :: DescribedConnector -> Maybe As2ConnectorConfig
-- | The unique identifier for the connector.
[$sel:connectorId:DescribedConnector'] :: DescribedConnector -> Maybe Text
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
[$sel:loggingRole:DescribedConnector'] :: DescribedConnector -> Maybe Text
-- | Key-value pairs that can be used to group and search for connectors.
[$sel:tags:DescribedConnector'] :: DescribedConnector -> Maybe (NonEmpty Tag)
-- | The URL of the partner's AS2 endpoint.
[$sel:url:DescribedConnector'] :: DescribedConnector -> Maybe Text
-- | The unique Amazon Resource Name (ARN) for the connector.
[$sel:arn:DescribedConnector'] :: DescribedConnector -> Text
-- | Create a value of DescribedConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:accessRole:DescribedConnector',
-- describedConnector_accessRole - With AS2, you can send files by
-- calling StartFileTransfer and specifying the file paths in
-- the request parameter, SendFilePaths. We use the file’s
-- parent directory (for example, for --send-file-paths
-- /bucket/dir/file.txt, parent directory is /bucket/dir/)
-- to temporarily store a processed AS2 message file, store the MDN when
-- we receive them from the partner, and write a final JSON file
-- containing relevant metadata of the transmission. So, the
-- AccessRole needs to provide read and write access to the
-- parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- $sel:as2Config:DescribedConnector',
-- describedConnector_as2Config - A structure that contains the
-- parameters for a connector object.
--
-- $sel:connectorId:DescribedConnector',
-- describedConnector_connectorId - The unique identifier for the
-- connector.
--
-- $sel:loggingRole:DescribedConnector',
-- describedConnector_loggingRole - The Amazon Resource Name (ARN)
-- of the Identity and Access Management (IAM) role that allows a
-- connector to turn on CloudWatch logging for Amazon S3 events. When
-- set, you can view connector activity in your CloudWatch logs.
--
-- $sel:tags:DescribedConnector', describedConnector_tags -
-- Key-value pairs that can be used to group and search for connectors.
--
-- $sel:url:DescribedConnector', describedConnector_url -
-- The URL of the partner's AS2 endpoint.
--
-- $sel:arn:DescribedConnector', describedConnector_arn -
-- The unique Amazon Resource Name (ARN) for the connector.
newDescribedConnector :: Text -> DescribedConnector
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
describedConnector_accessRole :: Lens' DescribedConnector (Maybe Text)
-- | A structure that contains the parameters for a connector object.
describedConnector_as2Config :: Lens' DescribedConnector (Maybe As2ConnectorConfig)
-- | The unique identifier for the connector.
describedConnector_connectorId :: Lens' DescribedConnector (Maybe Text)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
describedConnector_loggingRole :: Lens' DescribedConnector (Maybe Text)
-- | Key-value pairs that can be used to group and search for connectors.
describedConnector_tags :: Lens' DescribedConnector (Maybe (NonEmpty Tag))
-- | The URL of the partner's AS2 endpoint.
describedConnector_url :: Lens' DescribedConnector (Maybe Text)
-- | The unique Amazon Resource Name (ARN) for the connector.
describedConnector_arn :: Lens' DescribedConnector Text
-- | The details for an execution object.
--
-- See: newDescribedExecution smart constructor.
data DescribedExecution
DescribedExecution' :: Maybe Text -> Maybe Text -> Maybe FileLocation -> Maybe LoggingConfiguration -> Maybe PosixProfile -> Maybe ExecutionResults -> Maybe ServiceMetadata -> Maybe ExecutionStatus -> DescribedExecution
-- | A unique identifier for the execution of a workflow.
[$sel:executionId:DescribedExecution'] :: DescribedExecution -> Maybe Text
-- | The IAM role associated with the execution.
[$sel:executionRole:DescribedExecution'] :: DescribedExecution -> Maybe Text
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
[$sel:initialFileLocation:DescribedExecution'] :: DescribedExecution -> Maybe FileLocation
-- | The IAM logging role associated with the execution.
[$sel:loggingConfiguration:DescribedExecution'] :: DescribedExecution -> Maybe LoggingConfiguration
[$sel:posixProfile:DescribedExecution'] :: DescribedExecution -> Maybe PosixProfile
-- | A structure that describes the execution results. This includes a list
-- of the steps along with the details of each step, error type and
-- message (if any), and the OnExceptionSteps structure.
[$sel:results:DescribedExecution'] :: DescribedExecution -> Maybe ExecutionResults
-- | A container object for the session details that are associated with a
-- workflow.
[$sel:serviceMetadata:DescribedExecution'] :: DescribedExecution -> Maybe ServiceMetadata
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
[$sel:status:DescribedExecution'] :: DescribedExecution -> Maybe ExecutionStatus
-- | Create a value of DescribedExecution with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:executionId:DescribedExecution',
-- describedExecution_executionId - A unique identifier for the
-- execution of a workflow.
--
-- $sel:executionRole:DescribedExecution',
-- describedExecution_executionRole - The IAM role associated with
-- the execution.
--
-- $sel:initialFileLocation:DescribedExecution',
-- describedExecution_initialFileLocation - A structure that
-- describes the Amazon S3 or EFS file location. This is the file
-- location when the execution begins: if the file is being copied, this
-- is the initial (as opposed to destination) file location.
--
-- $sel:loggingConfiguration:DescribedExecution',
-- describedExecution_loggingConfiguration - The IAM logging role
-- associated with the execution.
--
-- $sel:posixProfile:DescribedExecution',
-- describedExecution_posixProfile - Undocumented member.
--
-- $sel:results:DescribedExecution',
-- describedExecution_results - A structure that describes the
-- execution results. This includes a list of the steps along with the
-- details of each step, error type and message (if any), and the
-- OnExceptionSteps structure.
--
-- $sel:serviceMetadata:DescribedExecution',
-- describedExecution_serviceMetadata - A container object for the
-- session details that are associated with a workflow.
--
-- $sel:status:DescribedExecution',
-- describedExecution_status - The status is one of the execution.
-- Can be in progress, completed, exception encountered, or handling the
-- exception.
newDescribedExecution :: DescribedExecution
-- | A unique identifier for the execution of a workflow.
describedExecution_executionId :: Lens' DescribedExecution (Maybe Text)
-- | The IAM role associated with the execution.
describedExecution_executionRole :: Lens' DescribedExecution (Maybe Text)
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
describedExecution_initialFileLocation :: Lens' DescribedExecution (Maybe FileLocation)
-- | The IAM logging role associated with the execution.
describedExecution_loggingConfiguration :: Lens' DescribedExecution (Maybe LoggingConfiguration)
-- | Undocumented member.
describedExecution_posixProfile :: Lens' DescribedExecution (Maybe PosixProfile)
-- | A structure that describes the execution results. This includes a list
-- of the steps along with the details of each step, error type and
-- message (if any), and the OnExceptionSteps structure.
describedExecution_results :: Lens' DescribedExecution (Maybe ExecutionResults)
-- | A container object for the session details that are associated with a
-- workflow.
describedExecution_serviceMetadata :: Lens' DescribedExecution (Maybe ServiceMetadata)
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
describedExecution_status :: Lens' DescribedExecution (Maybe ExecutionStatus)
-- | The details for a server host key.
--
-- See: newDescribedHostKey smart constructor.
data DescribedHostKey
DescribedHostKey' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedHostKey
-- | The date on which the host key was added to the server.
[$sel:dateImported:DescribedHostKey'] :: DescribedHostKey -> Maybe POSIX
-- | The text description for this host key.
[$sel:description:DescribedHostKey'] :: DescribedHostKey -> Maybe Text
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
[$sel:hostKeyFingerprint:DescribedHostKey'] :: DescribedHostKey -> Maybe Text
-- | A unique identifier for the host key.
[$sel:hostKeyId:DescribedHostKey'] :: DescribedHostKey -> Maybe Text
-- | Key-value pairs that can be used to group and search for host keys.
[$sel:tags:DescribedHostKey'] :: DescribedHostKey -> Maybe (NonEmpty Tag)
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
[$sel:type':DescribedHostKey'] :: DescribedHostKey -> Maybe Text
-- | The unique Amazon Resource Name (ARN) for the host key.
[$sel:arn:DescribedHostKey'] :: DescribedHostKey -> Text
-- | Create a value of DescribedHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:DescribedHostKey',
-- describedHostKey_dateImported - The date on which the host key
-- was added to the server.
--
-- $sel:description:DescribedHostKey',
-- describedHostKey_description - The text description for this
-- host key.
--
-- $sel:hostKeyFingerprint:DescribedHostKey',
-- describedHostKey_hostKeyFingerprint - The public key
-- fingerprint, which is a short sequence of bytes used to identify the
-- longer public key.
--
-- $sel:hostKeyId:DescribedHostKey',
-- describedHostKey_hostKeyId - A unique identifier for the host
-- key.
--
-- $sel:tags:DescribedHostKey', describedHostKey_tags -
-- Key-value pairs that can be used to group and search for host keys.
--
-- $sel:type':DescribedHostKey', describedHostKey_type -
-- The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
--
-- $sel:arn:DescribedHostKey', describedHostKey_arn - The
-- unique Amazon Resource Name (ARN) for the host key.
newDescribedHostKey :: Text -> DescribedHostKey
-- | The date on which the host key was added to the server.
describedHostKey_dateImported :: Lens' DescribedHostKey (Maybe UTCTime)
-- | The text description for this host key.
describedHostKey_description :: Lens' DescribedHostKey (Maybe Text)
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
describedHostKey_hostKeyFingerprint :: Lens' DescribedHostKey (Maybe Text)
-- | A unique identifier for the host key.
describedHostKey_hostKeyId :: Lens' DescribedHostKey (Maybe Text)
-- | Key-value pairs that can be used to group and search for host keys.
describedHostKey_tags :: Lens' DescribedHostKey (Maybe (NonEmpty Tag))
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
describedHostKey_type :: Lens' DescribedHostKey (Maybe Text)
-- | The unique Amazon Resource Name (ARN) for the host key.
describedHostKey_arn :: Lens' DescribedHostKey Text
-- | The details for a local or partner AS2 profile.
--
-- See: newDescribedProfile smart constructor.
data DescribedProfile
DescribedProfile' :: Maybe Text -> Maybe [Text] -> Maybe Text -> Maybe ProfileType -> Maybe (NonEmpty Tag) -> Text -> DescribedProfile
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
[$sel:as2Id:DescribedProfile'] :: DescribedProfile -> Maybe Text
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateIds:DescribedProfile'] :: DescribedProfile -> Maybe [Text]
-- | A unique identifier for the local or partner AS2 profile.
[$sel:profileId:DescribedProfile'] :: DescribedProfile -> Maybe Text
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
[$sel:profileType:DescribedProfile'] :: DescribedProfile -> Maybe ProfileType
-- | Key-value pairs that can be used to group and search for profiles.
[$sel:tags:DescribedProfile'] :: DescribedProfile -> Maybe (NonEmpty Tag)
-- | The unique Amazon Resource Name (ARN) for the profile.
[$sel:arn:DescribedProfile'] :: DescribedProfile -> Text
-- | Create a value of DescribedProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:as2Id:DescribedProfile', describedProfile_as2Id -
-- The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
--
-- $sel:certificateIds:DescribedProfile',
-- describedProfile_certificateIds - An array of identifiers for
-- the imported certificates. You use this identifier for working with
-- profiles and partner profiles.
--
-- $sel:profileId:DescribedProfile',
-- describedProfile_profileId - A unique identifier for the local
-- or partner AS2 profile.
--
-- $sel:profileType:DescribedProfile',
-- describedProfile_profileType - Indicates whether to list only
-- LOCAL type profiles or only PARTNER type profiles.
-- If not supplied in the request, the command lists all types of
-- profiles.
--
-- $sel:tags:DescribedProfile', describedProfile_tags -
-- Key-value pairs that can be used to group and search for profiles.
--
-- $sel:arn:DescribedProfile', describedProfile_arn - The
-- unique Amazon Resource Name (ARN) for the profile.
newDescribedProfile :: Text -> DescribedProfile
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
describedProfile_as2Id :: Lens' DescribedProfile (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
describedProfile_certificateIds :: Lens' DescribedProfile (Maybe [Text])
-- | A unique identifier for the local or partner AS2 profile.
describedProfile_profileId :: Lens' DescribedProfile (Maybe Text)
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
describedProfile_profileType :: Lens' DescribedProfile (Maybe ProfileType)
-- | Key-value pairs that can be used to group and search for profiles.
describedProfile_tags :: Lens' DescribedProfile (Maybe (NonEmpty Tag))
-- | The unique Amazon Resource Name (ARN) for the profile.
describedProfile_arn :: Lens' DescribedProfile Text
-- | Describes the properties of a security policy that was specified. For
-- more information about security policies, see Working with security
-- policies.
--
-- See: newDescribedSecurityPolicy smart constructor.
data DescribedSecurityPolicy
DescribedSecurityPolicy' :: Maybe Bool -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Text -> DescribedSecurityPolicy
-- | Specifies whether this policy enables Federal Information Processing
-- Standards (FIPS).
[$sel:fips:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe Bool
-- | Specifies the enabled Secure Shell (SSH) cipher encryption algorithms
-- in the security policy that is attached to the server.
[$sel:sshCiphers:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe [Text]
-- | Specifies the enabled SSH key exchange (KEX) encryption algorithms in
-- the security policy that is attached to the server.
[$sel:sshKexs:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe [Text]
-- | Specifies the enabled SSH message authentication code (MAC) encryption
-- algorithms in the security policy that is attached to the server.
[$sel:sshMacs:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe [Text]
-- | Specifies the enabled Transport Layer Security (TLS) cipher encryption
-- algorithms in the security policy that is attached to the server.
[$sel:tlsCiphers:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Maybe [Text]
-- | Specifies the name of the security policy that is attached to the
-- server.
[$sel:securityPolicyName:DescribedSecurityPolicy'] :: DescribedSecurityPolicy -> Text
-- | Create a value of DescribedSecurityPolicy with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:fips:DescribedSecurityPolicy',
-- describedSecurityPolicy_fips - Specifies whether this policy
-- enables Federal Information Processing Standards (FIPS).
--
-- $sel:sshCiphers:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshCiphers - Specifies the enabled
-- Secure Shell (SSH) cipher encryption algorithms in the security policy
-- that is attached to the server.
--
-- $sel:sshKexs:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshKexs - Specifies the enabled SSH key
-- exchange (KEX) encryption algorithms in the security policy that is
-- attached to the server.
--
-- $sel:sshMacs:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshMacs - Specifies the enabled SSH
-- message authentication code (MAC) encryption algorithms in the
-- security policy that is attached to the server.
--
-- $sel:tlsCiphers:DescribedSecurityPolicy',
-- describedSecurityPolicy_tlsCiphers - Specifies the enabled
-- Transport Layer Security (TLS) cipher encryption algorithms in the
-- security policy that is attached to the server.
--
-- $sel:securityPolicyName:DescribedSecurityPolicy',
-- describedSecurityPolicy_securityPolicyName - Specifies the name
-- of the security policy that is attached to the server.
newDescribedSecurityPolicy :: Text -> DescribedSecurityPolicy
-- | Specifies whether this policy enables Federal Information Processing
-- Standards (FIPS).
describedSecurityPolicy_fips :: Lens' DescribedSecurityPolicy (Maybe Bool)
-- | Specifies the enabled Secure Shell (SSH) cipher encryption algorithms
-- in the security policy that is attached to the server.
describedSecurityPolicy_sshCiphers :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled SSH key exchange (KEX) encryption algorithms in
-- the security policy that is attached to the server.
describedSecurityPolicy_sshKexs :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled SSH message authentication code (MAC) encryption
-- algorithms in the security policy that is attached to the server.
describedSecurityPolicy_sshMacs :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled Transport Layer Security (TLS) cipher encryption
-- algorithms in the security policy that is attached to the server.
describedSecurityPolicy_tlsCiphers :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the name of the security policy that is attached to the
-- server.
describedSecurityPolicy_securityPolicyName :: Lens' DescribedSecurityPolicy Text
-- | Describes the properties of a file transfer protocol-enabled server
-- that was specified.
--
-- See: newDescribedServer smart constructor.
data DescribedServer
DescribedServer' :: Maybe Text -> Maybe Domain -> Maybe EndpointDetails -> Maybe EndpointType -> Maybe Text -> Maybe IdentityProviderDetails -> Maybe IdentityProviderType -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProtocolDetails -> Maybe (NonEmpty Protocol) -> Maybe Text -> Maybe Text -> Maybe State -> Maybe (NonEmpty Tag) -> Maybe Int -> Maybe WorkflowDetails -> Text -> DescribedServer
-- | Specifies the ARN of the Amazon Web ServicesCertificate Manager (ACM)
-- certificate. Required when Protocols is set to FTPS.
[$sel:certificate:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies the domain of the storage system that is used for file
-- transfers.
[$sel:domain:DescribedServer'] :: DescribedServer -> Maybe Domain
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
[$sel:endpointDetails:DescribedServer'] :: DescribedServer -> Maybe EndpointDetails
-- | Defines the type of endpoint that your server is connected to. If your
-- server is connected to a VPC endpoint, your server isn't accessible
-- over the public internet.
[$sel:endpointType:DescribedServer'] :: DescribedServer -> Maybe EndpointType
-- | Specifies the Base64-encoded SHA256 fingerprint of the server's host
-- key. This value is equivalent to the output of the ssh-keygen -l
-- -f my-new-server-key command.
[$sel:hostKeyFingerprint:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies information to call a customer-supplied authentication API.
-- This field is not populated when the IdentityProviderType of
-- a server is AWS_DIRECTORY_SERVICE or
-- SERVICE_MANAGED.
[$sel:identityProviderDetails:DescribedServer'] :: DescribedServer -> Maybe IdentityProviderDetails
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
[$sel:identityProviderType:DescribedServer'] :: DescribedServer -> Maybe IdentityProviderType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
[$sel:loggingRole:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
[$sel:postAuthenticationLoginBanner:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
[$sel:preAuthenticationLoginBanner:DescribedServer'] :: DescribedServer -> Maybe Text
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
[$sel:protocolDetails:DescribedServer'] :: DescribedServer -> Maybe ProtocolDetails
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
[$sel:protocols:DescribedServer'] :: DescribedServer -> Maybe (NonEmpty Protocol)
-- | Specifies the name of the security policy that is attached to the
-- server.
[$sel:securityPolicyName:DescribedServer'] :: DescribedServer -> Maybe Text
-- | Specifies the unique system-assigned identifier for a server that you
-- instantiate.
[$sel:serverId:DescribedServer'] :: DescribedServer -> Maybe Text
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
[$sel:state:DescribedServer'] :: DescribedServer -> Maybe State
-- | Specifies the key-value pairs that you can use to search for and group
-- servers that were assigned to the server that was described.
[$sel:tags:DescribedServer'] :: DescribedServer -> Maybe (NonEmpty Tag)
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
[$sel:userCount:DescribedServer'] :: DescribedServer -> Maybe Int
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
[$sel:workflowDetails:DescribedServer'] :: DescribedServer -> Maybe WorkflowDetails
-- | Specifies the unique Amazon Resource Name (ARN) of the server.
[$sel:arn:DescribedServer'] :: DescribedServer -> Text
-- | Create a value of DescribedServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:certificate:DescribedServer',
-- describedServer_certificate - Specifies the ARN of the Amazon
-- Web ServicesCertificate Manager (ACM) certificate. Required when
-- Protocols is set to FTPS.
--
-- $sel:domain:DescribedServer', describedServer_domain -
-- Specifies the domain of the storage system that is used for file
-- transfers.
--
-- $sel:endpointDetails:DescribedServer',
-- describedServer_endpointDetails - The virtual private cloud
-- (VPC) endpoint settings that are configured for your server. When you
-- host your endpoint within your VPC, you can make your endpoint
-- accessible only to resources within your VPC, or you can attach
-- Elastic IP addresses and make your endpoint accessible to clients over
-- the internet. Your VPC's default security groups are automatically
-- assigned to your endpoint.
--
-- $sel:endpointType:DescribedServer',
-- describedServer_endpointType - Defines the type of endpoint
-- that your server is connected to. If your server is connected to a VPC
-- endpoint, your server isn't accessible over the public internet.
--
-- $sel:hostKeyFingerprint:DescribedServer',
-- describedServer_hostKeyFingerprint - Specifies the
-- Base64-encoded SHA256 fingerprint of the server's host key. This value
-- is equivalent to the output of the ssh-keygen -l -f
-- my-new-server-key command.
--
-- $sel:identityProviderDetails:DescribedServer',
-- describedServer_identityProviderDetails - Specifies information
-- to call a customer-supplied authentication API. This field is not
-- populated when the IdentityProviderType of a server is
-- AWS_DIRECTORY_SERVICE or SERVICE_MANAGED.
--
-- $sel:identityProviderType:DescribedServer',
-- describedServer_identityProviderType - The mode of
-- authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
--
-- $sel:loggingRole:DescribedServer',
-- describedServer_loggingRole - The Amazon Resource Name (ARN) of
-- the Identity and Access Management (IAM) role that allows a server to
-- turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents.
-- When set, you can view user activity in your CloudWatch logs.
--
-- $sel:postAuthenticationLoginBanner:DescribedServer',
-- describedServer_postAuthenticationLoginBanner - Specifies a
-- string to display when users connect to a server. This string is
-- displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
--
-- $sel:preAuthenticationLoginBanner:DescribedServer',
-- describedServer_preAuthenticationLoginBanner - Specifies a
-- string to display when users connect to a server. This string is
-- displayed before the user authenticates. For example, the following
-- banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
--
-- $sel:protocolDetails:DescribedServer',
-- describedServer_protocolDetails - The protocol settings that
-- are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
--
-- $sel:protocols:DescribedServer',
-- describedServer_protocols - Specifies the file transfer
-- protocol or protocols over which your file transfer protocol client
-- can connect to your server's endpoint. The available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
--
-- $sel:securityPolicyName:DescribedServer',
-- describedServer_securityPolicyName - Specifies the name of the
-- security policy that is attached to the server.
--
-- $sel:serverId:DescribedServer', describedServer_serverId
-- - Specifies the unique system-assigned identifier for a server that
-- you instantiate.
--
-- $sel:state:DescribedServer', describedServer_state - The
-- condition of the server that was described. A value of ONLINE
-- indicates that the server can accept jobs and transfer files. A
-- State value of OFFLINE means that the server cannot
-- perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
--
-- $sel:tags:DescribedServer', describedServer_tags -
-- Specifies the key-value pairs that you can use to search for and group
-- servers that were assigned to the server that was described.
--
-- $sel:userCount:DescribedServer',
-- describedServer_userCount - Specifies the number of users that
-- are assigned to a server you specified with the ServerId.
--
-- $sel:workflowDetails:DescribedServer',
-- describedServer_workflowDetails - Specifies the workflow ID for
-- the workflow to assign and the execution role that's used for
-- executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- $sel:arn:DescribedServer', describedServer_arn -
-- Specifies the unique Amazon Resource Name (ARN) of the server.
newDescribedServer :: Text -> DescribedServer
-- | Specifies the ARN of the Amazon Web ServicesCertificate Manager (ACM)
-- certificate. Required when Protocols is set to FTPS.
describedServer_certificate :: Lens' DescribedServer (Maybe Text)
-- | Specifies the domain of the storage system that is used for file
-- transfers.
describedServer_domain :: Lens' DescribedServer (Maybe Domain)
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
describedServer_endpointDetails :: Lens' DescribedServer (Maybe EndpointDetails)
-- | Defines the type of endpoint that your server is connected to. If your
-- server is connected to a VPC endpoint, your server isn't accessible
-- over the public internet.
describedServer_endpointType :: Lens' DescribedServer (Maybe EndpointType)
-- | Specifies the Base64-encoded SHA256 fingerprint of the server's host
-- key. This value is equivalent to the output of the ssh-keygen -l
-- -f my-new-server-key command.
describedServer_hostKeyFingerprint :: Lens' DescribedServer (Maybe Text)
-- | Specifies information to call a customer-supplied authentication API.
-- This field is not populated when the IdentityProviderType of
-- a server is AWS_DIRECTORY_SERVICE or
-- SERVICE_MANAGED.
describedServer_identityProviderDetails :: Lens' DescribedServer (Maybe IdentityProviderDetails)
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
describedServer_identityProviderType :: Lens' DescribedServer (Maybe IdentityProviderType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
describedServer_loggingRole :: Lens' DescribedServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
describedServer_postAuthenticationLoginBanner :: Lens' DescribedServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
describedServer_preAuthenticationLoginBanner :: Lens' DescribedServer (Maybe Text)
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
describedServer_protocolDetails :: Lens' DescribedServer (Maybe ProtocolDetails)
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
describedServer_protocols :: Lens' DescribedServer (Maybe (NonEmpty Protocol))
-- | Specifies the name of the security policy that is attached to the
-- server.
describedServer_securityPolicyName :: Lens' DescribedServer (Maybe Text)
-- | Specifies the unique system-assigned identifier for a server that you
-- instantiate.
describedServer_serverId :: Lens' DescribedServer (Maybe Text)
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
describedServer_state :: Lens' DescribedServer (Maybe State)
-- | Specifies the key-value pairs that you can use to search for and group
-- servers that were assigned to the server that was described.
describedServer_tags :: Lens' DescribedServer (Maybe (NonEmpty Tag))
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
describedServer_userCount :: Lens' DescribedServer (Maybe Int)
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
describedServer_workflowDetails :: Lens' DescribedServer (Maybe WorkflowDetails)
-- | Specifies the unique Amazon Resource Name (ARN) of the server.
describedServer_arn :: Lens' DescribedServer Text
-- | Describes the properties of a user that was specified.
--
-- See: newDescribedUser smart constructor.
data DescribedUser
DescribedUser' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Maybe [SshPublicKey] -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:DescribedUser'] :: DescribedUser -> Maybe Text
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
[$sel:homeDirectoryMappings:DescribedUser'] :: DescribedUser -> Maybe (NonEmpty HomeDirectoryMapEntry)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:DescribedUser'] :: DescribedUser -> Maybe HomeDirectoryType
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
[$sel:policy:DescribedUser'] :: DescribedUser -> Maybe Text
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon Elastic File System (Amazon EFS) file systems. The POSIX
-- permissions that are set on files and directories in your file system
-- determine the level of access your users get when transferring files
-- into and out of your Amazon EFS file systems.
[$sel:posixProfile:DescribedUser'] :: DescribedUser -> Maybe PosixProfile
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':DescribedUser'] :: DescribedUser -> Maybe Text
-- | Specifies the public key portion of the Secure Shell (SSH) keys stored
-- for the described user.
[$sel:sshPublicKeys:DescribedUser'] :: DescribedUser -> Maybe [SshPublicKey]
-- | Specifies the key-value pairs for the user requested. Tag can be used
-- to search for and group users for a variety of purposes.
[$sel:tags:DescribedUser'] :: DescribedUser -> Maybe (NonEmpty Tag)
-- | Specifies the name of the user that was requested to be described.
-- User names are used for authentication purposes. This is the string
-- that will be used by your user when they log in to your server.
[$sel:userName:DescribedUser'] :: DescribedUser -> Maybe Text
-- | Specifies the unique Amazon Resource Name (ARN) for the user that was
-- requested to be described.
[$sel:arn:DescribedUser'] :: DescribedUser -> Text
-- | Create a value of DescribedUser with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:homeDirectory:DescribedUser',
-- describedUser_homeDirectory - The landing directory (folder)
-- for a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryMappings:DescribedUser',
-- describedUser_homeDirectoryMappings - Logical directory
-- mappings that specify what Amazon S3 or Amazon EFS paths and keys
-- should be visible to your user and how you want to make them visible.
-- You must specify the Entry and Target pair, where
-- Entry shows how the path is made visible and Target
-- is the actual Amazon S3 or Amazon EFS path. If you only specify a
-- target, it is displayed as is. You also must ensure that your Identity
-- and Access Management (IAM) role provides access to paths in
-- Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- $sel:homeDirectoryType:DescribedUser',
-- describedUser_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:policy:DescribedUser', describedUser_policy - A
-- session policy for your user so that you can use the same Identity and
-- Access Management (IAM) role across multiple users. This policy scopes
-- down a user's access to portions of their Amazon S3 bucket. Variables
-- that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- $sel:posixProfile:DescribedUser',
-- describedUser_posixProfile - Specifies the full POSIX identity,
-- including user ID (Uid), group ID (Gid), and any
-- secondary groups IDs (SecondaryGids), that controls your
-- users' access to your Amazon Elastic File System (Amazon EFS) file
-- systems. The POSIX permissions that are set on files and directories
-- in your file system determine the level of access your users get when
-- transferring files into and out of your Amazon EFS file systems.
--
-- $sel:role':DescribedUser', describedUser_role - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that controls your users' access to your Amazon S3 bucket or
-- Amazon EFS file system. The policies attached to this role determine
-- the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
--
-- $sel:sshPublicKeys:DescribedUser',
-- describedUser_sshPublicKeys - Specifies the public key portion
-- of the Secure Shell (SSH) keys stored for the described user.
--
-- $sel:tags:DescribedUser', describedUser_tags - Specifies
-- the key-value pairs for the user requested. Tag can be used to search
-- for and group users for a variety of purposes.
--
-- $sel:userName:DescribedUser', describedUser_userName -
-- Specifies the name of the user that was requested to be described.
-- User names are used for authentication purposes. This is the string
-- that will be used by your user when they log in to your server.
--
-- $sel:arn:DescribedUser', describedUser_arn - Specifies
-- the unique Amazon Resource Name (ARN) for the user that was requested
-- to be described.
newDescribedUser :: Text -> DescribedUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
describedUser_homeDirectory :: Lens' DescribedUser (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
describedUser_homeDirectoryMappings :: Lens' DescribedUser (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
describedUser_homeDirectoryType :: Lens' DescribedUser (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
describedUser_policy :: Lens' DescribedUser (Maybe Text)
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon Elastic File System (Amazon EFS) file systems. The POSIX
-- permissions that are set on files and directories in your file system
-- determine the level of access your users get when transferring files
-- into and out of your Amazon EFS file systems.
describedUser_posixProfile :: Lens' DescribedUser (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
describedUser_role :: Lens' DescribedUser (Maybe Text)
-- | Specifies the public key portion of the Secure Shell (SSH) keys stored
-- for the described user.
describedUser_sshPublicKeys :: Lens' DescribedUser (Maybe [SshPublicKey])
-- | Specifies the key-value pairs for the user requested. Tag can be used
-- to search for and group users for a variety of purposes.
describedUser_tags :: Lens' DescribedUser (Maybe (NonEmpty Tag))
-- | Specifies the name of the user that was requested to be described.
-- User names are used for authentication purposes. This is the string
-- that will be used by your user when they log in to your server.
describedUser_userName :: Lens' DescribedUser (Maybe Text)
-- | Specifies the unique Amazon Resource Name (ARN) for the user that was
-- requested to be described.
describedUser_arn :: Lens' DescribedUser Text
-- | Describes the properties of the specified workflow
--
-- See: newDescribedWorkflow smart constructor.
data DescribedWorkflow
DescribedWorkflow' :: Maybe Text -> Maybe [WorkflowStep] -> Maybe [WorkflowStep] -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedWorkflow
-- | Specifies the text description for the workflow.
[$sel:description:DescribedWorkflow'] :: DescribedWorkflow -> Maybe Text
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
[$sel:onExceptionSteps:DescribedWorkflow'] :: DescribedWorkflow -> Maybe [WorkflowStep]
-- | Specifies the details for the steps that are in the specified
-- workflow.
[$sel:steps:DescribedWorkflow'] :: DescribedWorkflow -> Maybe [WorkflowStep]
-- | Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
[$sel:tags:DescribedWorkflow'] :: DescribedWorkflow -> Maybe (NonEmpty Tag)
-- | A unique identifier for the workflow.
[$sel:workflowId:DescribedWorkflow'] :: DescribedWorkflow -> Maybe Text
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
[$sel:arn:DescribedWorkflow'] :: DescribedWorkflow -> Text
-- | Create a value of DescribedWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:description:DescribedWorkflow',
-- describedWorkflow_description - Specifies the text description
-- for the workflow.
--
-- $sel:onExceptionSteps:DescribedWorkflow',
-- describedWorkflow_onExceptionSteps - Specifies the steps
-- (actions) to take if errors are encountered during execution of the
-- workflow.
--
-- $sel:steps:DescribedWorkflow', describedWorkflow_steps -
-- Specifies the details for the steps that are in the specified
-- workflow.
--
-- $sel:tags:DescribedWorkflow', describedWorkflow_tags -
-- Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
--
-- $sel:workflowId:DescribedWorkflow',
-- describedWorkflow_workflowId - A unique identifier for the
-- workflow.
--
-- $sel:arn:DescribedWorkflow', describedWorkflow_arn -
-- Specifies the unique Amazon Resource Name (ARN) for the workflow.
newDescribedWorkflow :: Text -> DescribedWorkflow
-- | Specifies the text description for the workflow.
describedWorkflow_description :: Lens' DescribedWorkflow (Maybe Text)
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
describedWorkflow_onExceptionSteps :: Lens' DescribedWorkflow (Maybe [WorkflowStep])
-- | Specifies the details for the steps that are in the specified
-- workflow.
describedWorkflow_steps :: Lens' DescribedWorkflow (Maybe [WorkflowStep])
-- | Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
describedWorkflow_tags :: Lens' DescribedWorkflow (Maybe (NonEmpty Tag))
-- | A unique identifier for the workflow.
describedWorkflow_workflowId :: Lens' DescribedWorkflow (Maybe Text)
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
describedWorkflow_arn :: Lens' DescribedWorkflow Text
-- | Reserved for future use.
--
-- See: newEfsFileLocation smart constructor.
data EfsFileLocation
EfsFileLocation' :: Maybe Text -> Maybe Text -> EfsFileLocation
-- | The identifier of the file system, assigned by Amazon EFS.
[$sel:fileSystemId:EfsFileLocation'] :: EfsFileLocation -> Maybe Text
-- | The pathname for the folder being used by a workflow.
[$sel:path:EfsFileLocation'] :: EfsFileLocation -> Maybe Text
-- | Create a value of EfsFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:fileSystemId:EfsFileLocation',
-- efsFileLocation_fileSystemId - The identifier of the file
-- system, assigned by Amazon EFS.
--
-- $sel:path:EfsFileLocation', efsFileLocation_path - The
-- pathname for the folder being used by a workflow.
newEfsFileLocation :: EfsFileLocation
-- | The identifier of the file system, assigned by Amazon EFS.
efsFileLocation_fileSystemId :: Lens' EfsFileLocation (Maybe Text)
-- | The pathname for the folder being used by a workflow.
efsFileLocation_path :: Lens' EfsFileLocation (Maybe Text)
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your file transfer protocol-enabled server. With a VPC endpoint,
-- you can restrict access to your server and resources only within your
-- VPC. To control incoming internet traffic, invoke the
-- UpdateServer API and attach an Elastic IP address to your
-- server's endpoint.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Servicesaccount on or before May 19, 2021, you will
-- not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- See: newEndpointDetails smart constructor.
data EndpointDetails
EndpointDetails' :: Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Maybe Text -> Maybe Text -> EndpointDetails
-- | A list of address allocation IDs that are required to attach an
-- Elastic IP address to your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC and it is only valid in the UpdateServer API.
[$sel:addressAllocationIds:EndpointDetails'] :: EndpointDetails -> Maybe [Text]
-- | A list of security groups IDs that are available to attach to your
-- server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- You can edit the SecurityGroupIds property in the
-- UpdateServer API only if you are changing the
-- EndpointType from PUBLIC or VPC_ENDPOINT to
-- VPC. To change security groups associated with your server's
-- VPC endpoint after creation, use the Amazon EC2
-- ModifyVpcEndpoint API.
[$sel:securityGroupIds:EndpointDetails'] :: EndpointDetails -> Maybe [Text]
-- | A list of subnet IDs that are required to host your server endpoint in
-- your VPC.
--
-- This property can only be set when EndpointType is set to
-- VPC.
[$sel:subnetIds:EndpointDetails'] :: EndpointDetails -> Maybe [Text]
-- | The identifier of the VPC endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC_ENDPOINT.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
[$sel:vpcEndpointId:EndpointDetails'] :: EndpointDetails -> Maybe Text
-- | The VPC identifier of the VPC in which a server's endpoint will be
-- hosted.
--
-- This property can only be set when EndpointType is set to
-- VPC.
[$sel:vpcId:EndpointDetails'] :: EndpointDetails -> Maybe Text
-- | Create a value of EndpointDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:addressAllocationIds:EndpointDetails',
-- endpointDetails_addressAllocationIds - A list of address
-- allocation IDs that are required to attach an Elastic IP address to
-- your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC and it is only valid in the UpdateServer API.
--
-- $sel:securityGroupIds:EndpointDetails',
-- endpointDetails_securityGroupIds - A list of security groups
-- IDs that are available to attach to your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- You can edit the SecurityGroupIds property in the
-- UpdateServer API only if you are changing the
-- EndpointType from PUBLIC or VPC_ENDPOINT to
-- VPC. To change security groups associated with your server's
-- VPC endpoint after creation, use the Amazon EC2
-- ModifyVpcEndpoint API.
--
-- $sel:subnetIds:EndpointDetails',
-- endpointDetails_subnetIds - A list of subnet IDs that are
-- required to host your server endpoint in your VPC.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- $sel:vpcEndpointId:EndpointDetails',
-- endpointDetails_vpcEndpointId - The identifier of the VPC
-- endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC_ENDPOINT.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- $sel:vpcId:EndpointDetails', endpointDetails_vpcId - The
-- VPC identifier of the VPC in which a server's endpoint will be hosted.
--
-- This property can only be set when EndpointType is set to
-- VPC.
newEndpointDetails :: EndpointDetails
-- | A list of address allocation IDs that are required to attach an
-- Elastic IP address to your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC and it is only valid in the UpdateServer API.
endpointDetails_addressAllocationIds :: Lens' EndpointDetails (Maybe [Text])
-- | A list of security groups IDs that are available to attach to your
-- server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- You can edit the SecurityGroupIds property in the
-- UpdateServer API only if you are changing the
-- EndpointType from PUBLIC or VPC_ENDPOINT to
-- VPC. To change security groups associated with your server's
-- VPC endpoint after creation, use the Amazon EC2
-- ModifyVpcEndpoint API.
endpointDetails_securityGroupIds :: Lens' EndpointDetails (Maybe [Text])
-- | A list of subnet IDs that are required to host your server endpoint in
-- your VPC.
--
-- This property can only be set when EndpointType is set to
-- VPC.
endpointDetails_subnetIds :: Lens' EndpointDetails (Maybe [Text])
-- | The identifier of the VPC endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC_ENDPOINT.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
endpointDetails_vpcEndpointId :: Lens' EndpointDetails (Maybe Text)
-- | The VPC identifier of the VPC in which a server's endpoint will be
-- hosted.
--
-- This property can only be set when EndpointType is set to
-- VPC.
endpointDetails_vpcId :: Lens' EndpointDetails (Maybe Text)
-- | Specifies the error message and type, for an error that occurs during
-- the execution of the workflow.
--
-- See: newExecutionError smart constructor.
data ExecutionError
ExecutionError' :: ExecutionErrorType -> Text -> ExecutionError
-- | Specifies the error type.
--
--
-- - ALREADY_EXISTS: occurs for a copy step, if the overwrite
-- option is not selected and a file with the same name already exists in
-- the target location.
-- - BAD_REQUEST: a general bad request: for example, a step
-- that attempts to tag an EFS file returns BAD_REQUEST, as only
-- S3 files can be tagged.
-- - CUSTOM_STEP_FAILED: occurs when the custom step provided
-- a callback that indicates failure.
-- - INTERNAL_SERVER_ERROR: a catch-all error that can occur
-- for a variety of reasons.
-- - NOT_FOUND: occurs when a requested entity, for example a
-- source file for a copy step, does not exist.
-- - PERMISSION_DENIED: occurs if your policy does not contain
-- the correct permissions to complete one or more of the steps in the
-- workflow.
-- - TIMEOUT: occurs when the execution times out.You can set
-- the TimeoutSeconds for a custom step, anywhere from 1 second
-- to 1800 seconds (30 minutes).
-- - THROTTLED: occurs if you exceed the new execution refill
-- rate of one workflow per second.
--
[$sel:type':ExecutionError'] :: ExecutionError -> ExecutionErrorType
-- | Specifies the descriptive message that corresponds to the
-- ErrorType.
[$sel:message:ExecutionError'] :: ExecutionError -> Text
-- | Create a value of ExecutionError with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:type':ExecutionError', executionError_type -
-- Specifies the error type.
--
--
-- - ALREADY_EXISTS: occurs for a copy step, if the overwrite
-- option is not selected and a file with the same name already exists in
-- the target location.
-- - BAD_REQUEST: a general bad request: for example, a step
-- that attempts to tag an EFS file returns BAD_REQUEST, as only
-- S3 files can be tagged.
-- - CUSTOM_STEP_FAILED: occurs when the custom step provided
-- a callback that indicates failure.
-- - INTERNAL_SERVER_ERROR: a catch-all error that can occur
-- for a variety of reasons.
-- - NOT_FOUND: occurs when a requested entity, for example a
-- source file for a copy step, does not exist.
-- - PERMISSION_DENIED: occurs if your policy does not contain
-- the correct permissions to complete one or more of the steps in the
-- workflow.
-- - TIMEOUT: occurs when the execution times out.You can set
-- the TimeoutSeconds for a custom step, anywhere from 1 second
-- to 1800 seconds (30 minutes).
-- - THROTTLED: occurs if you exceed the new execution refill
-- rate of one workflow per second.
--
--
-- $sel:message:ExecutionError', executionError_message -
-- Specifies the descriptive message that corresponds to the
-- ErrorType.
newExecutionError :: ExecutionErrorType -> Text -> ExecutionError
-- | Specifies the error type.
--
--
-- - ALREADY_EXISTS: occurs for a copy step, if the overwrite
-- option is not selected and a file with the same name already exists in
-- the target location.
-- - BAD_REQUEST: a general bad request: for example, a step
-- that attempts to tag an EFS file returns BAD_REQUEST, as only
-- S3 files can be tagged.
-- - CUSTOM_STEP_FAILED: occurs when the custom step provided
-- a callback that indicates failure.
-- - INTERNAL_SERVER_ERROR: a catch-all error that can occur
-- for a variety of reasons.
-- - NOT_FOUND: occurs when a requested entity, for example a
-- source file for a copy step, does not exist.
-- - PERMISSION_DENIED: occurs if your policy does not contain
-- the correct permissions to complete one or more of the steps in the
-- workflow.
-- - TIMEOUT: occurs when the execution times out.You can set
-- the TimeoutSeconds for a custom step, anywhere from 1 second
-- to 1800 seconds (30 minutes).
-- - THROTTLED: occurs if you exceed the new execution refill
-- rate of one workflow per second.
--
executionError_type :: Lens' ExecutionError ExecutionErrorType
-- | Specifies the descriptive message that corresponds to the
-- ErrorType.
executionError_message :: Lens' ExecutionError Text
-- | Specifies the steps in the workflow, as well as the steps to execute
-- in case of any errors during workflow execution.
--
-- See: newExecutionResults smart constructor.
data ExecutionResults
ExecutionResults' :: Maybe (NonEmpty ExecutionStepResult) -> Maybe (NonEmpty ExecutionStepResult) -> ExecutionResults
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
[$sel:onExceptionSteps:ExecutionResults'] :: ExecutionResults -> Maybe (NonEmpty ExecutionStepResult)
-- | Specifies the details for the steps that are in the specified
-- workflow.
[$sel:steps:ExecutionResults'] :: ExecutionResults -> Maybe (NonEmpty ExecutionStepResult)
-- | Create a value of ExecutionResults with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:onExceptionSteps:ExecutionResults',
-- executionResults_onExceptionSteps - Specifies the steps
-- (actions) to take if errors are encountered during execution of the
-- workflow.
--
-- $sel:steps:ExecutionResults', executionResults_steps -
-- Specifies the details for the steps that are in the specified
-- workflow.
newExecutionResults :: ExecutionResults
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
executionResults_onExceptionSteps :: Lens' ExecutionResults (Maybe (NonEmpty ExecutionStepResult))
-- | Specifies the details for the steps that are in the specified
-- workflow.
executionResults_steps :: Lens' ExecutionResults (Maybe (NonEmpty ExecutionStepResult))
-- | Specifies the following details for the step: error (if any), outputs
-- (if any), and the step type.
--
-- See: newExecutionStepResult smart constructor.
data ExecutionStepResult
ExecutionStepResult' :: Maybe ExecutionError -> Maybe Text -> Maybe WorkflowStepType -> ExecutionStepResult
-- | Specifies the details for an error, if it occurred during execution of
-- the specified workflow step.
[$sel:error:ExecutionStepResult'] :: ExecutionStepResult -> Maybe ExecutionError
-- | The values for the key/value pair applied as a tag to the file. Only
-- applicable if the step type is TAG.
[$sel:outputs:ExecutionStepResult'] :: ExecutionStepResult -> Maybe Text
-- | One of the available step types.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
[$sel:stepType:ExecutionStepResult'] :: ExecutionStepResult -> Maybe WorkflowStepType
-- | Create a value of ExecutionStepResult with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:error:ExecutionStepResult',
-- executionStepResult_error - Specifies the details for an error,
-- if it occurred during execution of the specified workflow step.
--
-- $sel:outputs:ExecutionStepResult',
-- executionStepResult_outputs - The values for the key/value pair
-- applied as a tag to the file. Only applicable if the step type is
-- TAG.
--
-- $sel:stepType:ExecutionStepResult',
-- executionStepResult_stepType - One of the available step types.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
newExecutionStepResult :: ExecutionStepResult
-- | Specifies the details for an error, if it occurred during execution of
-- the specified workflow step.
executionStepResult_error :: Lens' ExecutionStepResult (Maybe ExecutionError)
-- | The values for the key/value pair applied as a tag to the file. Only
-- applicable if the step type is TAG.
executionStepResult_outputs :: Lens' ExecutionStepResult (Maybe Text)
-- | One of the available step types.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
executionStepResult_stepType :: Lens' ExecutionStepResult (Maybe WorkflowStepType)
-- | Specifies the Amazon S3 or EFS file details to be used in the step.
--
-- See: newFileLocation smart constructor.
data FileLocation
FileLocation' :: Maybe EfsFileLocation -> Maybe S3FileLocation -> FileLocation
-- | Specifies the Amazon EFS identifier and the path for the file being
-- used.
[$sel:efsFileLocation:FileLocation'] :: FileLocation -> Maybe EfsFileLocation
-- | Specifies the S3 details for the file being used, such as bucket,
-- ETag, and so forth.
[$sel:s3FileLocation:FileLocation'] :: FileLocation -> Maybe S3FileLocation
-- | Create a value of FileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:efsFileLocation:FileLocation',
-- fileLocation_efsFileLocation - Specifies the Amazon EFS
-- identifier and the path for the file being used.
--
-- $sel:s3FileLocation:FileLocation',
-- fileLocation_s3FileLocation - Specifies the S3 details for the
-- file being used, such as bucket, ETag, and so forth.
newFileLocation :: FileLocation
-- | Specifies the Amazon EFS identifier and the path for the file being
-- used.
fileLocation_efsFileLocation :: Lens' FileLocation (Maybe EfsFileLocation)
-- | Specifies the S3 details for the file being used, such as bucket,
-- ETag, and so forth.
fileLocation_s3FileLocation :: Lens' FileLocation (Maybe S3FileLocation)
-- | Represents an object that contains entries and targets for
-- HomeDirectoryMappings.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- See: newHomeDirectoryMapEntry smart constructor.
data HomeDirectoryMapEntry
HomeDirectoryMapEntry' :: Text -> Text -> HomeDirectoryMapEntry
-- | Represents an entry for HomeDirectoryMappings.
[$sel:entry:HomeDirectoryMapEntry'] :: HomeDirectoryMapEntry -> Text
-- | Represents the map target that is used in a
-- HomeDirectorymapEntry.
[$sel:target:HomeDirectoryMapEntry'] :: HomeDirectoryMapEntry -> Text
-- | Create a value of HomeDirectoryMapEntry with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:entry:HomeDirectoryMapEntry',
-- homeDirectoryMapEntry_entry - Represents an entry for
-- HomeDirectoryMappings.
--
-- $sel:target:HomeDirectoryMapEntry',
-- homeDirectoryMapEntry_target - Represents the map target that
-- is used in a HomeDirectorymapEntry.
newHomeDirectoryMapEntry :: Text -> Text -> HomeDirectoryMapEntry
-- | Represents an entry for HomeDirectoryMappings.
homeDirectoryMapEntry_entry :: Lens' HomeDirectoryMapEntry Text
-- | Represents the map target that is used in a
-- HomeDirectorymapEntry.
homeDirectoryMapEntry_target :: Lens' HomeDirectoryMapEntry Text
-- | Returns information related to the type of user authentication that is
-- in use for a file transfer protocol-enabled server's users. A server
-- can have only one method of authentication.
--
-- See: newIdentityProviderDetails smart constructor.
data IdentityProviderDetails
IdentityProviderDetails' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> IdentityProviderDetails
-- | The identifier of the Directory Service directory that you want to
-- stop sharing.
[$sel:directoryId:IdentityProviderDetails'] :: IdentityProviderDetails -> Maybe Text
-- | The ARN for a lambda function to use for the Identity provider.
[$sel:function:IdentityProviderDetails'] :: IdentityProviderDetails -> Maybe Text
-- | Provides the type of InvocationRole used to authenticate the
-- user account.
[$sel:invocationRole:IdentityProviderDetails'] :: IdentityProviderDetails -> Maybe Text
-- | Provides the location of the service endpoint used to authenticate
-- users.
[$sel:url:IdentityProviderDetails'] :: IdentityProviderDetails -> Maybe Text
-- | Create a value of IdentityProviderDetails with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:directoryId:IdentityProviderDetails',
-- identityProviderDetails_directoryId - The identifier of the
-- Directory Service directory that you want to stop sharing.
--
-- $sel:function:IdentityProviderDetails',
-- identityProviderDetails_function - The ARN for a lambda
-- function to use for the Identity provider.
--
-- $sel:invocationRole:IdentityProviderDetails',
-- identityProviderDetails_invocationRole - Provides the type of
-- InvocationRole used to authenticate the user account.
--
-- $sel:url:IdentityProviderDetails',
-- identityProviderDetails_url - Provides the location of the
-- service endpoint used to authenticate users.
newIdentityProviderDetails :: IdentityProviderDetails
-- | The identifier of the Directory Service directory that you want to
-- stop sharing.
identityProviderDetails_directoryId :: Lens' IdentityProviderDetails (Maybe Text)
-- | The ARN for a lambda function to use for the Identity provider.
identityProviderDetails_function :: Lens' IdentityProviderDetails (Maybe Text)
-- | Provides the type of InvocationRole used to authenticate the
-- user account.
identityProviderDetails_invocationRole :: Lens' IdentityProviderDetails (Maybe Text)
-- | Provides the location of the service endpoint used to authenticate
-- users.
identityProviderDetails_url :: Lens' IdentityProviderDetails (Maybe Text)
-- | Specifies the location for the file being copied. Only applicable for
-- the Copy type of workflow steps.
--
-- See: newInputFileLocation smart constructor.
data InputFileLocation
InputFileLocation' :: Maybe EfsFileLocation -> Maybe S3InputFileLocation -> InputFileLocation
-- | Reserved for future use.
[$sel:efsFileLocation:InputFileLocation'] :: InputFileLocation -> Maybe EfsFileLocation
-- | Specifies the details for the S3 file being copied.
[$sel:s3FileLocation:InputFileLocation'] :: InputFileLocation -> Maybe S3InputFileLocation
-- | Create a value of InputFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:efsFileLocation:InputFileLocation',
-- inputFileLocation_efsFileLocation - Reserved for future use.
--
-- $sel:s3FileLocation:InputFileLocation',
-- inputFileLocation_s3FileLocation - Specifies the details for
-- the S3 file being copied.
newInputFileLocation :: InputFileLocation
-- | Reserved for future use.
inputFileLocation_efsFileLocation :: Lens' InputFileLocation (Maybe EfsFileLocation)
-- | Specifies the details for the S3 file being copied.
inputFileLocation_s3FileLocation :: Lens' InputFileLocation (Maybe S3InputFileLocation)
-- | Lists the properties for one or more specified associated accesses.
--
-- See: newListedAccess smart constructor.
data ListedAccess
ListedAccess' :: Maybe Text -> Maybe Text -> Maybe HomeDirectoryType -> Maybe Text -> ListedAccess
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
[$sel:externalId:ListedAccess'] :: ListedAccess -> Maybe Text
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:ListedAccess'] :: ListedAccess -> Maybe Text
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:ListedAccess'] :: ListedAccess -> Maybe HomeDirectoryType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':ListedAccess'] :: ListedAccess -> Maybe Text
-- | Create a value of ListedAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:externalId:ListedAccess', listedAccess_externalId -
-- A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
--
-- $sel:homeDirectory:ListedAccess',
-- listedAccess_homeDirectory - The landing directory (folder) for
-- a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryType:ListedAccess',
-- listedAccess_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:role':ListedAccess', listedAccess_role - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that controls your users' access to your Amazon S3 bucket or Amazon
-- EFS file system. The policies attached to this role determine the
-- level of access that you want to provide your users when transferring
-- files into and out of your Amazon S3 bucket or Amazon EFS file system.
-- The IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
newListedAccess :: ListedAccess
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
listedAccess_externalId :: Lens' ListedAccess (Maybe Text)
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
listedAccess_homeDirectory :: Lens' ListedAccess (Maybe Text)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
listedAccess_homeDirectoryType :: Lens' ListedAccess (Maybe HomeDirectoryType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
listedAccess_role :: Lens' ListedAccess (Maybe Text)
-- | Describes the properties of an agreement.
--
-- See: newListedAgreement smart constructor.
data ListedAgreement
ListedAgreement' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe AgreementStatusType -> ListedAgreement
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
[$sel:agreementId:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | The Amazon Resource Name (ARN) of the specified agreement.
[$sel:arn:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | The current description for the agreement. You can change it by
-- calling the UpdateAgreement operation and providing a new
-- description.
[$sel:description:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | A unique identifier for the AS2 local profile.
[$sel:localProfileId:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | A unique identifier for the partner profile.
[$sel:partnerProfileId:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | The unique identifier for the agreement.
[$sel:serverId:ListedAgreement'] :: ListedAgreement -> Maybe Text
-- | The agreement can be either ACTIVE or INACTIVE.
[$sel:status:ListedAgreement'] :: ListedAgreement -> Maybe AgreementStatusType
-- | Create a value of ListedAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:agreementId:ListedAgreement',
-- listedAgreement_agreementId - A unique identifier for the
-- agreement. This identifier is returned when you create an agreement.
--
-- $sel:arn:ListedAgreement', listedAgreement_arn - The
-- Amazon Resource Name (ARN) of the specified agreement.
--
-- $sel:description:ListedAgreement',
-- listedAgreement_description - The current description for the
-- agreement. You can change it by calling the UpdateAgreement
-- operation and providing a new description.
--
-- $sel:localProfileId:ListedAgreement',
-- listedAgreement_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:partnerProfileId:ListedAgreement',
-- listedAgreement_partnerProfileId - A unique identifier for the
-- partner profile.
--
-- $sel:serverId:ListedAgreement', listedAgreement_serverId
-- - The unique identifier for the agreement.
--
-- $sel:status:ListedAgreement', listedAgreement_status -
-- The agreement can be either ACTIVE or INACTIVE.
newListedAgreement :: ListedAgreement
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
listedAgreement_agreementId :: Lens' ListedAgreement (Maybe Text)
-- | The Amazon Resource Name (ARN) of the specified agreement.
listedAgreement_arn :: Lens' ListedAgreement (Maybe Text)
-- | The current description for the agreement. You can change it by
-- calling the UpdateAgreement operation and providing a new
-- description.
listedAgreement_description :: Lens' ListedAgreement (Maybe Text)
-- | A unique identifier for the AS2 local profile.
listedAgreement_localProfileId :: Lens' ListedAgreement (Maybe Text)
-- | A unique identifier for the partner profile.
listedAgreement_partnerProfileId :: Lens' ListedAgreement (Maybe Text)
-- | The unique identifier for the agreement.
listedAgreement_serverId :: Lens' ListedAgreement (Maybe Text)
-- | The agreement can be either ACTIVE or INACTIVE.
listedAgreement_status :: Lens' ListedAgreement (Maybe AgreementStatusType)
-- | Describes the properties of a certificate.
--
-- See: newListedCertificate smart constructor.
data ListedCertificate
ListedCertificate' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe POSIX -> Maybe CertificateStatusType -> Maybe CertificateType -> Maybe CertificateUsageType -> ListedCertificate
-- | An optional date that specifies when the certificate becomes active.
[$sel:activeDate:ListedCertificate'] :: ListedCertificate -> Maybe POSIX
-- | The Amazon Resource Name (ARN) of the specified certificate.
[$sel:arn:ListedCertificate'] :: ListedCertificate -> Maybe Text
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateId:ListedCertificate'] :: ListedCertificate -> Maybe Text
-- | The name or short description that's used to identify the certificate.
[$sel:description:ListedCertificate'] :: ListedCertificate -> Maybe Text
-- | An optional date that specifies when the certificate becomes inactive.
[$sel:inactiveDate:ListedCertificate'] :: ListedCertificate -> Maybe POSIX
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
[$sel:status:ListedCertificate'] :: ListedCertificate -> Maybe CertificateStatusType
-- | The type for the certificate. If a private key has been specified for
-- the certificate, its type is CERTIFICATE_WITH_PRIVATE_KEY. If
-- there is no private key, the type is CERTIFICATE.
[$sel:type':ListedCertificate'] :: ListedCertificate -> Maybe CertificateType
-- | Specifies whether this certificate is used for signing or encryption.
[$sel:usage:ListedCertificate'] :: ListedCertificate -> Maybe CertificateUsageType
-- | Create a value of ListedCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:activeDate:ListedCertificate',
-- listedCertificate_activeDate - An optional date that specifies
-- when the certificate becomes active.
--
-- $sel:arn:ListedCertificate', listedCertificate_arn - The
-- Amazon Resource Name (ARN) of the specified certificate.
--
-- $sel:certificateId:ListedCertificate',
-- listedCertificate_certificateId - An array of identifiers for
-- the imported certificates. You use this identifier for working with
-- profiles and partner profiles.
--
-- $sel:description:ListedCertificate',
-- listedCertificate_description - The name or short description
-- that's used to identify the certificate.
--
-- $sel:inactiveDate:ListedCertificate',
-- listedCertificate_inactiveDate - An optional date that
-- specifies when the certificate becomes inactive.
--
-- $sel:status:ListedCertificate', listedCertificate_status
-- - The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
--
-- $sel:type':ListedCertificate', listedCertificate_type -
-- The type for the certificate. If a private key has been specified for
-- the certificate, its type is CERTIFICATE_WITH_PRIVATE_KEY. If
-- there is no private key, the type is CERTIFICATE.
--
-- $sel:usage:ListedCertificate', listedCertificate_usage -
-- Specifies whether this certificate is used for signing or encryption.
newListedCertificate :: ListedCertificate
-- | An optional date that specifies when the certificate becomes active.
listedCertificate_activeDate :: Lens' ListedCertificate (Maybe UTCTime)
-- | The Amazon Resource Name (ARN) of the specified certificate.
listedCertificate_arn :: Lens' ListedCertificate (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
listedCertificate_certificateId :: Lens' ListedCertificate (Maybe Text)
-- | The name or short description that's used to identify the certificate.
listedCertificate_description :: Lens' ListedCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
listedCertificate_inactiveDate :: Lens' ListedCertificate (Maybe UTCTime)
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
listedCertificate_status :: Lens' ListedCertificate (Maybe CertificateStatusType)
-- | The type for the certificate. If a private key has been specified for
-- the certificate, its type is CERTIFICATE_WITH_PRIVATE_KEY. If
-- there is no private key, the type is CERTIFICATE.
listedCertificate_type :: Lens' ListedCertificate (Maybe CertificateType)
-- | Specifies whether this certificate is used for signing or encryption.
listedCertificate_usage :: Lens' ListedCertificate (Maybe CertificateUsageType)
-- | Returns details of the connector that is specified.
--
-- See: newListedConnector smart constructor.
data ListedConnector
ListedConnector' :: Maybe Text -> Maybe Text -> Maybe Text -> ListedConnector
-- | The Amazon Resource Name (ARN) of the specified connector.
[$sel:arn:ListedConnector'] :: ListedConnector -> Maybe Text
-- | The unique identifier for the connector.
[$sel:connectorId:ListedConnector'] :: ListedConnector -> Maybe Text
-- | The URL of the partner's AS2 endpoint.
[$sel:url:ListedConnector'] :: ListedConnector -> Maybe Text
-- | Create a value of ListedConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedConnector', listedConnector_arn - The
-- Amazon Resource Name (ARN) of the specified connector.
--
-- $sel:connectorId:ListedConnector',
-- listedConnector_connectorId - The unique identifier for the
-- connector.
--
-- $sel:url:ListedConnector', listedConnector_url - The URL
-- of the partner's AS2 endpoint.
newListedConnector :: ListedConnector
-- | The Amazon Resource Name (ARN) of the specified connector.
listedConnector_arn :: Lens' ListedConnector (Maybe Text)
-- | The unique identifier for the connector.
listedConnector_connectorId :: Lens' ListedConnector (Maybe Text)
-- | The URL of the partner's AS2 endpoint.
listedConnector_url :: Lens' ListedConnector (Maybe Text)
-- | Returns properties of the execution that is specified.
--
-- See: newListedExecution smart constructor.
data ListedExecution
ListedExecution' :: Maybe Text -> Maybe FileLocation -> Maybe ServiceMetadata -> Maybe ExecutionStatus -> ListedExecution
-- | A unique identifier for the execution of a workflow.
[$sel:executionId:ListedExecution'] :: ListedExecution -> Maybe Text
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
[$sel:initialFileLocation:ListedExecution'] :: ListedExecution -> Maybe FileLocation
-- | A container object for the session details that are associated with a
-- workflow.
[$sel:serviceMetadata:ListedExecution'] :: ListedExecution -> Maybe ServiceMetadata
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
[$sel:status:ListedExecution'] :: ListedExecution -> Maybe ExecutionStatus
-- | Create a value of ListedExecution with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:executionId:ListedExecution',
-- listedExecution_executionId - A unique identifier for the
-- execution of a workflow.
--
-- $sel:initialFileLocation:ListedExecution',
-- listedExecution_initialFileLocation - A structure that
-- describes the Amazon S3 or EFS file location. This is the file
-- location when the execution begins: if the file is being copied, this
-- is the initial (as opposed to destination) file location.
--
-- $sel:serviceMetadata:ListedExecution',
-- listedExecution_serviceMetadata - A container object for the
-- session details that are associated with a workflow.
--
-- $sel:status:ListedExecution', listedExecution_status -
-- The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
newListedExecution :: ListedExecution
-- | A unique identifier for the execution of a workflow.
listedExecution_executionId :: Lens' ListedExecution (Maybe Text)
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
listedExecution_initialFileLocation :: Lens' ListedExecution (Maybe FileLocation)
-- | A container object for the session details that are associated with a
-- workflow.
listedExecution_serviceMetadata :: Lens' ListedExecution (Maybe ServiceMetadata)
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
listedExecution_status :: Lens' ListedExecution (Maybe ExecutionStatus)
-- | Returns properties of the host key that's specified.
--
-- See: newListedHostKey smart constructor.
data ListedHostKey
ListedHostKey' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Text -> ListedHostKey
-- | The date on which the host key was added to the server.
[$sel:dateImported:ListedHostKey'] :: ListedHostKey -> Maybe POSIX
-- | The current description for the host key. You can change it by calling
-- the UpdateHostKey operation and providing a new description.
[$sel:description:ListedHostKey'] :: ListedHostKey -> Maybe Text
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
[$sel:fingerprint:ListedHostKey'] :: ListedHostKey -> Maybe Text
-- | A unique identifier for the host key.
[$sel:hostKeyId:ListedHostKey'] :: ListedHostKey -> Maybe Text
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
[$sel:type':ListedHostKey'] :: ListedHostKey -> Maybe Text
-- | The unique Amazon Resource Name (ARN) of the host key.
[$sel:arn:ListedHostKey'] :: ListedHostKey -> Text
-- | Create a value of ListedHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:ListedHostKey',
-- listedHostKey_dateImported - The date on which the host key was
-- added to the server.
--
-- $sel:description:ListedHostKey',
-- listedHostKey_description - The current description for the
-- host key. You can change it by calling the UpdateHostKey
-- operation and providing a new description.
--
-- $sel:fingerprint:ListedHostKey',
-- listedHostKey_fingerprint - The public key fingerprint, which
-- is a short sequence of bytes used to identify the longer public key.
--
-- $sel:hostKeyId:ListedHostKey', listedHostKey_hostKeyId -
-- A unique identifier for the host key.
--
-- $sel:type':ListedHostKey', listedHostKey_type - The
-- encryption algorithm that is used for the host key. The Type
-- parameter is specified by using one of the following values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
--
-- $sel:arn:ListedHostKey', listedHostKey_arn - The unique
-- Amazon Resource Name (ARN) of the host key.
newListedHostKey :: Text -> ListedHostKey
-- | The date on which the host key was added to the server.
listedHostKey_dateImported :: Lens' ListedHostKey (Maybe UTCTime)
-- | The current description for the host key. You can change it by calling
-- the UpdateHostKey operation and providing a new description.
listedHostKey_description :: Lens' ListedHostKey (Maybe Text)
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
listedHostKey_fingerprint :: Lens' ListedHostKey (Maybe Text)
-- | A unique identifier for the host key.
listedHostKey_hostKeyId :: Lens' ListedHostKey (Maybe Text)
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
listedHostKey_type :: Lens' ListedHostKey (Maybe Text)
-- | The unique Amazon Resource Name (ARN) of the host key.
listedHostKey_arn :: Lens' ListedHostKey Text
-- | Returns the properties of the profile that was specified.
--
-- See: newListedProfile smart constructor.
data ListedProfile
ListedProfile' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProfileType -> ListedProfile
-- | The Amazon Resource Name (ARN) of the specified profile.
[$sel:arn:ListedProfile'] :: ListedProfile -> Maybe Text
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
[$sel:as2Id:ListedProfile'] :: ListedProfile -> Maybe Text
-- | A unique identifier for the local or partner AS2 profile.
[$sel:profileId:ListedProfile'] :: ListedProfile -> Maybe Text
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
[$sel:profileType:ListedProfile'] :: ListedProfile -> Maybe ProfileType
-- | Create a value of ListedProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedProfile', listedProfile_arn - The Amazon
-- Resource Name (ARN) of the specified profile.
--
-- $sel:as2Id:ListedProfile', listedProfile_as2Id - The
-- As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
--
-- $sel:profileId:ListedProfile', listedProfile_profileId -
-- A unique identifier for the local or partner AS2 profile.
--
-- $sel:profileType:ListedProfile',
-- listedProfile_profileType - Indicates whether to list only
-- LOCAL type profiles or only PARTNER type profiles.
-- If not supplied in the request, the command lists all types of
-- profiles.
newListedProfile :: ListedProfile
-- | The Amazon Resource Name (ARN) of the specified profile.
listedProfile_arn :: Lens' ListedProfile (Maybe Text)
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
listedProfile_as2Id :: Lens' ListedProfile (Maybe Text)
-- | A unique identifier for the local or partner AS2 profile.
listedProfile_profileId :: Lens' ListedProfile (Maybe Text)
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
listedProfile_profileType :: Lens' ListedProfile (Maybe ProfileType)
-- | Returns properties of a file transfer protocol-enabled server that was
-- specified.
--
-- See: newListedServer smart constructor.
data ListedServer
ListedServer' :: Maybe Domain -> Maybe EndpointType -> Maybe IdentityProviderType -> Maybe Text -> Maybe Text -> Maybe State -> Maybe Int -> Text -> ListedServer
-- | Specifies the domain of the storage system that is used for file
-- transfers.
[$sel:domain:ListedServer'] :: ListedServer -> Maybe Domain
-- | Specifies the type of VPC endpoint that your server is connected to.
-- If your server is connected to a VPC endpoint, your server isn't
-- accessible over the public internet.
[$sel:endpointType:ListedServer'] :: ListedServer -> Maybe EndpointType
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
[$sel:identityProviderType:ListedServer'] :: ListedServer -> Maybe IdentityProviderType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
[$sel:loggingRole:ListedServer'] :: ListedServer -> Maybe Text
-- | Specifies the unique system assigned identifier for the servers that
-- were listed.
[$sel:serverId:ListedServer'] :: ListedServer -> Maybe Text
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
[$sel:state:ListedServer'] :: ListedServer -> Maybe State
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
[$sel:userCount:ListedServer'] :: ListedServer -> Maybe Int
-- | Specifies the unique Amazon Resource Name (ARN) for a server to be
-- listed.
[$sel:arn:ListedServer'] :: ListedServer -> Text
-- | Create a value of ListedServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:domain:ListedServer', listedServer_domain -
-- Specifies the domain of the storage system that is used for file
-- transfers.
--
-- $sel:endpointType:ListedServer',
-- listedServer_endpointType - Specifies the type of VPC endpoint
-- that your server is connected to. If your server is connected to a VPC
-- endpoint, your server isn't accessible over the public internet.
--
-- $sel:identityProviderType:ListedServer',
-- listedServer_identityProviderType - The mode of authentication
-- for a server. The default value is SERVICE_MANAGED, which
-- allows you to store and access user credentials within the Transfer
-- Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
--
-- $sel:loggingRole:ListedServer', listedServer_loggingRole
-- - The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
--
-- $sel:serverId:ListedServer', listedServer_serverId -
-- Specifies the unique system assigned identifier for the servers that
-- were listed.
--
-- $sel:state:ListedServer', listedServer_state - The
-- condition of the server that was described. A value of ONLINE
-- indicates that the server can accept jobs and transfer files. A
-- State value of OFFLINE means that the server cannot
-- perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
--
-- $sel:userCount:ListedServer', listedServer_userCount -
-- Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
--
-- $sel:arn:ListedServer', listedServer_arn - Specifies the
-- unique Amazon Resource Name (ARN) for a server to be listed.
newListedServer :: Text -> ListedServer
-- | Specifies the domain of the storage system that is used for file
-- transfers.
listedServer_domain :: Lens' ListedServer (Maybe Domain)
-- | Specifies the type of VPC endpoint that your server is connected to.
-- If your server is connected to a VPC endpoint, your server isn't
-- accessible over the public internet.
listedServer_endpointType :: Lens' ListedServer (Maybe EndpointType)
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
listedServer_identityProviderType :: Lens' ListedServer (Maybe IdentityProviderType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
listedServer_loggingRole :: Lens' ListedServer (Maybe Text)
-- | Specifies the unique system assigned identifier for the servers that
-- were listed.
listedServer_serverId :: Lens' ListedServer (Maybe Text)
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
listedServer_state :: Lens' ListedServer (Maybe State)
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
listedServer_userCount :: Lens' ListedServer (Maybe Int)
-- | Specifies the unique Amazon Resource Name (ARN) for a server to be
-- listed.
listedServer_arn :: Lens' ListedServer Text
-- | Returns properties of the user that you specify.
--
-- See: newListedUser smart constructor.
data ListedUser
ListedUser' :: Maybe Text -> Maybe HomeDirectoryType -> Maybe Text -> Maybe Int -> Maybe Text -> Text -> ListedUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:ListedUser'] :: ListedUser -> Maybe Text
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:ListedUser'] :: ListedUser -> Maybe HomeDirectoryType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
--
-- The IAM role that controls your users' access to your Amazon S3 bucket
-- for servers with Domain=S3, or your EFS file system for
-- servers with Domain=EFS.
--
-- The policies attached to this role determine the level of access you
-- want to provide your users when transferring files into and out of
-- your S3 buckets or EFS file systems.
[$sel:role':ListedUser'] :: ListedUser -> Maybe Text
-- | Specifies the number of SSH public keys stored for the user you
-- specified.
[$sel:sshPublicKeyCount:ListedUser'] :: ListedUser -> Maybe Int
-- | Specifies the name of the user whose ARN was specified. User names are
-- used for authentication purposes.
[$sel:userName:ListedUser'] :: ListedUser -> Maybe Text
-- | Provides the unique Amazon Resource Name (ARN) for the user that you
-- want to learn about.
[$sel:arn:ListedUser'] :: ListedUser -> Text
-- | Create a value of ListedUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:homeDirectory:ListedUser', listedUser_homeDirectory
-- - The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryType:ListedUser',
-- listedUser_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:role':ListedUser', listedUser_role - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that controls your users' access to your Amazon S3 bucket or Amazon
-- EFS file system. The policies attached to this role determine the
-- level of access that you want to provide your users when transferring
-- files into and out of your Amazon S3 bucket or Amazon EFS file system.
-- The IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
--
-- The IAM role that controls your users' access to your Amazon S3 bucket
-- for servers with Domain=S3, or your EFS file system for
-- servers with Domain=EFS.
--
-- The policies attached to this role determine the level of access you
-- want to provide your users when transferring files into and out of
-- your S3 buckets or EFS file systems.
--
-- $sel:sshPublicKeyCount:ListedUser',
-- listedUser_sshPublicKeyCount - Specifies the number of SSH
-- public keys stored for the user you specified.
--
-- $sel:userName:ListedUser', listedUser_userName -
-- Specifies the name of the user whose ARN was specified. User names are
-- used for authentication purposes.
--
-- $sel:arn:ListedUser', listedUser_arn - Provides the
-- unique Amazon Resource Name (ARN) for the user that you want to learn
-- about.
newListedUser :: Text -> ListedUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
listedUser_homeDirectory :: Lens' ListedUser (Maybe Text)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
listedUser_homeDirectoryType :: Lens' ListedUser (Maybe HomeDirectoryType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
--
-- The IAM role that controls your users' access to your Amazon S3 bucket
-- for servers with Domain=S3, or your EFS file system for
-- servers with Domain=EFS.
--
-- The policies attached to this role determine the level of access you
-- want to provide your users when transferring files into and out of
-- your S3 buckets or EFS file systems.
listedUser_role :: Lens' ListedUser (Maybe Text)
-- | Specifies the number of SSH public keys stored for the user you
-- specified.
listedUser_sshPublicKeyCount :: Lens' ListedUser (Maybe Int)
-- | Specifies the name of the user whose ARN was specified. User names are
-- used for authentication purposes.
listedUser_userName :: Lens' ListedUser (Maybe Text)
-- | Provides the unique Amazon Resource Name (ARN) for the user that you
-- want to learn about.
listedUser_arn :: Lens' ListedUser Text
-- | Contains the identifier, text description, and Amazon Resource Name
-- (ARN) for the workflow.
--
-- See: newListedWorkflow smart constructor.
data ListedWorkflow
ListedWorkflow' :: Maybe Text -> Maybe Text -> Maybe Text -> ListedWorkflow
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
[$sel:arn:ListedWorkflow'] :: ListedWorkflow -> Maybe Text
-- | Specifies the text description for the workflow.
[$sel:description:ListedWorkflow'] :: ListedWorkflow -> Maybe Text
-- | A unique identifier for the workflow.
[$sel:workflowId:ListedWorkflow'] :: ListedWorkflow -> Maybe Text
-- | Create a value of ListedWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedWorkflow', listedWorkflow_arn - Specifies
-- the unique Amazon Resource Name (ARN) for the workflow.
--
-- $sel:description:ListedWorkflow',
-- listedWorkflow_description - Specifies the text description for
-- the workflow.
--
-- $sel:workflowId:ListedWorkflow',
-- listedWorkflow_workflowId - A unique identifier for the
-- workflow.
newListedWorkflow :: ListedWorkflow
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
listedWorkflow_arn :: Lens' ListedWorkflow (Maybe Text)
-- | Specifies the text description for the workflow.
listedWorkflow_description :: Lens' ListedWorkflow (Maybe Text)
-- | A unique identifier for the workflow.
listedWorkflow_workflowId :: Lens' ListedWorkflow (Maybe Text)
-- | Consists of the logging role and the log group name.
--
-- See: newLoggingConfiguration smart constructor.
data LoggingConfiguration
LoggingConfiguration' :: Maybe Text -> Maybe Text -> LoggingConfiguration
-- | The name of the CloudWatch logging group for the Transfer Family
-- server to which this workflow belongs.
[$sel:logGroupName:LoggingConfiguration'] :: LoggingConfiguration -> Maybe Text
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
[$sel:loggingRole:LoggingConfiguration'] :: LoggingConfiguration -> Maybe Text
-- | Create a value of LoggingConfiguration with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:logGroupName:LoggingConfiguration',
-- loggingConfiguration_logGroupName - The name of the CloudWatch
-- logging group for the Transfer Family server to which this workflow
-- belongs.
--
-- $sel:loggingRole:LoggingConfiguration',
-- loggingConfiguration_loggingRole - The Amazon Resource Name
-- (ARN) of the Identity and Access Management (IAM) role that allows a
-- server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon
-- EFSevents. When set, you can view user activity in your CloudWatch
-- logs.
newLoggingConfiguration :: LoggingConfiguration
-- | The name of the CloudWatch logging group for the Transfer Family
-- server to which this workflow belongs.
loggingConfiguration_logGroupName :: Lens' LoggingConfiguration (Maybe Text)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
loggingConfiguration_loggingRole :: Lens' LoggingConfiguration (Maybe Text)
-- | The full POSIX identity, including user ID (Uid), group ID
-- (Gid), and any secondary groups IDs (SecondaryGids),
-- that controls your users' access to your Amazon EFS file systems. The
-- POSIX permissions that are set on files and directories in your file
-- system determine the level of access your users get when transferring
-- files into and out of your Amazon EFS file systems.
--
-- See: newPosixProfile smart constructor.
data PosixProfile
PosixProfile' :: Maybe [Natural] -> Natural -> Natural -> PosixProfile
-- | The secondary POSIX group IDs used for all EFS operations by this
-- user.
[$sel:secondaryGids:PosixProfile'] :: PosixProfile -> Maybe [Natural]
-- | The POSIX user ID used for all EFS operations by this user.
[$sel:uid:PosixProfile'] :: PosixProfile -> Natural
-- | The POSIX group ID used for all EFS operations by this user.
[$sel:gid:PosixProfile'] :: PosixProfile -> Natural
-- | Create a value of PosixProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:secondaryGids:PosixProfile',
-- posixProfile_secondaryGids - The secondary POSIX group IDs used
-- for all EFS operations by this user.
--
-- $sel:uid:PosixProfile', posixProfile_uid - The POSIX
-- user ID used for all EFS operations by this user.
--
-- $sel:gid:PosixProfile', posixProfile_gid - The POSIX
-- group ID used for all EFS operations by this user.
newPosixProfile :: Natural -> Natural -> PosixProfile
-- | The secondary POSIX group IDs used for all EFS operations by this
-- user.
posixProfile_secondaryGids :: Lens' PosixProfile (Maybe [Natural])
-- | The POSIX user ID used for all EFS operations by this user.
posixProfile_uid :: Lens' PosixProfile Natural
-- | The POSIX group ID used for all EFS operations by this user.
posixProfile_gid :: Lens' PosixProfile Natural
-- | The protocol settings that are configured for your server.
--
-- See: newProtocolDetails smart constructor.
data ProtocolDetails
ProtocolDetails' :: Maybe (NonEmpty As2Transport) -> Maybe Text -> Maybe SetStatOption -> Maybe TlsSessionResumptionMode -> ProtocolDetails
-- | Indicates the transport method for the AS2 messages. Currently, only
-- HTTP is supported.
[$sel:as2Transports:ProtocolDetails'] :: ProtocolDetails -> Maybe (NonEmpty As2Transport)
-- | Indicates passive mode, for FTP and FTPS protocols. Enter a single
-- IPv4 address, such as the public IP address of a firewall, router, or
-- load balancer. For example:
--
--
-- aws transfer update-server --protocol-details PassiveIp=0.0.0.0
--
--
-- Replace 0.0.0.0 in the example above with the actual IP
-- address you want to use.
--
-- If you change the PassiveIp value, you must stop and then
-- restart your Transfer Family server for the change to take effect. For
-- details on using passive mode (PASV) in a NAT environment, see
-- Configuring your FTPS server behind a firewall or NAT with Transfer
-- Family.
--
-- Special values
--
-- The AUTO and 0.0.0.0 are special values for the
-- PassiveIp parameter. The value PassiveIp=AUTO is
-- assigned by default to FTP and FTPS type servers. In this case, the
-- server automatically responds with one of the endpoint IPs within the
-- PASV response. PassiveIp=0.0.0.0 has a more unique
-- application for its usage. For example, if you have a High
-- Availability (HA) Network Load Balancer (NLB) environment, where you
-- have 3 subnets, you can only specify a single IP address using the
-- PassiveIp parameter. This reduces the effectiveness of having
-- High Availability. In this case, you can specify
-- PassiveIp=0.0.0.0. This tells the client to use the same IP
-- address as the Control connection and utilize all AZs for their
-- connections. Note, however, that not all FTP clients support the
-- PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support
-- it. If you are using other clients, check to see if your client
-- supports the PassiveIp=0.0.0.0 response.
[$sel:passiveIp:ProtocolDetails'] :: ProtocolDetails -> Maybe Text
-- | Use the SetStatOption to ignore the error that is generated
-- when the client attempts to use SETSTAT on a file you are
-- uploading to an S3 bucket.
--
-- Some SFTP file transfer clients can attempt to change the attributes
-- of remote files, including timestamp and permissions, using commands,
-- such as SETSTAT when uploading the file. However, these
-- commands are not compatible with object storage systems, such as
-- Amazon S3. Due to this incompatibility, file uploads from these
-- clients can result in errors even when the file is otherwise
-- successfully uploaded.
--
-- Set the value to ENABLE_NO_OP to have the Transfer Family
-- server ignore the SETSTAT command, and upload files without
-- needing to make any changes to your SFTP client. While the
-- SetStatOption ENABLE_NO_OP setting ignores the
-- error, it does generate a log entry in Amazon CloudWatch Logs, so you
-- can determine when the client is making a SETSTAT call.
--
-- If you want to preserve the original timestamp for your file, and
-- modify other file attributes using SETSTAT, you can use
-- Amazon EFS as backend storage with Transfer Family.
[$sel:setStatOption:ProtocolDetails'] :: ProtocolDetails -> Maybe SetStatOption
-- | A property used with Transfer Family servers that use the FTPS
-- protocol. TLS Session Resumption provides a mechanism to resume or
-- share a negotiated secret key between the control and data connection
-- for an FTPS session. TlsSessionResumptionMode determines
-- whether or not the server resumes recent, negotiated sessions through
-- a unique session ID. This property is available during
-- CreateServer and UpdateServer calls. If a
-- TlsSessionResumptionMode value is not specified during
-- CreateServer, it is set to ENFORCED by default.
--
--
-- - DISABLED: the server does not process TLS session
-- resumption client requests and creates a new TLS session for each
-- request.
-- - ENABLED: the server processes and accepts clients that
-- are performing TLS session resumption. The server doesn't reject
-- client data connections that do not perform the TLS session resumption
-- client processing.
-- - ENFORCED: the server processes and accepts clients that
-- are performing TLS session resumption. The server rejects client data
-- connections that do not perform the TLS session resumption client
-- processing. Before you set the value to ENFORCED, test your
-- clients.Not all FTPS clients perform TLS session resumption. So, if
-- you choose to enforce TLS session resumption, you prevent any
-- connections from FTPS clients that don't perform the protocol
-- negotiation. To determine whether or not you can use the
-- ENFORCED value, you need to test your clients.
--
[$sel:tlsSessionResumptionMode:ProtocolDetails'] :: ProtocolDetails -> Maybe TlsSessionResumptionMode
-- | Create a value of ProtocolDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:as2Transports:ProtocolDetails',
-- protocolDetails_as2Transports - Indicates the transport method
-- for the AS2 messages. Currently, only HTTP is supported.
--
-- $sel:passiveIp:ProtocolDetails',
-- protocolDetails_passiveIp - Indicates passive mode, for FTP and
-- FTPS protocols. Enter a single IPv4 address, such as the public IP
-- address of a firewall, router, or load balancer. For example:
--
--
-- aws transfer update-server --protocol-details PassiveIp=0.0.0.0
--
--
-- Replace 0.0.0.0 in the example above with the actual IP
-- address you want to use.
--
-- If you change the PassiveIp value, you must stop and then
-- restart your Transfer Family server for the change to take effect. For
-- details on using passive mode (PASV) in a NAT environment, see
-- Configuring your FTPS server behind a firewall or NAT with Transfer
-- Family.
--
-- Special values
--
-- The AUTO and 0.0.0.0 are special values for the
-- PassiveIp parameter. The value PassiveIp=AUTO is
-- assigned by default to FTP and FTPS type servers. In this case, the
-- server automatically responds with one of the endpoint IPs within the
-- PASV response. PassiveIp=0.0.0.0 has a more unique
-- application for its usage. For example, if you have a High
-- Availability (HA) Network Load Balancer (NLB) environment, where you
-- have 3 subnets, you can only specify a single IP address using the
-- PassiveIp parameter. This reduces the effectiveness of having
-- High Availability. In this case, you can specify
-- PassiveIp=0.0.0.0. This tells the client to use the same IP
-- address as the Control connection and utilize all AZs for their
-- connections. Note, however, that not all FTP clients support the
-- PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support
-- it. If you are using other clients, check to see if your client
-- supports the PassiveIp=0.0.0.0 response.
--
-- $sel:setStatOption:ProtocolDetails',
-- protocolDetails_setStatOption - Use the SetStatOption
-- to ignore the error that is generated when the client attempts to use
-- SETSTAT on a file you are uploading to an S3 bucket.
--
-- Some SFTP file transfer clients can attempt to change the attributes
-- of remote files, including timestamp and permissions, using commands,
-- such as SETSTAT when uploading the file. However, these
-- commands are not compatible with object storage systems, such as
-- Amazon S3. Due to this incompatibility, file uploads from these
-- clients can result in errors even when the file is otherwise
-- successfully uploaded.
--
-- Set the value to ENABLE_NO_OP to have the Transfer Family
-- server ignore the SETSTAT command, and upload files without
-- needing to make any changes to your SFTP client. While the
-- SetStatOption ENABLE_NO_OP setting ignores the
-- error, it does generate a log entry in Amazon CloudWatch Logs, so you
-- can determine when the client is making a SETSTAT call.
--
-- If you want to preserve the original timestamp for your file, and
-- modify other file attributes using SETSTAT, you can use
-- Amazon EFS as backend storage with Transfer Family.
--
-- $sel:tlsSessionResumptionMode:ProtocolDetails',
-- protocolDetails_tlsSessionResumptionMode - A property used with
-- Transfer Family servers that use the FTPS protocol. TLS Session
-- Resumption provides a mechanism to resume or share a negotiated secret
-- key between the control and data connection for an FTPS session.
-- TlsSessionResumptionMode determines whether or not the server
-- resumes recent, negotiated sessions through a unique session ID. This
-- property is available during CreateServer and
-- UpdateServer calls. If a TlsSessionResumptionMode
-- value is not specified during CreateServer, it is set to
-- ENFORCED by default.
--
--
-- - DISABLED: the server does not process TLS session
-- resumption client requests and creates a new TLS session for each
-- request.
-- - ENABLED: the server processes and accepts clients that
-- are performing TLS session resumption. The server doesn't reject
-- client data connections that do not perform the TLS session resumption
-- client processing.
-- - ENFORCED: the server processes and accepts clients that
-- are performing TLS session resumption. The server rejects client data
-- connections that do not perform the TLS session resumption client
-- processing. Before you set the value to ENFORCED, test your
-- clients.Not all FTPS clients perform TLS session resumption. So, if
-- you choose to enforce TLS session resumption, you prevent any
-- connections from FTPS clients that don't perform the protocol
-- negotiation. To determine whether or not you can use the
-- ENFORCED value, you need to test your clients.
--
newProtocolDetails :: ProtocolDetails
-- | Indicates the transport method for the AS2 messages. Currently, only
-- HTTP is supported.
protocolDetails_as2Transports :: Lens' ProtocolDetails (Maybe (NonEmpty As2Transport))
-- | Indicates passive mode, for FTP and FTPS protocols. Enter a single
-- IPv4 address, such as the public IP address of a firewall, router, or
-- load balancer. For example:
--
--
-- aws transfer update-server --protocol-details PassiveIp=0.0.0.0
--
--
-- Replace 0.0.0.0 in the example above with the actual IP
-- address you want to use.
--
-- If you change the PassiveIp value, you must stop and then
-- restart your Transfer Family server for the change to take effect. For
-- details on using passive mode (PASV) in a NAT environment, see
-- Configuring your FTPS server behind a firewall or NAT with Transfer
-- Family.
--
-- Special values
--
-- The AUTO and 0.0.0.0 are special values for the
-- PassiveIp parameter. The value PassiveIp=AUTO is
-- assigned by default to FTP and FTPS type servers. In this case, the
-- server automatically responds with one of the endpoint IPs within the
-- PASV response. PassiveIp=0.0.0.0 has a more unique
-- application for its usage. For example, if you have a High
-- Availability (HA) Network Load Balancer (NLB) environment, where you
-- have 3 subnets, you can only specify a single IP address using the
-- PassiveIp parameter. This reduces the effectiveness of having
-- High Availability. In this case, you can specify
-- PassiveIp=0.0.0.0. This tells the client to use the same IP
-- address as the Control connection and utilize all AZs for their
-- connections. Note, however, that not all FTP clients support the
-- PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support
-- it. If you are using other clients, check to see if your client
-- supports the PassiveIp=0.0.0.0 response.
protocolDetails_passiveIp :: Lens' ProtocolDetails (Maybe Text)
-- | Use the SetStatOption to ignore the error that is generated
-- when the client attempts to use SETSTAT on a file you are
-- uploading to an S3 bucket.
--
-- Some SFTP file transfer clients can attempt to change the attributes
-- of remote files, including timestamp and permissions, using commands,
-- such as SETSTAT when uploading the file. However, these
-- commands are not compatible with object storage systems, such as
-- Amazon S3. Due to this incompatibility, file uploads from these
-- clients can result in errors even when the file is otherwise
-- successfully uploaded.
--
-- Set the value to ENABLE_NO_OP to have the Transfer Family
-- server ignore the SETSTAT command, and upload files without
-- needing to make any changes to your SFTP client. While the
-- SetStatOption ENABLE_NO_OP setting ignores the
-- error, it does generate a log entry in Amazon CloudWatch Logs, so you
-- can determine when the client is making a SETSTAT call.
--
-- If you want to preserve the original timestamp for your file, and
-- modify other file attributes using SETSTAT, you can use
-- Amazon EFS as backend storage with Transfer Family.
protocolDetails_setStatOption :: Lens' ProtocolDetails (Maybe SetStatOption)
-- | A property used with Transfer Family servers that use the FTPS
-- protocol. TLS Session Resumption provides a mechanism to resume or
-- share a negotiated secret key between the control and data connection
-- for an FTPS session. TlsSessionResumptionMode determines
-- whether or not the server resumes recent, negotiated sessions through
-- a unique session ID. This property is available during
-- CreateServer and UpdateServer calls. If a
-- TlsSessionResumptionMode value is not specified during
-- CreateServer, it is set to ENFORCED by default.
--
--
-- - DISABLED: the server does not process TLS session
-- resumption client requests and creates a new TLS session for each
-- request.
-- - ENABLED: the server processes and accepts clients that
-- are performing TLS session resumption. The server doesn't reject
-- client data connections that do not perform the TLS session resumption
-- client processing.
-- - ENFORCED: the server processes and accepts clients that
-- are performing TLS session resumption. The server rejects client data
-- connections that do not perform the TLS session resumption client
-- processing. Before you set the value to ENFORCED, test your
-- clients.Not all FTPS clients perform TLS session resumption. So, if
-- you choose to enforce TLS session resumption, you prevent any
-- connections from FTPS clients that don't perform the protocol
-- negotiation. To determine whether or not you can use the
-- ENFORCED value, you need to test your clients.
--
protocolDetails_tlsSessionResumptionMode :: Lens' ProtocolDetails (Maybe TlsSessionResumptionMode)
-- | Specifies the details for the file location for the file that's being
-- used in the workflow. Only applicable if you are using S3 storage.
--
-- See: newS3FileLocation smart constructor.
data S3FileLocation
S3FileLocation' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> S3FileLocation
-- | Specifies the S3 bucket that contains the file being used.
[$sel:bucket:S3FileLocation'] :: S3FileLocation -> Maybe Text
-- | The entity tag is a hash of the object. The ETag reflects changes only
-- to the contents of an object, not its metadata.
[$sel:etag:S3FileLocation'] :: S3FileLocation -> Maybe Text
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
[$sel:key:S3FileLocation'] :: S3FileLocation -> Maybe Text
-- | Specifies the file version.
[$sel:versionId:S3FileLocation'] :: S3FileLocation -> Maybe Text
-- | Create a value of S3FileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:bucket:S3FileLocation', s3FileLocation_bucket -
-- Specifies the S3 bucket that contains the file being used.
--
-- $sel:etag:S3FileLocation', s3FileLocation_etag - The
-- entity tag is a hash of the object. The ETag reflects changes only to
-- the contents of an object, not its metadata.
--
-- $sel:key:S3FileLocation', s3FileLocation_key - The name
-- assigned to the file when it was created in Amazon S3. You use the
-- object key to retrieve the object.
--
-- $sel:versionId:S3FileLocation', s3FileLocation_versionId
-- - Specifies the file version.
newS3FileLocation :: S3FileLocation
-- | Specifies the S3 bucket that contains the file being used.
s3FileLocation_bucket :: Lens' S3FileLocation (Maybe Text)
-- | The entity tag is a hash of the object. The ETag reflects changes only
-- to the contents of an object, not its metadata.
s3FileLocation_etag :: Lens' S3FileLocation (Maybe Text)
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
s3FileLocation_key :: Lens' S3FileLocation (Maybe Text)
-- | Specifies the file version.
s3FileLocation_versionId :: Lens' S3FileLocation (Maybe Text)
-- | Specifies the customer input S3 file location. If it is used inside
-- copyStepDetails.DestinationFileLocation, it should be the S3
-- copy destination.
--
-- You need to provide the bucket and key. The key can represent either a
-- path or a file. This is determined by whether or not you end the key
-- value with the forward slash (/) character. If the final character is
-- "/", then your file is copied to the folder, and its name does not
-- change. If, rather, the final character is alphanumeric, your uploaded
-- file is renamed to the path value. In this case, if a file with that
-- name already exists, it is overwritten.
--
-- For example, if your path is shared-files/bob/, your uploaded
-- files are copied to the shared-files/bob/, folder. If your
-- path is shared-files/today, each uploaded file is copied to
-- the shared-files folder and named today: each upload
-- overwrites the previous version of the bob file.
--
-- See: newS3InputFileLocation smart constructor.
data S3InputFileLocation
S3InputFileLocation' :: Maybe Text -> Maybe Text -> S3InputFileLocation
-- | Specifies the S3 bucket for the customer input file.
[$sel:bucket:S3InputFileLocation'] :: S3InputFileLocation -> Maybe Text
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
[$sel:key:S3InputFileLocation'] :: S3InputFileLocation -> Maybe Text
-- | Create a value of S3InputFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:bucket:S3InputFileLocation',
-- s3InputFileLocation_bucket - Specifies the S3 bucket for the
-- customer input file.
--
-- $sel:key:S3InputFileLocation', s3InputFileLocation_key -
-- The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
newS3InputFileLocation :: S3InputFileLocation
-- | Specifies the S3 bucket for the customer input file.
s3InputFileLocation_bucket :: Lens' S3InputFileLocation (Maybe Text)
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
s3InputFileLocation_key :: Lens' S3InputFileLocation (Maybe Text)
-- | Specifies the key-value pair that are assigned to a file during the
-- execution of a Tagging step.
--
-- See: newS3Tag smart constructor.
data S3Tag
S3Tag' :: Text -> Text -> S3Tag
-- | The name assigned to the tag that you create.
[$sel:key:S3Tag'] :: S3Tag -> Text
-- | The value that corresponds to the key.
[$sel:value:S3Tag'] :: S3Tag -> Text
-- | Create a value of S3Tag with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:key:S3Tag', s3Tag_key - The name assigned to the
-- tag that you create.
--
-- $sel:value:S3Tag', s3Tag_value - The value that
-- corresponds to the key.
newS3Tag :: Text -> Text -> S3Tag
-- | The name assigned to the tag that you create.
s3Tag_key :: Lens' S3Tag Text
-- | The value that corresponds to the key.
s3Tag_value :: Lens' S3Tag Text
-- | A container object for the session details that are associated with a
-- workflow.
--
-- See: newServiceMetadata smart constructor.
data ServiceMetadata
ServiceMetadata' :: UserDetails -> ServiceMetadata
-- | The Server ID (ServerId), Session ID (SessionId) and
-- user (UserName) make up the UserDetails.
[$sel:userDetails:ServiceMetadata'] :: ServiceMetadata -> UserDetails
-- | Create a value of ServiceMetadata with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:userDetails:ServiceMetadata',
-- serviceMetadata_userDetails - The Server ID
-- (ServerId), Session ID (SessionId) and user
-- (UserName) make up the UserDetails.
newServiceMetadata :: UserDetails -> ServiceMetadata
-- | The Server ID (ServerId), Session ID (SessionId) and
-- user (UserName) make up the UserDetails.
serviceMetadata_userDetails :: Lens' ServiceMetadata UserDetails
-- | Provides information about the public Secure Shell (SSH) key that is
-- associated with a user account for the specific file transfer
-- protocol-enabled server (as identified by ServerId). The
-- information returned includes the date the key was imported, the
-- public key contents, and the public key ID. A user can store more than
-- one SSH public key associated with their user name on a specific
-- server.
--
-- See: newSshPublicKey smart constructor.
data SshPublicKey
SshPublicKey' :: POSIX -> Text -> Text -> SshPublicKey
-- | Specifies the date that the public key was added to the user account.
[$sel:dateImported:SshPublicKey'] :: SshPublicKey -> POSIX
-- | Specifies the content of the SSH public key as specified by the
-- PublicKeyId.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
[$sel:sshPublicKeyBody:SshPublicKey'] :: SshPublicKey -> Text
-- | Specifies the SshPublicKeyId parameter contains the
-- identifier of the public key.
[$sel:sshPublicKeyId:SshPublicKey'] :: SshPublicKey -> Text
-- | Create a value of SshPublicKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:SshPublicKey',
-- sshPublicKey_dateImported - Specifies the date that the public
-- key was added to the user account.
--
-- $sel:sshPublicKeyBody:SshPublicKey',
-- sshPublicKey_sshPublicKeyBody - Specifies the content of the
-- SSH public key as specified by the PublicKeyId.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
--
-- $sel:sshPublicKeyId:SshPublicKey',
-- sshPublicKey_sshPublicKeyId - Specifies the
-- SshPublicKeyId parameter contains the identifier of the
-- public key.
newSshPublicKey :: UTCTime -> Text -> Text -> SshPublicKey
-- | Specifies the date that the public key was added to the user account.
sshPublicKey_dateImported :: Lens' SshPublicKey UTCTime
-- | Specifies the content of the SSH public key as specified by the
-- PublicKeyId.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
sshPublicKey_sshPublicKeyBody :: Lens' SshPublicKey Text
-- | Specifies the SshPublicKeyId parameter contains the
-- identifier of the public key.
sshPublicKey_sshPublicKeyId :: Lens' SshPublicKey Text
-- | Creates a key-value pair for a specific resource. Tags are metadata
-- that you can use to search for and group a resource for various
-- purposes. You can apply tags to servers, users, and roles. A tag key
-- can take more than one value. For example, to group servers for
-- accounting purposes, you might create a tag called Group and
-- assign the values Research and Accounting to that
-- group.
--
-- See: newTag smart constructor.
data Tag
Tag' :: Text -> Text -> Tag
-- | The name assigned to the tag that you create.
[$sel:key:Tag'] :: Tag -> Text
-- | Contains one or more values that you assigned to the key name you
-- create.
[$sel:value:Tag'] :: Tag -> Text
-- | Create a value of Tag with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:key:Tag', tag_key - The name assigned to the tag
-- that you create.
--
-- $sel:value:Tag', tag_value - Contains one or more values
-- that you assigned to the key name you create.
newTag :: Text -> Text -> Tag
-- | The name assigned to the tag that you create.
tag_key :: Lens' Tag Text
-- | Contains one or more values that you assigned to the key name you
-- create.
tag_value :: Lens' Tag Text
-- | Each step type has its own StepDetails structure.
--
-- The key/value pairs used to tag a file during the execution of a
-- workflow step.
--
-- See: newTagStepDetails smart constructor.
data TagStepDetails
TagStepDetails' :: Maybe Text -> Maybe Text -> Maybe (NonEmpty S3Tag) -> TagStepDetails
-- | The name of the step, used as an identifier.
[$sel:name:TagStepDetails'] :: TagStepDetails -> Maybe Text
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
[$sel:sourceFileLocation:TagStepDetails'] :: TagStepDetails -> Maybe Text
-- | Array that contains from 1 to 10 key/value pairs.
[$sel:tags:TagStepDetails'] :: TagStepDetails -> Maybe (NonEmpty S3Tag)
-- | Create a value of TagStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:TagStepDetails', tagStepDetails_name - The
-- name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:TagStepDetails',
-- tagStepDetails_sourceFileLocation - Specifies which file to use
-- as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
--
-- $sel:tags:TagStepDetails', tagStepDetails_tags - Array
-- that contains from 1 to 10 key/value pairs.
newTagStepDetails :: TagStepDetails
-- | The name of the step, used as an identifier.
tagStepDetails_name :: Lens' TagStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
tagStepDetails_sourceFileLocation :: Lens' TagStepDetails (Maybe Text)
-- | Array that contains from 1 to 10 key/value pairs.
tagStepDetails_tags :: Lens' TagStepDetails (Maybe (NonEmpty S3Tag))
-- | Specifies the user name, server ID, and session ID for a workflow.
--
-- See: newUserDetails smart constructor.
data UserDetails
UserDetails' :: Maybe Text -> Text -> Text -> UserDetails
-- | The system-assigned unique identifier for a session that corresponds
-- to the workflow.
[$sel:sessionId:UserDetails'] :: UserDetails -> Maybe Text
-- | A unique string that identifies a user account associated with a
-- server.
[$sel:userName:UserDetails'] :: UserDetails -> Text
-- | The system-assigned unique identifier for a Transfer server instance.
[$sel:serverId:UserDetails'] :: UserDetails -> Text
-- | Create a value of UserDetails with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:sessionId:UserDetails', userDetails_sessionId - The
-- system-assigned unique identifier for a session that corresponds to
-- the workflow.
--
-- $sel:userName:UserDetails', userDetails_userName - A
-- unique string that identifies a user account associated with a server.
--
-- $sel:serverId:UserDetails', userDetails_serverId - The
-- system-assigned unique identifier for a Transfer server instance.
newUserDetails :: Text -> Text -> UserDetails
-- | The system-assigned unique identifier for a session that corresponds
-- to the workflow.
userDetails_sessionId :: Lens' UserDetails (Maybe Text)
-- | A unique string that identifies a user account associated with a
-- server.
userDetails_userName :: Lens' UserDetails Text
-- | The system-assigned unique identifier for a Transfer server instance.
userDetails_serverId :: Lens' UserDetails Text
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- See: newWorkflowDetail smart constructor.
data WorkflowDetail
WorkflowDetail' :: Text -> Text -> WorkflowDetail
-- | A unique identifier for the workflow.
[$sel:workflowId:WorkflowDetail'] :: WorkflowDetail -> Text
-- | Includes the necessary permissions for S3, EFS, and Lambda operations
-- that Transfer can assume, so that all workflow steps can operate on
-- the required resources
[$sel:executionRole:WorkflowDetail'] :: WorkflowDetail -> Text
-- | Create a value of WorkflowDetail with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:workflowId:WorkflowDetail',
-- workflowDetail_workflowId - A unique identifier for the
-- workflow.
--
-- $sel:executionRole:WorkflowDetail',
-- workflowDetail_executionRole - Includes the necessary
-- permissions for S3, EFS, and Lambda operations that Transfer can
-- assume, so that all workflow steps can operate on the required
-- resources
newWorkflowDetail :: Text -> Text -> WorkflowDetail
-- | A unique identifier for the workflow.
workflowDetail_workflowId :: Lens' WorkflowDetail Text
-- | Includes the necessary permissions for S3, EFS, and Lambda operations
-- that Transfer can assume, so that all workflow steps can operate on
-- the required resources
workflowDetail_executionRole :: Lens' WorkflowDetail Text
-- | Container for the WorkflowDetail data type. It is used by
-- actions that trigger a workflow to begin execution.
--
-- See: newWorkflowDetails smart constructor.
data WorkflowDetails
WorkflowDetails' :: Maybe [WorkflowDetail] -> Maybe [WorkflowDetail] -> WorkflowDetails
-- | A trigger that starts a workflow if a file is only partially uploaded.
-- You can attach a workflow to a server that executes whenever there is
-- a partial upload.
--
-- A partial upload occurs when a file is open when the session
-- disconnects.
[$sel:onPartialUpload:WorkflowDetails'] :: WorkflowDetails -> Maybe [WorkflowDetail]
-- | A trigger that starts a workflow: the workflow begins to execute after
-- a file is uploaded.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
[$sel:onUpload:WorkflowDetails'] :: WorkflowDetails -> Maybe [WorkflowDetail]
-- | Create a value of WorkflowDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:onPartialUpload:WorkflowDetails',
-- workflowDetails_onPartialUpload - A trigger that starts a
-- workflow if a file is only partially uploaded. You can attach a
-- workflow to a server that executes whenever there is a partial upload.
--
-- A partial upload occurs when a file is open when the session
-- disconnects.
--
-- $sel:onUpload:WorkflowDetails', workflowDetails_onUpload
-- - A trigger that starts a workflow: the workflow begins to execute
-- after a file is uploaded.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
newWorkflowDetails :: WorkflowDetails
-- | A trigger that starts a workflow if a file is only partially uploaded.
-- You can attach a workflow to a server that executes whenever there is
-- a partial upload.
--
-- A partial upload occurs when a file is open when the session
-- disconnects.
workflowDetails_onPartialUpload :: Lens' WorkflowDetails (Maybe [WorkflowDetail])
-- | A trigger that starts a workflow: the workflow begins to execute after
-- a file is uploaded.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
workflowDetails_onUpload :: Lens' WorkflowDetails (Maybe [WorkflowDetail])
-- | The basic building block of a workflow.
--
-- See: newWorkflowStep smart constructor.
data WorkflowStep
WorkflowStep' :: Maybe CopyStepDetails -> Maybe CustomStepDetails -> Maybe DecryptStepDetails -> Maybe DeleteStepDetails -> Maybe TagStepDetails -> Maybe WorkflowStepType -> WorkflowStep
-- | Details for a step that performs a file copy.
--
-- Consists of the following values:
--
--
-- - A description
-- - An S3 location for the destination of the file copy.
-- - A flag that indicates whether or not to overwrite an existing file
-- of the same name. The default is FALSE.
--
[$sel:copyStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe CopyStepDetails
-- | Details for a step that invokes a lambda function.
--
-- Consists of the lambda function name, target, and timeout (in
-- seconds).
[$sel:customStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe CustomStepDetails
[$sel:decryptStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe DecryptStepDetails
-- | Details for a step that deletes the file.
[$sel:deleteStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe DeleteStepDetails
-- | Details for a step that creates one or more tags.
--
-- You specify one or more tags: each tag contains a key/value pair.
[$sel:tagStepDetails:WorkflowStep'] :: WorkflowStep -> Maybe TagStepDetails
-- | Currently, the following step types are supported.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
[$sel:type':WorkflowStep'] :: WorkflowStep -> Maybe WorkflowStepType
-- | Create a value of WorkflowStep with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:copyStepDetails:WorkflowStep',
-- workflowStep_copyStepDetails - Details for a step that performs
-- a file copy.
--
-- Consists of the following values:
--
--
-- - A description
-- - An S3 location for the destination of the file copy.
-- - A flag that indicates whether or not to overwrite an existing file
-- of the same name. The default is FALSE.
--
--
-- $sel:customStepDetails:WorkflowStep',
-- workflowStep_customStepDetails - Details for a step that
-- invokes a lambda function.
--
-- Consists of the lambda function name, target, and timeout (in
-- seconds).
--
-- $sel:decryptStepDetails:WorkflowStep',
-- workflowStep_decryptStepDetails - Undocumented member.
--
-- $sel:deleteStepDetails:WorkflowStep',
-- workflowStep_deleteStepDetails - Details for a step that
-- deletes the file.
--
-- $sel:tagStepDetails:WorkflowStep',
-- workflowStep_tagStepDetails - Details for a step that creates
-- one or more tags.
--
-- You specify one or more tags: each tag contains a key/value pair.
--
-- WorkflowStep, workflowStep_type - Currently, the
-- following step types are supported.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
newWorkflowStep :: WorkflowStep
-- | Details for a step that performs a file copy.
--
-- Consists of the following values:
--
--
-- - A description
-- - An S3 location for the destination of the file copy.
-- - A flag that indicates whether or not to overwrite an existing file
-- of the same name. The default is FALSE.
--
workflowStep_copyStepDetails :: Lens' WorkflowStep (Maybe CopyStepDetails)
-- | Details for a step that invokes a lambda function.
--
-- Consists of the lambda function name, target, and timeout (in
-- seconds).
workflowStep_customStepDetails :: Lens' WorkflowStep (Maybe CustomStepDetails)
-- | Undocumented member.
workflowStep_decryptStepDetails :: Lens' WorkflowStep (Maybe DecryptStepDetails)
-- | Details for a step that deletes the file.
workflowStep_deleteStepDetails :: Lens' WorkflowStep (Maybe DeleteStepDetails)
-- | Details for a step that creates one or more tags.
--
-- You specify one or more tags: each tag contains a key/value pair.
workflowStep_tagStepDetails :: Lens' WorkflowStep (Maybe TagStepDetails)
-- | Currently, the following step types are supported.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
workflowStep_type :: Lens' WorkflowStep (Maybe WorkflowStepType)
-- | If the IdentityProviderType of a file transfer
-- protocol-enabled server is AWS_DIRECTORY_SERVICE or
-- API_Gateway, tests whether your identity provider is set up
-- successfully. We highly recommend that you call this operation to test
-- your authentication method as soon as you create your server. By doing
-- so, you can troubleshoot issues with the identity provider integration
-- to ensure that your users can successfully use the service.
--
-- The ServerId and UserName parameters are required.
-- The ServerProtocol, SourceIp, and
-- UserPassword are all optional.
--
-- You cannot use TestIdentityProvider if the
-- IdentityProviderType of your server is
-- SERVICE_MANAGED.
--
--
module Amazonka.Transfer.TestIdentityProvider
-- | See: newTestIdentityProvider smart constructor.
data TestIdentityProvider
TestIdentityProvider' :: Maybe Protocol -> Maybe Text -> Maybe (Sensitive Text) -> Text -> Text -> TestIdentityProvider
-- | The type of file transfer protocol to be tested.
--
-- The available protocols are:
--
--
-- - Secure Shell (SSH) File Transfer Protocol (SFTP)
-- - File Transfer Protocol Secure (FTPS)
-- - File Transfer Protocol (FTP)
--
[$sel:serverProtocol:TestIdentityProvider'] :: TestIdentityProvider -> Maybe Protocol
-- | The source IP address of the user account to be tested.
[$sel:sourceIp:TestIdentityProvider'] :: TestIdentityProvider -> Maybe Text
-- | The password of the user account to be tested.
[$sel:userPassword:TestIdentityProvider'] :: TestIdentityProvider -> Maybe (Sensitive Text)
-- | A system-assigned identifier for a specific server. That server's user
-- authentication method is tested with a user name and password.
[$sel:serverId:TestIdentityProvider'] :: TestIdentityProvider -> Text
-- | The name of the user account to be tested.
[$sel:userName:TestIdentityProvider'] :: TestIdentityProvider -> Text
-- | Create a value of TestIdentityProvider with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:serverProtocol:TestIdentityProvider',
-- testIdentityProvider_serverProtocol - The type of file transfer
-- protocol to be tested.
--
-- The available protocols are:
--
--
-- - Secure Shell (SSH) File Transfer Protocol (SFTP)
-- - File Transfer Protocol Secure (FTPS)
-- - File Transfer Protocol (FTP)
--
--
-- $sel:sourceIp:TestIdentityProvider',
-- testIdentityProvider_sourceIp - The source IP address of the
-- user account to be tested.
--
-- $sel:userPassword:TestIdentityProvider',
-- testIdentityProvider_userPassword - The password of the user
-- account to be tested.
--
-- TestIdentityProvider, testIdentityProvider_serverId - A
-- system-assigned identifier for a specific server. That server's user
-- authentication method is tested with a user name and password.
--
-- TestIdentityProvider, testIdentityProvider_userName -
-- The name of the user account to be tested.
newTestIdentityProvider :: Text -> Text -> TestIdentityProvider
-- | The type of file transfer protocol to be tested.
--
-- The available protocols are:
--
--
-- - Secure Shell (SSH) File Transfer Protocol (SFTP)
-- - File Transfer Protocol Secure (FTPS)
-- - File Transfer Protocol (FTP)
--
testIdentityProvider_serverProtocol :: Lens' TestIdentityProvider (Maybe Protocol)
-- | The source IP address of the user account to be tested.
testIdentityProvider_sourceIp :: Lens' TestIdentityProvider (Maybe Text)
-- | The password of the user account to be tested.
testIdentityProvider_userPassword :: Lens' TestIdentityProvider (Maybe Text)
-- | A system-assigned identifier for a specific server. That server's user
-- authentication method is tested with a user name and password.
testIdentityProvider_serverId :: Lens' TestIdentityProvider Text
-- | The name of the user account to be tested.
testIdentityProvider_userName :: Lens' TestIdentityProvider Text
-- | See: newTestIdentityProviderResponse smart constructor.
data TestIdentityProviderResponse
TestIdentityProviderResponse' :: Maybe Text -> Maybe Text -> Int -> Int -> Text -> TestIdentityProviderResponse
-- | A message that indicates whether the test was successful or not.
--
-- If an empty string is returned, the most likely cause is that the
-- authentication failed due to an incorrect username or password.
[$sel:message:TestIdentityProviderResponse'] :: TestIdentityProviderResponse -> Maybe Text
-- | The response that is returned from your API Gateway.
[$sel:response:TestIdentityProviderResponse'] :: TestIdentityProviderResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:TestIdentityProviderResponse'] :: TestIdentityProviderResponse -> Int
-- | The HTTP status code that is the response from your API Gateway.
[$sel:statusCode:TestIdentityProviderResponse'] :: TestIdentityProviderResponse -> Int
-- | The endpoint of the service used to authenticate a user.
[$sel:url:TestIdentityProviderResponse'] :: TestIdentityProviderResponse -> Text
-- | Create a value of TestIdentityProviderResponse with all
-- optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- TestIdentityProviderResponse,
-- testIdentityProviderResponse_message - A message that indicates
-- whether the test was successful or not.
--
-- If an empty string is returned, the most likely cause is that the
-- authentication failed due to an incorrect username or password.
--
-- $sel:response:TestIdentityProviderResponse',
-- testIdentityProviderResponse_response - The response that is
-- returned from your API Gateway.
--
-- $sel:httpStatus:TestIdentityProviderResponse',
-- testIdentityProviderResponse_httpStatus - The response's http
-- status code.
--
-- $sel:statusCode:TestIdentityProviderResponse',
-- testIdentityProviderResponse_statusCode - The HTTP status code
-- that is the response from your API Gateway.
--
-- TestIdentityProviderResponse,
-- testIdentityProviderResponse_url - The endpoint of the service
-- used to authenticate a user.
newTestIdentityProviderResponse :: Int -> Int -> Text -> TestIdentityProviderResponse
-- | A message that indicates whether the test was successful or not.
--
-- If an empty string is returned, the most likely cause is that the
-- authentication failed due to an incorrect username or password.
testIdentityProviderResponse_message :: Lens' TestIdentityProviderResponse (Maybe Text)
-- | The response that is returned from your API Gateway.
testIdentityProviderResponse_response :: Lens' TestIdentityProviderResponse (Maybe Text)
-- | The response's http status code.
testIdentityProviderResponse_httpStatus :: Lens' TestIdentityProviderResponse Int
-- | The HTTP status code that is the response from your API Gateway.
testIdentityProviderResponse_statusCode :: Lens' TestIdentityProviderResponse Int
-- | The endpoint of the service used to authenticate a user.
testIdentityProviderResponse_url :: Lens' TestIdentityProviderResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance GHC.Show.Show Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance GHC.Classes.Eq Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance GHC.Generics.Generic Amazonka.Transfer.TestIdentityProvider.TestIdentityProviderResponse
instance GHC.Show.Show Amazonka.Transfer.TestIdentityProvider.TestIdentityProviderResponse
instance GHC.Read.Read Amazonka.Transfer.TestIdentityProvider.TestIdentityProviderResponse
instance GHC.Classes.Eq Amazonka.Transfer.TestIdentityProvider.TestIdentityProviderResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance Control.DeepSeq.NFData Amazonka.Transfer.TestIdentityProvider.TestIdentityProviderResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance Control.DeepSeq.NFData Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.TestIdentityProvider.TestIdentityProvider
-- | Attaches a key-value pair to a resource, as identified by its Amazon
-- Resource Name (ARN). Resources are users, servers, roles, and other
-- entities.
--
-- There is no response returned from this call.
module Amazonka.Transfer.TagResource
-- | See: newTagResource smart constructor.
data TagResource
TagResource' :: Text -> NonEmpty Tag -> TagResource
-- | An Amazon Resource Name (ARN) for a specific Amazon Web Services
-- resource, such as a server, user, or role.
[$sel:arn:TagResource'] :: TagResource -> Text
-- | Key-value pairs assigned to ARNs that you can use to group and search
-- for resources by type. You can attach this metadata to user accounts
-- for any purpose.
[$sel:tags:TagResource'] :: TagResource -> NonEmpty Tag
-- | Create a value of TagResource with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- TagResource, tagResource_arn - An Amazon Resource Name
-- (ARN) for a specific Amazon Web Services resource, such as a server,
-- user, or role.
--
-- TagResource, tagResource_tags - Key-value pairs assigned
-- to ARNs that you can use to group and search for resources by type.
-- You can attach this metadata to user accounts for any purpose.
newTagResource :: Text -> NonEmpty Tag -> TagResource
-- | An Amazon Resource Name (ARN) for a specific Amazon Web Services
-- resource, such as a server, user, or role.
tagResource_arn :: Lens' TagResource Text
-- | Key-value pairs assigned to ARNs that you can use to group and search
-- for resources by type. You can attach this metadata to user accounts
-- for any purpose.
tagResource_tags :: Lens' TagResource (NonEmpty Tag)
-- | See: newTagResourceResponse smart constructor.
data TagResourceResponse
TagResourceResponse' :: TagResourceResponse
-- | Create a value of TagResourceResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newTagResourceResponse :: TagResourceResponse
instance GHC.Generics.Generic Amazonka.Transfer.TagResource.TagResource
instance GHC.Show.Show Amazonka.Transfer.TagResource.TagResource
instance GHC.Read.Read Amazonka.Transfer.TagResource.TagResource
instance GHC.Classes.Eq Amazonka.Transfer.TagResource.TagResource
instance GHC.Generics.Generic Amazonka.Transfer.TagResource.TagResourceResponse
instance GHC.Show.Show Amazonka.Transfer.TagResource.TagResourceResponse
instance GHC.Read.Read Amazonka.Transfer.TagResource.TagResourceResponse
instance GHC.Classes.Eq Amazonka.Transfer.TagResource.TagResourceResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.TagResource.TagResource
instance Control.DeepSeq.NFData Amazonka.Transfer.TagResource.TagResourceResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.TagResource.TagResource
instance Control.DeepSeq.NFData Amazonka.Transfer.TagResource.TagResource
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.TagResource.TagResource
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.TagResource.TagResource
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.TagResource.TagResource
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.TagResource.TagResource
-- | Changes the state of a file transfer protocol-enabled server from
-- ONLINE to OFFLINE. An OFFLINE server cannot
-- accept and process file transfer jobs. Information tied to your
-- server, such as server and user properties, are not affected by
-- stopping your server.
--
-- Stopping the server does not reduce or impact your file transfer
-- protocol endpoint billing; you must delete the server to stop being
-- billed.
--
-- The state of STOPPING indicates that the server is in an
-- intermediate state, either not fully able to respond, or not fully
-- offline. The values of STOP_FAILED can indicate an error
-- condition.
--
-- No response is returned from this call.
module Amazonka.Transfer.StopServer
-- | See: newStopServer smart constructor.
data StopServer
StopServer' :: Text -> StopServer
-- | A system-assigned unique identifier for a server that you stopped.
[$sel:serverId:StopServer'] :: StopServer -> Text
-- | Create a value of StopServer with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- StopServer, stopServer_serverId - A system-assigned
-- unique identifier for a server that you stopped.
newStopServer :: Text -> StopServer
-- | A system-assigned unique identifier for a server that you stopped.
stopServer_serverId :: Lens' StopServer Text
-- | See: newStopServerResponse smart constructor.
data StopServerResponse
StopServerResponse' :: StopServerResponse
-- | Create a value of StopServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newStopServerResponse :: StopServerResponse
instance GHC.Generics.Generic Amazonka.Transfer.StopServer.StopServer
instance GHC.Show.Show Amazonka.Transfer.StopServer.StopServer
instance GHC.Read.Read Amazonka.Transfer.StopServer.StopServer
instance GHC.Classes.Eq Amazonka.Transfer.StopServer.StopServer
instance GHC.Generics.Generic Amazonka.Transfer.StopServer.StopServerResponse
instance GHC.Show.Show Amazonka.Transfer.StopServer.StopServerResponse
instance GHC.Read.Read Amazonka.Transfer.StopServer.StopServerResponse
instance GHC.Classes.Eq Amazonka.Transfer.StopServer.StopServerResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.StopServer.StopServer
instance Control.DeepSeq.NFData Amazonka.Transfer.StopServer.StopServerResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.StopServer.StopServer
instance Control.DeepSeq.NFData Amazonka.Transfer.StopServer.StopServer
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.StopServer.StopServer
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.StopServer.StopServer
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.StopServer.StopServer
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.StopServer.StopServer
-- | Changes the state of a file transfer protocol-enabled server from
-- OFFLINE to ONLINE. It has no impact on a server that
-- is already ONLINE. An ONLINE server can accept and
-- process file transfer jobs.
--
-- The state of STARTING indicates that the server is in an
-- intermediate state, either not fully able to respond, or not fully
-- online. The values of START_FAILED can indicate an error
-- condition.
--
-- No response is returned from this call.
module Amazonka.Transfer.StartServer
-- | See: newStartServer smart constructor.
data StartServer
StartServer' :: Text -> StartServer
-- | A system-assigned unique identifier for a server that you start.
[$sel:serverId:StartServer'] :: StartServer -> Text
-- | Create a value of StartServer with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- StartServer, startServer_serverId - A system-assigned
-- unique identifier for a server that you start.
newStartServer :: Text -> StartServer
-- | A system-assigned unique identifier for a server that you start.
startServer_serverId :: Lens' StartServer Text
-- | See: newStartServerResponse smart constructor.
data StartServerResponse
StartServerResponse' :: StartServerResponse
-- | Create a value of StartServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newStartServerResponse :: StartServerResponse
instance GHC.Generics.Generic Amazonka.Transfer.StartServer.StartServer
instance GHC.Show.Show Amazonka.Transfer.StartServer.StartServer
instance GHC.Read.Read Amazonka.Transfer.StartServer.StartServer
instance GHC.Classes.Eq Amazonka.Transfer.StartServer.StartServer
instance GHC.Generics.Generic Amazonka.Transfer.StartServer.StartServerResponse
instance GHC.Show.Show Amazonka.Transfer.StartServer.StartServerResponse
instance GHC.Read.Read Amazonka.Transfer.StartServer.StartServerResponse
instance GHC.Classes.Eq Amazonka.Transfer.StartServer.StartServerResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.StartServer.StartServer
instance Control.DeepSeq.NFData Amazonka.Transfer.StartServer.StartServerResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.StartServer.StartServer
instance Control.DeepSeq.NFData Amazonka.Transfer.StartServer.StartServer
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.StartServer.StartServer
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.StartServer.StartServer
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.StartServer.StartServer
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.StartServer.StartServer
-- | Begins an outbound file transfer to a remote AS2 server. You specify
-- the ConnectorId and the file paths for where to send the
-- files.
module Amazonka.Transfer.StartFileTransfer
-- | See: newStartFileTransfer smart constructor.
data StartFileTransfer
StartFileTransfer' :: Text -> NonEmpty Text -> StartFileTransfer
-- | The unique identifier for the connector.
[$sel:connectorId:StartFileTransfer'] :: StartFileTransfer -> Text
-- | An array of strings. Each string represents the absolute path for one
-- outbound file transfer. For example,
-- DOC-EXAMPLE-BUCKET/myfile.txt
-- .
[$sel:sendFilePaths:StartFileTransfer'] :: StartFileTransfer -> NonEmpty Text
-- | Create a value of StartFileTransfer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- StartFileTransfer, startFileTransfer_connectorId - The
-- unique identifier for the connector.
--
-- $sel:sendFilePaths:StartFileTransfer',
-- startFileTransfer_sendFilePaths - An array of strings. Each
-- string represents the absolute path for one outbound file transfer.
-- For example,
-- DOC-EXAMPLE-BUCKET/myfile.txt
-- .
newStartFileTransfer :: Text -> NonEmpty Text -> StartFileTransfer
-- | The unique identifier for the connector.
startFileTransfer_connectorId :: Lens' StartFileTransfer Text
-- | An array of strings. Each string represents the absolute path for one
-- outbound file transfer. For example,
-- DOC-EXAMPLE-BUCKET/myfile.txt
-- .
startFileTransfer_sendFilePaths :: Lens' StartFileTransfer (NonEmpty Text)
-- | See: newStartFileTransferResponse smart constructor.
data StartFileTransferResponse
StartFileTransferResponse' :: Int -> Text -> StartFileTransferResponse
-- | The response's http status code.
[$sel:httpStatus:StartFileTransferResponse'] :: StartFileTransferResponse -> Int
-- | Returns the unique identifier for this file transfer.
[$sel:transferId:StartFileTransferResponse'] :: StartFileTransferResponse -> Text
-- | Create a value of StartFileTransferResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:StartFileTransferResponse',
-- startFileTransferResponse_httpStatus - The response's http
-- status code.
--
-- $sel:transferId:StartFileTransferResponse',
-- startFileTransferResponse_transferId - Returns the unique
-- identifier for this file transfer.
newStartFileTransferResponse :: Int -> Text -> StartFileTransferResponse
-- | The response's http status code.
startFileTransferResponse_httpStatus :: Lens' StartFileTransferResponse Int
-- | Returns the unique identifier for this file transfer.
startFileTransferResponse_transferId :: Lens' StartFileTransferResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance GHC.Show.Show Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance GHC.Read.Read Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance GHC.Classes.Eq Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance GHC.Generics.Generic Amazonka.Transfer.StartFileTransfer.StartFileTransferResponse
instance GHC.Show.Show Amazonka.Transfer.StartFileTransfer.StartFileTransferResponse
instance GHC.Read.Read Amazonka.Transfer.StartFileTransfer.StartFileTransferResponse
instance GHC.Classes.Eq Amazonka.Transfer.StartFileTransfer.StartFileTransferResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance Control.DeepSeq.NFData Amazonka.Transfer.StartFileTransfer.StartFileTransferResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance Control.DeepSeq.NFData Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.StartFileTransfer.StartFileTransfer
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.StartFileTransfer.StartFileTransfer
-- | Sends a callback for asynchronous custom steps.
--
-- The ExecutionId, WorkflowId, and Token are
-- passed to the target resource during execution of a custom step of a
-- workflow. You must include those with their callback as well as
-- providing a status.
module Amazonka.Transfer.SendWorkflowStepState
-- | See: newSendWorkflowStepState smart constructor.
data SendWorkflowStepState
SendWorkflowStepState' :: Text -> Text -> Text -> CustomStepStatus -> SendWorkflowStepState
-- | A unique identifier for the workflow.
[$sel:workflowId:SendWorkflowStepState'] :: SendWorkflowStepState -> Text
-- | A unique identifier for the execution of a workflow.
[$sel:executionId:SendWorkflowStepState'] :: SendWorkflowStepState -> Text
-- | Used to distinguish between multiple callbacks for multiple Lambda
-- steps within the same execution.
[$sel:token:SendWorkflowStepState'] :: SendWorkflowStepState -> Text
-- | Indicates whether the specified step succeeded or failed.
[$sel:status:SendWorkflowStepState'] :: SendWorkflowStepState -> CustomStepStatus
-- | Create a value of SendWorkflowStepState with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- SendWorkflowStepState, sendWorkflowStepState_workflowId
-- - A unique identifier for the workflow.
--
-- SendWorkflowStepState, sendWorkflowStepState_executionId
-- - A unique identifier for the execution of a workflow.
--
-- $sel:token:SendWorkflowStepState',
-- sendWorkflowStepState_token - Used to distinguish between
-- multiple callbacks for multiple Lambda steps within the same
-- execution.
--
-- SendWorkflowStepState, sendWorkflowStepState_status -
-- Indicates whether the specified step succeeded or failed.
newSendWorkflowStepState :: Text -> Text -> Text -> CustomStepStatus -> SendWorkflowStepState
-- | A unique identifier for the workflow.
sendWorkflowStepState_workflowId :: Lens' SendWorkflowStepState Text
-- | A unique identifier for the execution of a workflow.
sendWorkflowStepState_executionId :: Lens' SendWorkflowStepState Text
-- | Used to distinguish between multiple callbacks for multiple Lambda
-- steps within the same execution.
sendWorkflowStepState_token :: Lens' SendWorkflowStepState Text
-- | Indicates whether the specified step succeeded or failed.
sendWorkflowStepState_status :: Lens' SendWorkflowStepState CustomStepStatus
-- | See: newSendWorkflowStepStateResponse smart constructor.
data SendWorkflowStepStateResponse
SendWorkflowStepStateResponse' :: Int -> SendWorkflowStepStateResponse
-- | The response's http status code.
[$sel:httpStatus:SendWorkflowStepStateResponse'] :: SendWorkflowStepStateResponse -> Int
-- | Create a value of SendWorkflowStepStateResponse with all
-- optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:SendWorkflowStepStateResponse',
-- sendWorkflowStepStateResponse_httpStatus - The response's http
-- status code.
newSendWorkflowStepStateResponse :: Int -> SendWorkflowStepStateResponse
-- | The response's http status code.
sendWorkflowStepStateResponse_httpStatus :: Lens' SendWorkflowStepStateResponse Int
instance GHC.Generics.Generic Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance GHC.Show.Show Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance GHC.Read.Read Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance GHC.Classes.Eq Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance GHC.Generics.Generic Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepStateResponse
instance GHC.Show.Show Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepStateResponse
instance GHC.Read.Read Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepStateResponse
instance GHC.Classes.Eq Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepStateResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance Control.DeepSeq.NFData Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepStateResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance Control.DeepSeq.NFData Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.SendWorkflowStepState.SendWorkflowStepState
-- | Lists all of your workflows.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListWorkflows
-- | See: newListWorkflows smart constructor.
data ListWorkflows
ListWorkflows' :: Maybe Natural -> Maybe Text -> ListWorkflows
-- | Specifies the maximum number of workflows to return.
[$sel:maxResults:ListWorkflows'] :: ListWorkflows -> Maybe Natural
-- | ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
[$sel:nextToken:ListWorkflows'] :: ListWorkflows -> Maybe Text
-- | Create a value of ListWorkflows with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListWorkflows', listWorkflows_maxResults
-- - Specifies the maximum number of workflows to return.
--
-- ListWorkflows, listWorkflows_nextToken -
-- ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
newListWorkflows :: ListWorkflows
-- | Specifies the maximum number of workflows to return.
listWorkflows_maxResults :: Lens' ListWorkflows (Maybe Natural)
-- | ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
listWorkflows_nextToken :: Lens' ListWorkflows (Maybe Text)
-- | See: newListWorkflowsResponse smart constructor.
data ListWorkflowsResponse
ListWorkflowsResponse' :: Maybe Text -> Int -> [ListedWorkflow] -> ListWorkflowsResponse
-- | ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
[$sel:nextToken:ListWorkflowsResponse'] :: ListWorkflowsResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListWorkflowsResponse'] :: ListWorkflowsResponse -> Int
-- | Returns the Arn, WorkflowId, and
-- Description for each workflow.
[$sel:workflows:ListWorkflowsResponse'] :: ListWorkflowsResponse -> [ListedWorkflow]
-- | Create a value of ListWorkflowsResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListWorkflows, listWorkflowsResponse_nextToken -
-- ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
--
-- $sel:httpStatus:ListWorkflowsResponse',
-- listWorkflowsResponse_httpStatus - The response's http status
-- code.
--
-- $sel:workflows:ListWorkflowsResponse',
-- listWorkflowsResponse_workflows - Returns the Arn,
-- WorkflowId, and Description for each workflow.
newListWorkflowsResponse :: Int -> ListWorkflowsResponse
-- | ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
listWorkflowsResponse_nextToken :: Lens' ListWorkflowsResponse (Maybe Text)
-- | The response's http status code.
listWorkflowsResponse_httpStatus :: Lens' ListWorkflowsResponse Int
-- | Returns the Arn, WorkflowId, and
-- Description for each workflow.
listWorkflowsResponse_workflows :: Lens' ListWorkflowsResponse [ListedWorkflow]
instance GHC.Generics.Generic Amazonka.Transfer.ListWorkflows.ListWorkflows
instance GHC.Show.Show Amazonka.Transfer.ListWorkflows.ListWorkflows
instance GHC.Read.Read Amazonka.Transfer.ListWorkflows.ListWorkflows
instance GHC.Classes.Eq Amazonka.Transfer.ListWorkflows.ListWorkflows
instance GHC.Generics.Generic Amazonka.Transfer.ListWorkflows.ListWorkflowsResponse
instance GHC.Show.Show Amazonka.Transfer.ListWorkflows.ListWorkflowsResponse
instance GHC.Read.Read Amazonka.Transfer.ListWorkflows.ListWorkflowsResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListWorkflows.ListWorkflowsResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListWorkflows.ListWorkflows
instance Control.DeepSeq.NFData Amazonka.Transfer.ListWorkflows.ListWorkflowsResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListWorkflows.ListWorkflows
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListWorkflows.ListWorkflows
instance Control.DeepSeq.NFData Amazonka.Transfer.ListWorkflows.ListWorkflows
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListWorkflows.ListWorkflows
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListWorkflows.ListWorkflows
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListWorkflows.ListWorkflows
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListWorkflows.ListWorkflows
-- | Lists the users for a file transfer protocol-enabled server that you
-- specify by passing the ServerId parameter.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListUsers
-- | See: newListUsers smart constructor.
data ListUsers
ListUsers' :: Maybe Natural -> Maybe Text -> Text -> ListUsers
-- | Specifies the number of users to return as a response to the
-- ListUsers request.
[$sel:maxResults:ListUsers'] :: ListUsers -> Maybe Natural
-- | When you can get additional results from the ListUsers call,
-- a NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
[$sel:nextToken:ListUsers'] :: ListUsers -> Maybe Text
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
[$sel:serverId:ListUsers'] :: ListUsers -> Text
-- | Create a value of ListUsers with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListUsers', listUsers_maxResults -
-- Specifies the number of users to return as a response to the
-- ListUsers request.
--
-- ListUsers, listUsers_nextToken - When you can get
-- additional results from the ListUsers call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
--
-- ListUsers, listUsers_serverId - A system-assigned unique
-- identifier for a server that has users assigned to it.
newListUsers :: Text -> ListUsers
-- | Specifies the number of users to return as a response to the
-- ListUsers request.
listUsers_maxResults :: Lens' ListUsers (Maybe Natural)
-- | When you can get additional results from the ListUsers call,
-- a NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
listUsers_nextToken :: Lens' ListUsers (Maybe Text)
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
listUsers_serverId :: Lens' ListUsers Text
-- | See: newListUsersResponse smart constructor.
data ListUsersResponse
ListUsersResponse' :: Maybe Text -> Int -> Text -> [ListedUser] -> ListUsersResponse
-- | When you can get additional results from the ListUsers call,
-- a NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
[$sel:nextToken:ListUsersResponse'] :: ListUsersResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListUsersResponse'] :: ListUsersResponse -> Int
-- | A system-assigned unique identifier for a server that the users are
-- assigned to.
[$sel:serverId:ListUsersResponse'] :: ListUsersResponse -> Text
-- | Returns the user accounts and their properties for the
-- ServerId value that you specify.
[$sel:users:ListUsersResponse'] :: ListUsersResponse -> [ListedUser]
-- | Create a value of ListUsersResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListUsers, listUsersResponse_nextToken - When you can
-- get additional results from the ListUsers call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
--
-- $sel:httpStatus:ListUsersResponse',
-- listUsersResponse_httpStatus - The response's http status code.
--
-- ListUsers, listUsersResponse_serverId - A
-- system-assigned unique identifier for a server that the users are
-- assigned to.
--
-- $sel:users:ListUsersResponse', listUsersResponse_users -
-- Returns the user accounts and their properties for the
-- ServerId value that you specify.
newListUsersResponse :: Int -> Text -> ListUsersResponse
-- | When you can get additional results from the ListUsers call,
-- a NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
listUsersResponse_nextToken :: Lens' ListUsersResponse (Maybe Text)
-- | The response's http status code.
listUsersResponse_httpStatus :: Lens' ListUsersResponse Int
-- | A system-assigned unique identifier for a server that the users are
-- assigned to.
listUsersResponse_serverId :: Lens' ListUsersResponse Text
-- | Returns the user accounts and their properties for the
-- ServerId value that you specify.
listUsersResponse_users :: Lens' ListUsersResponse [ListedUser]
instance GHC.Generics.Generic Amazonka.Transfer.ListUsers.ListUsers
instance GHC.Show.Show Amazonka.Transfer.ListUsers.ListUsers
instance GHC.Read.Read Amazonka.Transfer.ListUsers.ListUsers
instance GHC.Classes.Eq Amazonka.Transfer.ListUsers.ListUsers
instance GHC.Generics.Generic Amazonka.Transfer.ListUsers.ListUsersResponse
instance GHC.Show.Show Amazonka.Transfer.ListUsers.ListUsersResponse
instance GHC.Read.Read Amazonka.Transfer.ListUsers.ListUsersResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListUsers.ListUsersResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListUsers.ListUsers
instance Control.DeepSeq.NFData Amazonka.Transfer.ListUsers.ListUsersResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListUsers.ListUsers
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListUsers.ListUsers
instance Control.DeepSeq.NFData Amazonka.Transfer.ListUsers.ListUsers
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListUsers.ListUsers
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListUsers.ListUsers
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListUsers.ListUsers
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListUsers.ListUsers
-- | Lists all of the tags associated with the Amazon Resource Name (ARN)
-- that you specify. The resource can be a user, server, or role.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListTagsForResource
-- | See: newListTagsForResource smart constructor.
data ListTagsForResource
ListTagsForResource' :: Maybe Natural -> Maybe Text -> Text -> ListTagsForResource
-- | Specifies the number of tags to return as a response to the
-- ListTagsForResource request.
[$sel:maxResults:ListTagsForResource'] :: ListTagsForResource -> Maybe Natural
-- | When you request additional results from the
-- ListTagsForResource operation, a NextToken parameter
-- is returned in the input. You can then pass in a subsequent command to
-- the NextToken parameter to continue listing additional tags.
[$sel:nextToken:ListTagsForResource'] :: ListTagsForResource -> Maybe Text
-- | Requests the tags associated with a particular Amazon Resource Name
-- (ARN). An ARN is an identifier for a specific Amazon Web Services
-- resource, such as a server, user, or role.
[$sel:arn:ListTagsForResource'] :: ListTagsForResource -> Text
-- | Create a value of ListTagsForResource with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListTagsForResource',
-- listTagsForResource_maxResults - Specifies the number of tags
-- to return as a response to the ListTagsForResource request.
--
-- ListTagsForResource, listTagsForResource_nextToken -
-- When you request additional results from the
-- ListTagsForResource operation, a NextToken parameter
-- is returned in the input. You can then pass in a subsequent command to
-- the NextToken parameter to continue listing additional tags.
--
-- ListTagsForResource, listTagsForResource_arn - Requests
-- the tags associated with a particular Amazon Resource Name (ARN). An
-- ARN is an identifier for a specific Amazon Web Services resource, such
-- as a server, user, or role.
newListTagsForResource :: Text -> ListTagsForResource
-- | Specifies the number of tags to return as a response to the
-- ListTagsForResource request.
listTagsForResource_maxResults :: Lens' ListTagsForResource (Maybe Natural)
-- | When you request additional results from the
-- ListTagsForResource operation, a NextToken parameter
-- is returned in the input. You can then pass in a subsequent command to
-- the NextToken parameter to continue listing additional tags.
listTagsForResource_nextToken :: Lens' ListTagsForResource (Maybe Text)
-- | Requests the tags associated with a particular Amazon Resource Name
-- (ARN). An ARN is an identifier for a specific Amazon Web Services
-- resource, such as a server, user, or role.
listTagsForResource_arn :: Lens' ListTagsForResource Text
-- | See: newListTagsForResourceResponse smart constructor.
data ListTagsForResourceResponse
ListTagsForResourceResponse' :: Maybe Text -> Maybe Text -> Maybe (NonEmpty Tag) -> Int -> ListTagsForResourceResponse
-- | The ARN you specified to list the tags of.
[$sel:arn:ListTagsForResourceResponse'] :: ListTagsForResourceResponse -> Maybe Text
-- | When you can get additional results from the
-- ListTagsForResource call, a NextToken parameter is
-- returned in the output. You can then pass in a subsequent command to
-- the NextToken parameter to continue listing additional tags.
[$sel:nextToken:ListTagsForResourceResponse'] :: ListTagsForResourceResponse -> Maybe Text
-- | Key-value pairs that are assigned to a resource, usually for the
-- purpose of grouping and searching for items. Tags are metadata that
-- you define.
[$sel:tags:ListTagsForResourceResponse'] :: ListTagsForResourceResponse -> Maybe (NonEmpty Tag)
-- | The response's http status code.
[$sel:httpStatus:ListTagsForResourceResponse'] :: ListTagsForResourceResponse -> Int
-- | Create a value of ListTagsForResourceResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListTagsForResource, listTagsForResourceResponse_arn -
-- The ARN you specified to list the tags of.
--
-- ListTagsForResource,
-- listTagsForResourceResponse_nextToken - When you can get
-- additional results from the ListTagsForResource call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional tags.
--
-- ListTagsForResourceResponse,
-- listTagsForResourceResponse_tags - Key-value pairs that are
-- assigned to a resource, usually for the purpose of grouping and
-- searching for items. Tags are metadata that you define.
--
-- $sel:httpStatus:ListTagsForResourceResponse',
-- listTagsForResourceResponse_httpStatus - The response's http
-- status code.
newListTagsForResourceResponse :: Int -> ListTagsForResourceResponse
-- | The ARN you specified to list the tags of.
listTagsForResourceResponse_arn :: Lens' ListTagsForResourceResponse (Maybe Text)
-- | When you can get additional results from the
-- ListTagsForResource call, a NextToken parameter is
-- returned in the output. You can then pass in a subsequent command to
-- the NextToken parameter to continue listing additional tags.
listTagsForResourceResponse_nextToken :: Lens' ListTagsForResourceResponse (Maybe Text)
-- | Key-value pairs that are assigned to a resource, usually for the
-- purpose of grouping and searching for items. Tags are metadata that
-- you define.
listTagsForResourceResponse_tags :: Lens' ListTagsForResourceResponse (Maybe (NonEmpty Tag))
-- | The response's http status code.
listTagsForResourceResponse_httpStatus :: Lens' ListTagsForResourceResponse Int
instance GHC.Generics.Generic Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance GHC.Show.Show Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance GHC.Read.Read Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance GHC.Classes.Eq Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance GHC.Generics.Generic Amazonka.Transfer.ListTagsForResource.ListTagsForResourceResponse
instance GHC.Show.Show Amazonka.Transfer.ListTagsForResource.ListTagsForResourceResponse
instance GHC.Read.Read Amazonka.Transfer.ListTagsForResource.ListTagsForResourceResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListTagsForResource.ListTagsForResourceResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance Control.DeepSeq.NFData Amazonka.Transfer.ListTagsForResource.ListTagsForResourceResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance Control.DeepSeq.NFData Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListTagsForResource.ListTagsForResource
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListTagsForResource.ListTagsForResource
-- | Lists the file transfer protocol-enabled servers that are associated
-- with your Amazon Web Services account.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListServers
-- | See: newListServers smart constructor.
data ListServers
ListServers' :: Maybe Natural -> Maybe Text -> ListServers
-- | Specifies the number of servers to return as a response to the
-- ListServers query.
[$sel:maxResults:ListServers'] :: ListServers -> Maybe Natural
-- | When additional results are obtained from the ListServers
-- command, a NextToken parameter is returned in the output. You
-- can then pass the NextToken parameter in a subsequent command
-- to continue listing additional servers.
[$sel:nextToken:ListServers'] :: ListServers -> Maybe Text
-- | Create a value of ListServers with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListServers', listServers_maxResults -
-- Specifies the number of servers to return as a response to the
-- ListServers query.
--
-- ListServers, listServers_nextToken - When additional
-- results are obtained from the ListServers command, a
-- NextToken parameter is returned in the output. You can then
-- pass the NextToken parameter in a subsequent command to
-- continue listing additional servers.
newListServers :: ListServers
-- | Specifies the number of servers to return as a response to the
-- ListServers query.
listServers_maxResults :: Lens' ListServers (Maybe Natural)
-- | When additional results are obtained from the ListServers
-- command, a NextToken parameter is returned in the output. You
-- can then pass the NextToken parameter in a subsequent command
-- to continue listing additional servers.
listServers_nextToken :: Lens' ListServers (Maybe Text)
-- | See: newListServersResponse smart constructor.
data ListServersResponse
ListServersResponse' :: Maybe Text -> Int -> [ListedServer] -> ListServersResponse
-- | When you can get additional results from the ListServers
-- operation, a NextToken parameter is returned in the output.
-- In a following command, you can pass in the NextToken
-- parameter to continue listing additional servers.
[$sel:nextToken:ListServersResponse'] :: ListServersResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListServersResponse'] :: ListServersResponse -> Int
-- | An array of servers that were listed.
[$sel:servers:ListServersResponse'] :: ListServersResponse -> [ListedServer]
-- | Create a value of ListServersResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListServers, listServersResponse_nextToken - When you
-- can get additional results from the ListServers operation, a
-- NextToken parameter is returned in the output. In a following
-- command, you can pass in the NextToken parameter to continue
-- listing additional servers.
--
-- $sel:httpStatus:ListServersResponse',
-- listServersResponse_httpStatus - The response's http status
-- code.
--
-- $sel:servers:ListServersResponse',
-- listServersResponse_servers - An array of servers that were
-- listed.
newListServersResponse :: Int -> ListServersResponse
-- | When you can get additional results from the ListServers
-- operation, a NextToken parameter is returned in the output.
-- In a following command, you can pass in the NextToken
-- parameter to continue listing additional servers.
listServersResponse_nextToken :: Lens' ListServersResponse (Maybe Text)
-- | The response's http status code.
listServersResponse_httpStatus :: Lens' ListServersResponse Int
-- | An array of servers that were listed.
listServersResponse_servers :: Lens' ListServersResponse [ListedServer]
instance GHC.Generics.Generic Amazonka.Transfer.ListServers.ListServers
instance GHC.Show.Show Amazonka.Transfer.ListServers.ListServers
instance GHC.Read.Read Amazonka.Transfer.ListServers.ListServers
instance GHC.Classes.Eq Amazonka.Transfer.ListServers.ListServers
instance GHC.Generics.Generic Amazonka.Transfer.ListServers.ListServersResponse
instance GHC.Show.Show Amazonka.Transfer.ListServers.ListServersResponse
instance GHC.Read.Read Amazonka.Transfer.ListServers.ListServersResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListServers.ListServersResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListServers.ListServers
instance Control.DeepSeq.NFData Amazonka.Transfer.ListServers.ListServersResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListServers.ListServers
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListServers.ListServers
instance Control.DeepSeq.NFData Amazonka.Transfer.ListServers.ListServers
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListServers.ListServers
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListServers.ListServers
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListServers.ListServers
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListServers.ListServers
-- | Lists the security policies that are attached to your file transfer
-- protocol-enabled servers.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListSecurityPolicies
-- | See: newListSecurityPolicies smart constructor.
data ListSecurityPolicies
ListSecurityPolicies' :: Maybe Natural -> Maybe Text -> ListSecurityPolicies
-- | Specifies the number of security policies to return as a response to
-- the ListSecurityPolicies query.
[$sel:maxResults:ListSecurityPolicies'] :: ListSecurityPolicies -> Maybe Natural
-- | When additional results are obtained from the
-- ListSecurityPolicies command, a NextToken parameter
-- is returned in the output. You can then pass the NextToken
-- parameter in a subsequent command to continue listing additional
-- security policies.
[$sel:nextToken:ListSecurityPolicies'] :: ListSecurityPolicies -> Maybe Text
-- | Create a value of ListSecurityPolicies with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListSecurityPolicies',
-- listSecurityPolicies_maxResults - Specifies the number of
-- security policies to return as a response to the
-- ListSecurityPolicies query.
--
-- ListSecurityPolicies, listSecurityPolicies_nextToken -
-- When additional results are obtained from the
-- ListSecurityPolicies command, a NextToken parameter
-- is returned in the output. You can then pass the NextToken
-- parameter in a subsequent command to continue listing additional
-- security policies.
newListSecurityPolicies :: ListSecurityPolicies
-- | Specifies the number of security policies to return as a response to
-- the ListSecurityPolicies query.
listSecurityPolicies_maxResults :: Lens' ListSecurityPolicies (Maybe Natural)
-- | When additional results are obtained from the
-- ListSecurityPolicies command, a NextToken parameter
-- is returned in the output. You can then pass the NextToken
-- parameter in a subsequent command to continue listing additional
-- security policies.
listSecurityPolicies_nextToken :: Lens' ListSecurityPolicies (Maybe Text)
-- | See: newListSecurityPoliciesResponse smart constructor.
data ListSecurityPoliciesResponse
ListSecurityPoliciesResponse' :: Maybe Text -> Int -> [Text] -> ListSecurityPoliciesResponse
-- | When you can get additional results from the
-- ListSecurityPolicies operation, a NextToken
-- parameter is returned in the output. In a following command, you can
-- pass in the NextToken parameter to continue listing security
-- policies.
[$sel:nextToken:ListSecurityPoliciesResponse'] :: ListSecurityPoliciesResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListSecurityPoliciesResponse'] :: ListSecurityPoliciesResponse -> Int
-- | An array of security policies that were listed.
[$sel:securityPolicyNames:ListSecurityPoliciesResponse'] :: ListSecurityPoliciesResponse -> [Text]
-- | Create a value of ListSecurityPoliciesResponse with all
-- optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListSecurityPolicies,
-- listSecurityPoliciesResponse_nextToken - When you can get
-- additional results from the ListSecurityPolicies operation, a
-- NextToken parameter is returned in the output. In a following
-- command, you can pass in the NextToken parameter to continue
-- listing security policies.
--
-- $sel:httpStatus:ListSecurityPoliciesResponse',
-- listSecurityPoliciesResponse_httpStatus - The response's http
-- status code.
--
-- $sel:securityPolicyNames:ListSecurityPoliciesResponse',
-- listSecurityPoliciesResponse_securityPolicyNames - An array of
-- security policies that were listed.
newListSecurityPoliciesResponse :: Int -> ListSecurityPoliciesResponse
-- | When you can get additional results from the
-- ListSecurityPolicies operation, a NextToken
-- parameter is returned in the output. In a following command, you can
-- pass in the NextToken parameter to continue listing security
-- policies.
listSecurityPoliciesResponse_nextToken :: Lens' ListSecurityPoliciesResponse (Maybe Text)
-- | The response's http status code.
listSecurityPoliciesResponse_httpStatus :: Lens' ListSecurityPoliciesResponse Int
-- | An array of security policies that were listed.
listSecurityPoliciesResponse_securityPolicyNames :: Lens' ListSecurityPoliciesResponse [Text]
instance GHC.Generics.Generic Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance GHC.Show.Show Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance GHC.Read.Read Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance GHC.Classes.Eq Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance GHC.Generics.Generic Amazonka.Transfer.ListSecurityPolicies.ListSecurityPoliciesResponse
instance GHC.Show.Show Amazonka.Transfer.ListSecurityPolicies.ListSecurityPoliciesResponse
instance GHC.Read.Read Amazonka.Transfer.ListSecurityPolicies.ListSecurityPoliciesResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListSecurityPolicies.ListSecurityPoliciesResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance Control.DeepSeq.NFData Amazonka.Transfer.ListSecurityPolicies.ListSecurityPoliciesResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance Control.DeepSeq.NFData Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListSecurityPolicies.ListSecurityPolicies
-- | Returns a list of the profiles for your system. If you want to limit
-- the results to a certain number, supply a value for the
-- MaxResults parameter. If you ran the command previously and
-- received a value for NextToken, you can supply that value to
-- continue listing profiles from where you left off.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListProfiles
-- | See: newListProfiles smart constructor.
data ListProfiles
ListProfiles' :: Maybe Natural -> Maybe Text -> Maybe ProfileType -> ListProfiles
-- | The maximum number of profiles to return.
[$sel:maxResults:ListProfiles'] :: ListProfiles -> Maybe Natural
-- | When there are additional results that were not returned, a
-- NextToken parameter is returned. You can use that value for a
-- subsequent call to ListProfiles to continue listing results.
[$sel:nextToken:ListProfiles'] :: ListProfiles -> Maybe Text
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
[$sel:profileType:ListProfiles'] :: ListProfiles -> Maybe ProfileType
-- | Create a value of ListProfiles with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListProfiles', listProfiles_maxResults -
-- The maximum number of profiles to return.
--
-- ListProfiles, listProfiles_nextToken - When there are
-- additional results that were not returned, a NextToken
-- parameter is returned. You can use that value for a subsequent call to
-- ListProfiles to continue listing results.
--
-- ListProfiles, listProfiles_profileType - Indicates
-- whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
newListProfiles :: ListProfiles
-- | The maximum number of profiles to return.
listProfiles_maxResults :: Lens' ListProfiles (Maybe Natural)
-- | When there are additional results that were not returned, a
-- NextToken parameter is returned. You can use that value for a
-- subsequent call to ListProfiles to continue listing results.
listProfiles_nextToken :: Lens' ListProfiles (Maybe Text)
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
listProfiles_profileType :: Lens' ListProfiles (Maybe ProfileType)
-- | See: newListProfilesResponse smart constructor.
data ListProfilesResponse
ListProfilesResponse' :: Maybe Text -> Int -> [ListedProfile] -> ListProfilesResponse
-- | Returns a token that you can use to call ListProfiles again
-- and receive additional results, if there are any.
[$sel:nextToken:ListProfilesResponse'] :: ListProfilesResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListProfilesResponse'] :: ListProfilesResponse -> Int
-- | Returns an array, where each item contains the details of a profile.
[$sel:profiles:ListProfilesResponse'] :: ListProfilesResponse -> [ListedProfile]
-- | Create a value of ListProfilesResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListProfiles, listProfilesResponse_nextToken - Returns a
-- token that you can use to call ListProfiles again and receive
-- additional results, if there are any.
--
-- $sel:httpStatus:ListProfilesResponse',
-- listProfilesResponse_httpStatus - The response's http status
-- code.
--
-- $sel:profiles:ListProfilesResponse',
-- listProfilesResponse_profiles - Returns an array, where each
-- item contains the details of a profile.
newListProfilesResponse :: Int -> ListProfilesResponse
-- | Returns a token that you can use to call ListProfiles again
-- and receive additional results, if there are any.
listProfilesResponse_nextToken :: Lens' ListProfilesResponse (Maybe Text)
-- | The response's http status code.
listProfilesResponse_httpStatus :: Lens' ListProfilesResponse Int
-- | Returns an array, where each item contains the details of a profile.
listProfilesResponse_profiles :: Lens' ListProfilesResponse [ListedProfile]
instance GHC.Generics.Generic Amazonka.Transfer.ListProfiles.ListProfiles
instance GHC.Show.Show Amazonka.Transfer.ListProfiles.ListProfiles
instance GHC.Read.Read Amazonka.Transfer.ListProfiles.ListProfiles
instance GHC.Classes.Eq Amazonka.Transfer.ListProfiles.ListProfiles
instance GHC.Generics.Generic Amazonka.Transfer.ListProfiles.ListProfilesResponse
instance GHC.Show.Show Amazonka.Transfer.ListProfiles.ListProfilesResponse
instance GHC.Read.Read Amazonka.Transfer.ListProfiles.ListProfilesResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListProfiles.ListProfilesResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListProfiles.ListProfiles
instance Control.DeepSeq.NFData Amazonka.Transfer.ListProfiles.ListProfilesResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListProfiles.ListProfiles
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListProfiles.ListProfiles
instance Control.DeepSeq.NFData Amazonka.Transfer.ListProfiles.ListProfiles
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListProfiles.ListProfiles
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListProfiles.ListProfiles
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListProfiles.ListProfiles
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListProfiles.ListProfiles
-- | Returns a list of host keys for the server that's specified by the
-- ServerId parameter.
module Amazonka.Transfer.ListHostKeys
-- | See: newListHostKeys smart constructor.
data ListHostKeys
ListHostKeys' :: Maybe Natural -> Maybe Text -> Text -> ListHostKeys
-- | The maximum number of host keys to return.
[$sel:maxResults:ListHostKeys'] :: ListHostKeys -> Maybe Natural
-- | When there are additional results that were not returned, a
-- NextToken parameter is returned. You can use that value for a
-- subsequent call to ListHostKeys to continue listing results.
[$sel:nextToken:ListHostKeys'] :: ListHostKeys -> Maybe Text
-- | The identifier of the server that contains the host keys that you want
-- to view.
[$sel:serverId:ListHostKeys'] :: ListHostKeys -> Text
-- | Create a value of ListHostKeys with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListHostKeys', listHostKeys_maxResults -
-- The maximum number of host keys to return.
--
-- ListHostKeys, listHostKeys_nextToken - When there are
-- additional results that were not returned, a NextToken
-- parameter is returned. You can use that value for a subsequent call to
-- ListHostKeys to continue listing results.
--
-- ListHostKeys, listHostKeys_serverId - The identifier of
-- the server that contains the host keys that you want to view.
newListHostKeys :: Text -> ListHostKeys
-- | The maximum number of host keys to return.
listHostKeys_maxResults :: Lens' ListHostKeys (Maybe Natural)
-- | When there are additional results that were not returned, a
-- NextToken parameter is returned. You can use that value for a
-- subsequent call to ListHostKeys to continue listing results.
listHostKeys_nextToken :: Lens' ListHostKeys (Maybe Text)
-- | The identifier of the server that contains the host keys that you want
-- to view.
listHostKeys_serverId :: Lens' ListHostKeys Text
-- | See: newListHostKeysResponse smart constructor.
data ListHostKeysResponse
ListHostKeysResponse' :: Maybe Text -> Int -> Text -> [ListedHostKey] -> ListHostKeysResponse
-- | Returns a token that you can use to call ListHostKeys again
-- and receive additional results, if there are any.
[$sel:nextToken:ListHostKeysResponse'] :: ListHostKeysResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListHostKeysResponse'] :: ListHostKeysResponse -> Int
-- | Returns the server identifier that contains the listed host keys.
[$sel:serverId:ListHostKeysResponse'] :: ListHostKeysResponse -> Text
-- | Returns an array, where each item contains the details of a host key.
[$sel:hostKeys:ListHostKeysResponse'] :: ListHostKeysResponse -> [ListedHostKey]
-- | Create a value of ListHostKeysResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListHostKeys, listHostKeysResponse_nextToken - Returns a
-- token that you can use to call ListHostKeys again and receive
-- additional results, if there are any.
--
-- $sel:httpStatus:ListHostKeysResponse',
-- listHostKeysResponse_httpStatus - The response's http status
-- code.
--
-- ListHostKeys, listHostKeysResponse_serverId - Returns
-- the server identifier that contains the listed host keys.
--
-- $sel:hostKeys:ListHostKeysResponse',
-- listHostKeysResponse_hostKeys - Returns an array, where each
-- item contains the details of a host key.
newListHostKeysResponse :: Int -> Text -> ListHostKeysResponse
-- | Returns a token that you can use to call ListHostKeys again
-- and receive additional results, if there are any.
listHostKeysResponse_nextToken :: Lens' ListHostKeysResponse (Maybe Text)
-- | The response's http status code.
listHostKeysResponse_httpStatus :: Lens' ListHostKeysResponse Int
-- | Returns the server identifier that contains the listed host keys.
listHostKeysResponse_serverId :: Lens' ListHostKeysResponse Text
-- | Returns an array, where each item contains the details of a host key.
listHostKeysResponse_hostKeys :: Lens' ListHostKeysResponse [ListedHostKey]
instance GHC.Generics.Generic Amazonka.Transfer.ListHostKeys.ListHostKeys
instance GHC.Show.Show Amazonka.Transfer.ListHostKeys.ListHostKeys
instance GHC.Read.Read Amazonka.Transfer.ListHostKeys.ListHostKeys
instance GHC.Classes.Eq Amazonka.Transfer.ListHostKeys.ListHostKeys
instance GHC.Generics.Generic Amazonka.Transfer.ListHostKeys.ListHostKeysResponse
instance GHC.Show.Show Amazonka.Transfer.ListHostKeys.ListHostKeysResponse
instance GHC.Read.Read Amazonka.Transfer.ListHostKeys.ListHostKeysResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListHostKeys.ListHostKeysResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListHostKeys.ListHostKeys
instance Control.DeepSeq.NFData Amazonka.Transfer.ListHostKeys.ListHostKeysResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListHostKeys.ListHostKeys
instance Control.DeepSeq.NFData Amazonka.Transfer.ListHostKeys.ListHostKeys
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListHostKeys.ListHostKeys
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListHostKeys.ListHostKeys
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListHostKeys.ListHostKeys
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListHostKeys.ListHostKeys
-- | Lists all executions for the specified workflow.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListExecutions
-- | See: newListExecutions smart constructor.
data ListExecutions
ListExecutions' :: Maybe Natural -> Maybe Text -> Text -> ListExecutions
-- | Specifies the maximum number of executions to return.
[$sel:maxResults:ListExecutions'] :: ListExecutions -> Maybe Natural
-- | ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
--
-- This is useful for pagination, for instance. If you have 100
-- executions for a workflow, you might only want to list first 10. If
-- so, call the API by specifying the max-results:
--
--
-- aws transfer list-executions --max-results 10
--
--
-- This returns details for the first 10 executions, as well as the
-- pointer (NextToken) to the eleventh execution. You can now
-- call the API again, supplying the NextToken value you
-- received:
--
--
-- aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult
--
--
-- This call returns the next 10 executions, the 11th through the 20th.
-- You can then repeat the call until the details for all 100 executions
-- have been returned.
[$sel:nextToken:ListExecutions'] :: ListExecutions -> Maybe Text
-- | A unique identifier for the workflow.
[$sel:workflowId:ListExecutions'] :: ListExecutions -> Text
-- | Create a value of ListExecutions with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListExecutions',
-- listExecutions_maxResults - Specifies the maximum number of
-- executions to return.
--
-- ListExecutions, listExecutions_nextToken -
-- ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
--
-- This is useful for pagination, for instance. If you have 100
-- executions for a workflow, you might only want to list first 10. If
-- so, call the API by specifying the max-results:
--
--
-- aws transfer list-executions --max-results 10
--
--
-- This returns details for the first 10 executions, as well as the
-- pointer (NextToken) to the eleventh execution. You can now
-- call the API again, supplying the NextToken value you
-- received:
--
--
-- aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult
--
--
-- This call returns the next 10 executions, the 11th through the 20th.
-- You can then repeat the call until the details for all 100 executions
-- have been returned.
--
-- ListExecutions, listExecutions_workflowId - A unique
-- identifier for the workflow.
newListExecutions :: Text -> ListExecutions
-- | Specifies the maximum number of executions to return.
listExecutions_maxResults :: Lens' ListExecutions (Maybe Natural)
-- | ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
--
-- This is useful for pagination, for instance. If you have 100
-- executions for a workflow, you might only want to list first 10. If
-- so, call the API by specifying the max-results:
--
--
-- aws transfer list-executions --max-results 10
--
--
-- This returns details for the first 10 executions, as well as the
-- pointer (NextToken) to the eleventh execution. You can now
-- call the API again, supplying the NextToken value you
-- received:
--
--
-- aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult
--
--
-- This call returns the next 10 executions, the 11th through the 20th.
-- You can then repeat the call until the details for all 100 executions
-- have been returned.
listExecutions_nextToken :: Lens' ListExecutions (Maybe Text)
-- | A unique identifier for the workflow.
listExecutions_workflowId :: Lens' ListExecutions Text
-- | See: newListExecutionsResponse smart constructor.
data ListExecutionsResponse
ListExecutionsResponse' :: Maybe Text -> Int -> Text -> [ListedExecution] -> ListExecutionsResponse
-- | ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
[$sel:nextToken:ListExecutionsResponse'] :: ListExecutionsResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListExecutionsResponse'] :: ListExecutionsResponse -> Int
-- | A unique identifier for the workflow.
[$sel:workflowId:ListExecutionsResponse'] :: ListExecutionsResponse -> Text
-- | Returns the details for each execution.
--
--
-- - NextToken: returned from a call to several APIs, you can
-- use pass it to a subsequent command to continue listing additional
-- executions.
-- - StartTime: timestamp indicating when the execution
-- began.
-- - Executions: details of the execution, including the
-- execution ID, initial file location, and Service metadata.
-- - Status: one of the following values: IN_PROGRESS,
-- COMPLETED, EXCEPTION,
-- HANDLING_EXEPTION.
--
[$sel:executions:ListExecutionsResponse'] :: ListExecutionsResponse -> [ListedExecution]
-- | Create a value of ListExecutionsResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListExecutions, listExecutionsResponse_nextToken -
-- ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
--
-- $sel:httpStatus:ListExecutionsResponse',
-- listExecutionsResponse_httpStatus - The response's http status
-- code.
--
-- ListExecutions, listExecutionsResponse_workflowId - A
-- unique identifier for the workflow.
--
-- $sel:executions:ListExecutionsResponse',
-- listExecutionsResponse_executions - Returns the details for
-- each execution.
--
--
-- - NextToken: returned from a call to several APIs, you can
-- use pass it to a subsequent command to continue listing additional
-- executions.
-- - StartTime: timestamp indicating when the execution
-- began.
-- - Executions: details of the execution, including the
-- execution ID, initial file location, and Service metadata.
-- - Status: one of the following values: IN_PROGRESS,
-- COMPLETED, EXCEPTION,
-- HANDLING_EXEPTION.
--
newListExecutionsResponse :: Int -> Text -> ListExecutionsResponse
-- | ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
listExecutionsResponse_nextToken :: Lens' ListExecutionsResponse (Maybe Text)
-- | The response's http status code.
listExecutionsResponse_httpStatus :: Lens' ListExecutionsResponse Int
-- | A unique identifier for the workflow.
listExecutionsResponse_workflowId :: Lens' ListExecutionsResponse Text
-- | Returns the details for each execution.
--
--
-- - NextToken: returned from a call to several APIs, you can
-- use pass it to a subsequent command to continue listing additional
-- executions.
-- - StartTime: timestamp indicating when the execution
-- began.
-- - Executions: details of the execution, including the
-- execution ID, initial file location, and Service metadata.
-- - Status: one of the following values: IN_PROGRESS,
-- COMPLETED, EXCEPTION,
-- HANDLING_EXEPTION.
--
listExecutionsResponse_executions :: Lens' ListExecutionsResponse [ListedExecution]
instance GHC.Generics.Generic Amazonka.Transfer.ListExecutions.ListExecutions
instance GHC.Show.Show Amazonka.Transfer.ListExecutions.ListExecutions
instance GHC.Read.Read Amazonka.Transfer.ListExecutions.ListExecutions
instance GHC.Classes.Eq Amazonka.Transfer.ListExecutions.ListExecutions
instance GHC.Generics.Generic Amazonka.Transfer.ListExecutions.ListExecutionsResponse
instance GHC.Show.Show Amazonka.Transfer.ListExecutions.ListExecutionsResponse
instance GHC.Read.Read Amazonka.Transfer.ListExecutions.ListExecutionsResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListExecutions.ListExecutionsResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListExecutions.ListExecutions
instance Control.DeepSeq.NFData Amazonka.Transfer.ListExecutions.ListExecutionsResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListExecutions.ListExecutions
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListExecutions.ListExecutions
instance Control.DeepSeq.NFData Amazonka.Transfer.ListExecutions.ListExecutions
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListExecutions.ListExecutions
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListExecutions.ListExecutions
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListExecutions.ListExecutions
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListExecutions.ListExecutions
-- | Lists the connectors for the specified Region.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListConnectors
-- | See: newListConnectors smart constructor.
data ListConnectors
ListConnectors' :: Maybe Natural -> Maybe Text -> ListConnectors
-- | The maximum number of connectors to return.
[$sel:maxResults:ListConnectors'] :: ListConnectors -> Maybe Natural
-- | When you can get additional results from the ListConnectors
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional connectors.
[$sel:nextToken:ListConnectors'] :: ListConnectors -> Maybe Text
-- | Create a value of ListConnectors with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListConnectors',
-- listConnectors_maxResults - The maximum number of connectors to
-- return.
--
-- ListConnectors, listConnectors_nextToken - When you can
-- get additional results from the ListConnectors call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional connectors.
newListConnectors :: ListConnectors
-- | The maximum number of connectors to return.
listConnectors_maxResults :: Lens' ListConnectors (Maybe Natural)
-- | When you can get additional results from the ListConnectors
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional connectors.
listConnectors_nextToken :: Lens' ListConnectors (Maybe Text)
-- | See: newListConnectorsResponse smart constructor.
data ListConnectorsResponse
ListConnectorsResponse' :: Maybe Text -> Int -> [ListedConnector] -> ListConnectorsResponse
-- | Returns a token that you can use to call ListConnectors again
-- and receive additional results, if there are any.
[$sel:nextToken:ListConnectorsResponse'] :: ListConnectorsResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListConnectorsResponse'] :: ListConnectorsResponse -> Int
-- | Returns an array, where each item contains the details of a connector.
[$sel:connectors:ListConnectorsResponse'] :: ListConnectorsResponse -> [ListedConnector]
-- | Create a value of ListConnectorsResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListConnectors, listConnectorsResponse_nextToken -
-- Returns a token that you can use to call ListConnectors again
-- and receive additional results, if there are any.
--
-- $sel:httpStatus:ListConnectorsResponse',
-- listConnectorsResponse_httpStatus - The response's http status
-- code.
--
-- $sel:connectors:ListConnectorsResponse',
-- listConnectorsResponse_connectors - Returns an array, where
-- each item contains the details of a connector.
newListConnectorsResponse :: Int -> ListConnectorsResponse
-- | Returns a token that you can use to call ListConnectors again
-- and receive additional results, if there are any.
listConnectorsResponse_nextToken :: Lens' ListConnectorsResponse (Maybe Text)
-- | The response's http status code.
listConnectorsResponse_httpStatus :: Lens' ListConnectorsResponse Int
-- | Returns an array, where each item contains the details of a connector.
listConnectorsResponse_connectors :: Lens' ListConnectorsResponse [ListedConnector]
instance GHC.Generics.Generic Amazonka.Transfer.ListConnectors.ListConnectors
instance GHC.Show.Show Amazonka.Transfer.ListConnectors.ListConnectors
instance GHC.Read.Read Amazonka.Transfer.ListConnectors.ListConnectors
instance GHC.Classes.Eq Amazonka.Transfer.ListConnectors.ListConnectors
instance GHC.Generics.Generic Amazonka.Transfer.ListConnectors.ListConnectorsResponse
instance GHC.Show.Show Amazonka.Transfer.ListConnectors.ListConnectorsResponse
instance GHC.Read.Read Amazonka.Transfer.ListConnectors.ListConnectorsResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListConnectors.ListConnectorsResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListConnectors.ListConnectors
instance Control.DeepSeq.NFData Amazonka.Transfer.ListConnectors.ListConnectorsResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListConnectors.ListConnectors
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListConnectors.ListConnectors
instance Control.DeepSeq.NFData Amazonka.Transfer.ListConnectors.ListConnectors
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListConnectors.ListConnectors
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListConnectors.ListConnectors
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListConnectors.ListConnectors
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListConnectors.ListConnectors
-- | Returns a list of the current certificates that have been imported
-- into Transfer Family. If you want to limit the results to a certain
-- number, supply a value for the MaxResults parameter. If you
-- ran the command previously and received a value for the
-- NextToken parameter, you can supply that value to continue
-- listing certificates from where you left off.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListCertificates
-- | See: newListCertificates smart constructor.
data ListCertificates
ListCertificates' :: Maybe Natural -> Maybe Text -> ListCertificates
-- | The maximum number of certificates to return.
[$sel:maxResults:ListCertificates'] :: ListCertificates -> Maybe Natural
-- | When you can get additional results from the ListCertificates
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional certificates.
[$sel:nextToken:ListCertificates'] :: ListCertificates -> Maybe Text
-- | Create a value of ListCertificates with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListCertificates',
-- listCertificates_maxResults - The maximum number of
-- certificates to return.
--
-- ListCertificates, listCertificates_nextToken - When you
-- can get additional results from the ListCertificates call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional certificates.
newListCertificates :: ListCertificates
-- | The maximum number of certificates to return.
listCertificates_maxResults :: Lens' ListCertificates (Maybe Natural)
-- | When you can get additional results from the ListCertificates
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional certificates.
listCertificates_nextToken :: Lens' ListCertificates (Maybe Text)
-- | See: newListCertificatesResponse smart constructor.
data ListCertificatesResponse
ListCertificatesResponse' :: Maybe Text -> Int -> [ListedCertificate] -> ListCertificatesResponse
-- | Returns the next token, which you can use to list the next
-- certificate.
[$sel:nextToken:ListCertificatesResponse'] :: ListCertificatesResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListCertificatesResponse'] :: ListCertificatesResponse -> Int
-- | Returns an array of the certificates that are specified in the
-- ListCertificates call.
[$sel:certificates:ListCertificatesResponse'] :: ListCertificatesResponse -> [ListedCertificate]
-- | Create a value of ListCertificatesResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListCertificates, listCertificatesResponse_nextToken -
-- Returns the next token, which you can use to list the next
-- certificate.
--
-- $sel:httpStatus:ListCertificatesResponse',
-- listCertificatesResponse_httpStatus - The response's http
-- status code.
--
-- $sel:certificates:ListCertificatesResponse',
-- listCertificatesResponse_certificates - Returns an array of the
-- certificates that are specified in the ListCertificates call.
newListCertificatesResponse :: Int -> ListCertificatesResponse
-- | Returns the next token, which you can use to list the next
-- certificate.
listCertificatesResponse_nextToken :: Lens' ListCertificatesResponse (Maybe Text)
-- | The response's http status code.
listCertificatesResponse_httpStatus :: Lens' ListCertificatesResponse Int
-- | Returns an array of the certificates that are specified in the
-- ListCertificates call.
listCertificatesResponse_certificates :: Lens' ListCertificatesResponse [ListedCertificate]
instance GHC.Generics.Generic Amazonka.Transfer.ListCertificates.ListCertificates
instance GHC.Show.Show Amazonka.Transfer.ListCertificates.ListCertificates
instance GHC.Read.Read Amazonka.Transfer.ListCertificates.ListCertificates
instance GHC.Classes.Eq Amazonka.Transfer.ListCertificates.ListCertificates
instance GHC.Generics.Generic Amazonka.Transfer.ListCertificates.ListCertificatesResponse
instance GHC.Show.Show Amazonka.Transfer.ListCertificates.ListCertificatesResponse
instance GHC.Read.Read Amazonka.Transfer.ListCertificates.ListCertificatesResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListCertificates.ListCertificatesResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListCertificates.ListCertificates
instance Control.DeepSeq.NFData Amazonka.Transfer.ListCertificates.ListCertificatesResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListCertificates.ListCertificates
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListCertificates.ListCertificates
instance Control.DeepSeq.NFData Amazonka.Transfer.ListCertificates.ListCertificates
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListCertificates.ListCertificates
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListCertificates.ListCertificates
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListCertificates.ListCertificates
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListCertificates.ListCertificates
-- | Returns a list of the agreements for the server that's identified by
-- the ServerId that you supply. If you want to limit the
-- results to a certain number, supply a value for the
-- MaxResults parameter. If you ran the command previously and
-- received a value for NextToken, you can supply that value to
-- continue listing agreements from where you left off.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListAgreements
-- | See: newListAgreements smart constructor.
data ListAgreements
ListAgreements' :: Maybe Natural -> Maybe Text -> Text -> ListAgreements
-- | The maximum number of agreements to return.
[$sel:maxResults:ListAgreements'] :: ListAgreements -> Maybe Natural
-- | When you can get additional results from the ListAgreements
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional agreements.
[$sel:nextToken:ListAgreements'] :: ListAgreements -> Maybe Text
-- | The identifier of the server for which you want a list of agreements.
[$sel:serverId:ListAgreements'] :: ListAgreements -> Text
-- | Create a value of ListAgreements with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListAgreements',
-- listAgreements_maxResults - The maximum number of agreements to
-- return.
--
-- ListAgreements, listAgreements_nextToken - When you can
-- get additional results from the ListAgreements call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional agreements.
--
-- ListAgreements, listAgreements_serverId - The identifier
-- of the server for which you want a list of agreements.
newListAgreements :: Text -> ListAgreements
-- | The maximum number of agreements to return.
listAgreements_maxResults :: Lens' ListAgreements (Maybe Natural)
-- | When you can get additional results from the ListAgreements
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional agreements.
listAgreements_nextToken :: Lens' ListAgreements (Maybe Text)
-- | The identifier of the server for which you want a list of agreements.
listAgreements_serverId :: Lens' ListAgreements Text
-- | See: newListAgreementsResponse smart constructor.
data ListAgreementsResponse
ListAgreementsResponse' :: Maybe Text -> Int -> [ListedAgreement] -> ListAgreementsResponse
-- | Returns a token that you can use to call ListAgreements again
-- and receive additional results, if there are any.
[$sel:nextToken:ListAgreementsResponse'] :: ListAgreementsResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListAgreementsResponse'] :: ListAgreementsResponse -> Int
-- | Returns an array, where each item contains the details of an
-- agreement.
[$sel:agreements:ListAgreementsResponse'] :: ListAgreementsResponse -> [ListedAgreement]
-- | Create a value of ListAgreementsResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListAgreements, listAgreementsResponse_nextToken -
-- Returns a token that you can use to call ListAgreements again
-- and receive additional results, if there are any.
--
-- $sel:httpStatus:ListAgreementsResponse',
-- listAgreementsResponse_httpStatus - The response's http status
-- code.
--
-- $sel:agreements:ListAgreementsResponse',
-- listAgreementsResponse_agreements - Returns an array, where
-- each item contains the details of an agreement.
newListAgreementsResponse :: Int -> ListAgreementsResponse
-- | Returns a token that you can use to call ListAgreements again
-- and receive additional results, if there are any.
listAgreementsResponse_nextToken :: Lens' ListAgreementsResponse (Maybe Text)
-- | The response's http status code.
listAgreementsResponse_httpStatus :: Lens' ListAgreementsResponse Int
-- | Returns an array, where each item contains the details of an
-- agreement.
listAgreementsResponse_agreements :: Lens' ListAgreementsResponse [ListedAgreement]
instance GHC.Generics.Generic Amazonka.Transfer.ListAgreements.ListAgreements
instance GHC.Show.Show Amazonka.Transfer.ListAgreements.ListAgreements
instance GHC.Read.Read Amazonka.Transfer.ListAgreements.ListAgreements
instance GHC.Classes.Eq Amazonka.Transfer.ListAgreements.ListAgreements
instance GHC.Generics.Generic Amazonka.Transfer.ListAgreements.ListAgreementsResponse
instance GHC.Show.Show Amazonka.Transfer.ListAgreements.ListAgreementsResponse
instance GHC.Read.Read Amazonka.Transfer.ListAgreements.ListAgreementsResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListAgreements.ListAgreementsResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListAgreements.ListAgreements
instance Control.DeepSeq.NFData Amazonka.Transfer.ListAgreements.ListAgreementsResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListAgreements.ListAgreements
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListAgreements.ListAgreements
instance Control.DeepSeq.NFData Amazonka.Transfer.ListAgreements.ListAgreements
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListAgreements.ListAgreements
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListAgreements.ListAgreements
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListAgreements.ListAgreements
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListAgreements.ListAgreements
-- | Lists the details for all the accesses you have on your server.
--
-- This operation returns paginated results.
module Amazonka.Transfer.ListAccesses
-- | See: newListAccesses smart constructor.
data ListAccesses
ListAccesses' :: Maybe Natural -> Maybe Text -> Text -> ListAccesses
-- | Specifies the maximum number of access SIDs to return.
[$sel:maxResults:ListAccesses'] :: ListAccesses -> Maybe Natural
-- | When you can get additional results from the ListAccesses
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional accesses.
[$sel:nextToken:ListAccesses'] :: ListAccesses -> Maybe Text
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
[$sel:serverId:ListAccesses'] :: ListAccesses -> Text
-- | Create a value of ListAccesses with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListAccesses', listAccesses_maxResults -
-- Specifies the maximum number of access SIDs to return.
--
-- ListAccesses, listAccesses_nextToken - When you can get
-- additional results from the ListAccesses call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional accesses.
--
-- ListAccesses, listAccesses_serverId - A system-assigned
-- unique identifier for a server that has users assigned to it.
newListAccesses :: Text -> ListAccesses
-- | Specifies the maximum number of access SIDs to return.
listAccesses_maxResults :: Lens' ListAccesses (Maybe Natural)
-- | When you can get additional results from the ListAccesses
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional accesses.
listAccesses_nextToken :: Lens' ListAccesses (Maybe Text)
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
listAccesses_serverId :: Lens' ListAccesses Text
-- | See: newListAccessesResponse smart constructor.
data ListAccessesResponse
ListAccessesResponse' :: Maybe Text -> Int -> Text -> [ListedAccess] -> ListAccessesResponse
-- | When you can get additional results from the ListAccesses
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional accesses.
[$sel:nextToken:ListAccessesResponse'] :: ListAccessesResponse -> Maybe Text
-- | The response's http status code.
[$sel:httpStatus:ListAccessesResponse'] :: ListAccessesResponse -> Int
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
[$sel:serverId:ListAccessesResponse'] :: ListAccessesResponse -> Text
-- | Returns the accesses and their properties for the ServerId
-- value that you specify.
[$sel:accesses:ListAccessesResponse'] :: ListAccessesResponse -> [ListedAccess]
-- | Create a value of ListAccessesResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListAccesses, listAccessesResponse_nextToken - When you
-- can get additional results from the ListAccesses call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional accesses.
--
-- $sel:httpStatus:ListAccessesResponse',
-- listAccessesResponse_httpStatus - The response's http status
-- code.
--
-- ListAccesses, listAccessesResponse_serverId - A
-- system-assigned unique identifier for a server that has users assigned
-- to it.
--
-- $sel:accesses:ListAccessesResponse',
-- listAccessesResponse_accesses - Returns the accesses and their
-- properties for the ServerId value that you specify.
newListAccessesResponse :: Int -> Text -> ListAccessesResponse
-- | When you can get additional results from the ListAccesses
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional accesses.
listAccessesResponse_nextToken :: Lens' ListAccessesResponse (Maybe Text)
-- | The response's http status code.
listAccessesResponse_httpStatus :: Lens' ListAccessesResponse Int
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
listAccessesResponse_serverId :: Lens' ListAccessesResponse Text
-- | Returns the accesses and their properties for the ServerId
-- value that you specify.
listAccessesResponse_accesses :: Lens' ListAccessesResponse [ListedAccess]
instance GHC.Generics.Generic Amazonka.Transfer.ListAccesses.ListAccesses
instance GHC.Show.Show Amazonka.Transfer.ListAccesses.ListAccesses
instance GHC.Read.Read Amazonka.Transfer.ListAccesses.ListAccesses
instance GHC.Classes.Eq Amazonka.Transfer.ListAccesses.ListAccesses
instance GHC.Generics.Generic Amazonka.Transfer.ListAccesses.ListAccessesResponse
instance GHC.Show.Show Amazonka.Transfer.ListAccesses.ListAccessesResponse
instance GHC.Read.Read Amazonka.Transfer.ListAccesses.ListAccessesResponse
instance GHC.Classes.Eq Amazonka.Transfer.ListAccesses.ListAccessesResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ListAccesses.ListAccesses
instance Control.DeepSeq.NFData Amazonka.Transfer.ListAccesses.ListAccessesResponse
instance Amazonka.Pager.AWSPager Amazonka.Transfer.ListAccesses.ListAccesses
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ListAccesses.ListAccesses
instance Control.DeepSeq.NFData Amazonka.Transfer.ListAccesses.ListAccesses
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ListAccesses.ListAccesses
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ListAccesses.ListAccesses
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ListAccesses.ListAccesses
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ListAccesses.ListAccesses
-- | Adds a Secure Shell (SSH) public key to a user account identified by a
-- UserName value assigned to the specific file transfer
-- protocol-enabled server, identified by ServerId.
--
-- The response returns the UserName value, the
-- ServerId value, and the name of the SshPublicKeyId.
module Amazonka.Transfer.ImportSshPublicKey
-- | See: newImportSshPublicKey smart constructor.
data ImportSshPublicKey
ImportSshPublicKey' :: Text -> Text -> Text -> ImportSshPublicKey
-- | A system-assigned unique identifier for a server.
[$sel:serverId:ImportSshPublicKey'] :: ImportSshPublicKey -> Text
-- | The public key portion of an SSH key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
[$sel:sshPublicKeyBody:ImportSshPublicKey'] :: ImportSshPublicKey -> Text
-- | The name of the user account that is assigned to one or more servers.
[$sel:userName:ImportSshPublicKey'] :: ImportSshPublicKey -> Text
-- | Create a value of ImportSshPublicKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ImportSshPublicKey, importSshPublicKey_serverId - A
-- system-assigned unique identifier for a server.
--
-- ImportSshPublicKey, importSshPublicKey_sshPublicKeyBody
-- - The public key portion of an SSH key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
--
-- ImportSshPublicKey, importSshPublicKey_userName - The
-- name of the user account that is assigned to one or more servers.
newImportSshPublicKey :: Text -> Text -> Text -> ImportSshPublicKey
-- | A system-assigned unique identifier for a server.
importSshPublicKey_serverId :: Lens' ImportSshPublicKey Text
-- | The public key portion of an SSH key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
importSshPublicKey_sshPublicKeyBody :: Lens' ImportSshPublicKey Text
-- | The name of the user account that is assigned to one or more servers.
importSshPublicKey_userName :: Lens' ImportSshPublicKey Text
-- | Identifies the user, the server they belong to, and the identifier of
-- the SSH public key associated with that user. A user can have more
-- than one key on each server that they are associated with.
--
-- See: newImportSshPublicKeyResponse smart constructor.
data ImportSshPublicKeyResponse
ImportSshPublicKeyResponse' :: Int -> Text -> Text -> Text -> ImportSshPublicKeyResponse
-- | The response's http status code.
[$sel:httpStatus:ImportSshPublicKeyResponse'] :: ImportSshPublicKeyResponse -> Int
-- | A system-assigned unique identifier for a server.
[$sel:serverId:ImportSshPublicKeyResponse'] :: ImportSshPublicKeyResponse -> Text
-- | The name given to a public key by the system that was imported.
[$sel:sshPublicKeyId:ImportSshPublicKeyResponse'] :: ImportSshPublicKeyResponse -> Text
-- | A user name assigned to the ServerID value that you
-- specified.
[$sel:userName:ImportSshPublicKeyResponse'] :: ImportSshPublicKeyResponse -> Text
-- | Create a value of ImportSshPublicKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:ImportSshPublicKeyResponse',
-- importSshPublicKeyResponse_httpStatus - The response's http
-- status code.
--
-- ImportSshPublicKey, importSshPublicKeyResponse_serverId
-- - A system-assigned unique identifier for a server.
--
-- ImportSshPublicKeyResponse,
-- importSshPublicKeyResponse_sshPublicKeyId - The name given to a
-- public key by the system that was imported.
--
-- ImportSshPublicKey, importSshPublicKeyResponse_userName
-- - A user name assigned to the ServerID value that you
-- specified.
newImportSshPublicKeyResponse :: Int -> Text -> Text -> Text -> ImportSshPublicKeyResponse
-- | The response's http status code.
importSshPublicKeyResponse_httpStatus :: Lens' ImportSshPublicKeyResponse Int
-- | A system-assigned unique identifier for a server.
importSshPublicKeyResponse_serverId :: Lens' ImportSshPublicKeyResponse Text
-- | The name given to a public key by the system that was imported.
importSshPublicKeyResponse_sshPublicKeyId :: Lens' ImportSshPublicKeyResponse Text
-- | A user name assigned to the ServerID value that you
-- specified.
importSshPublicKeyResponse_userName :: Lens' ImportSshPublicKeyResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance GHC.Show.Show Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance GHC.Read.Read Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance GHC.Classes.Eq Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance GHC.Generics.Generic Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKeyResponse
instance GHC.Show.Show Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKeyResponse
instance GHC.Read.Read Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKeyResponse
instance GHC.Classes.Eq Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKeyResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance Control.DeepSeq.NFData Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKeyResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance Control.DeepSeq.NFData Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ImportSshPublicKey.ImportSshPublicKey
-- | Adds a host key to the server that's specified by the
-- ServerId parameter.
module Amazonka.Transfer.ImportHostKey
-- | See: newImportHostKey smart constructor.
data ImportHostKey
ImportHostKey' :: Maybe Text -> Maybe (NonEmpty Tag) -> Text -> Sensitive Text -> ImportHostKey
-- | The text description that identifies this host key.
[$sel:description:ImportHostKey'] :: ImportHostKey -> Maybe Text
-- | Key-value pairs that can be used to group and search for host keys.
[$sel:tags:ImportHostKey'] :: ImportHostKey -> Maybe (NonEmpty Tag)
-- | The identifier of the server that contains the host key that you are
-- importing.
[$sel:serverId:ImportHostKey'] :: ImportHostKey -> Text
-- | The public key portion of an SSH key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
[$sel:hostKeyBody:ImportHostKey'] :: ImportHostKey -> Sensitive Text
-- | Create a value of ImportHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ImportHostKey, importHostKey_description - The text
-- description that identifies this host key.
--
-- ImportHostKey, importHostKey_tags - Key-value pairs that
-- can be used to group and search for host keys.
--
-- ImportHostKey, importHostKey_serverId - The identifier
-- of the server that contains the host key that you are importing.
--
-- $sel:hostKeyBody:ImportHostKey',
-- importHostKey_hostKeyBody - The public key portion of an SSH
-- key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
newImportHostKey :: Text -> Text -> ImportHostKey
-- | The text description that identifies this host key.
importHostKey_description :: Lens' ImportHostKey (Maybe Text)
-- | Key-value pairs that can be used to group and search for host keys.
importHostKey_tags :: Lens' ImportHostKey (Maybe (NonEmpty Tag))
-- | The identifier of the server that contains the host key that you are
-- importing.
importHostKey_serverId :: Lens' ImportHostKey Text
-- | The public key portion of an SSH key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
importHostKey_hostKeyBody :: Lens' ImportHostKey Text
-- | See: newImportHostKeyResponse smart constructor.
data ImportHostKeyResponse
ImportHostKeyResponse' :: Int -> Text -> Text -> ImportHostKeyResponse
-- | The response's http status code.
[$sel:httpStatus:ImportHostKeyResponse'] :: ImportHostKeyResponse -> Int
-- | Returns the server identifier that contains the imported key.
[$sel:serverId:ImportHostKeyResponse'] :: ImportHostKeyResponse -> Text
-- | Returns the host key identifier for the imported key.
[$sel:hostKeyId:ImportHostKeyResponse'] :: ImportHostKeyResponse -> Text
-- | Create a value of ImportHostKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:ImportHostKeyResponse',
-- importHostKeyResponse_httpStatus - The response's http status
-- code.
--
-- ImportHostKey, importHostKeyResponse_serverId - Returns
-- the server identifier that contains the imported key.
--
-- ImportHostKeyResponse, importHostKeyResponse_hostKeyId -
-- Returns the host key identifier for the imported key.
newImportHostKeyResponse :: Int -> Text -> Text -> ImportHostKeyResponse
-- | The response's http status code.
importHostKeyResponse_httpStatus :: Lens' ImportHostKeyResponse Int
-- | Returns the server identifier that contains the imported key.
importHostKeyResponse_serverId :: Lens' ImportHostKeyResponse Text
-- | Returns the host key identifier for the imported key.
importHostKeyResponse_hostKeyId :: Lens' ImportHostKeyResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.ImportHostKey.ImportHostKey
instance GHC.Show.Show Amazonka.Transfer.ImportHostKey.ImportHostKey
instance GHC.Classes.Eq Amazonka.Transfer.ImportHostKey.ImportHostKey
instance GHC.Generics.Generic Amazonka.Transfer.ImportHostKey.ImportHostKeyResponse
instance GHC.Show.Show Amazonka.Transfer.ImportHostKey.ImportHostKeyResponse
instance GHC.Read.Read Amazonka.Transfer.ImportHostKey.ImportHostKeyResponse
instance GHC.Classes.Eq Amazonka.Transfer.ImportHostKey.ImportHostKeyResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ImportHostKey.ImportHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.ImportHostKey.ImportHostKeyResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ImportHostKey.ImportHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.ImportHostKey.ImportHostKey
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ImportHostKey.ImportHostKey
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ImportHostKey.ImportHostKey
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ImportHostKey.ImportHostKey
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ImportHostKey.ImportHostKey
-- | Imports the signing and encryption certificates that you need to
-- create local (AS2) profiles and partner profiles.
module Amazonka.Transfer.ImportCertificate
-- | See: newImportCertificate smart constructor.
data ImportCertificate
ImportCertificate' :: Maybe POSIX -> Maybe (Sensitive Text) -> Maybe Text -> Maybe POSIX -> Maybe (Sensitive Text) -> Maybe (NonEmpty Tag) -> CertificateUsageType -> Sensitive Text -> ImportCertificate
-- | An optional date that specifies when the certificate becomes active.
[$sel:activeDate:ImportCertificate'] :: ImportCertificate -> Maybe POSIX
-- | An optional list of certificates that make up the chain for the
-- certificate that's being imported.
[$sel:certificateChain:ImportCertificate'] :: ImportCertificate -> Maybe (Sensitive Text)
-- | A short description that helps identify the certificate.
[$sel:description:ImportCertificate'] :: ImportCertificate -> Maybe Text
-- | An optional date that specifies when the certificate becomes inactive.
[$sel:inactiveDate:ImportCertificate'] :: ImportCertificate -> Maybe POSIX
-- | The file that contains the private key for the certificate that's
-- being imported.
[$sel:privateKey:ImportCertificate'] :: ImportCertificate -> Maybe (Sensitive Text)
-- | Key-value pairs that can be used to group and search for certificates.
[$sel:tags:ImportCertificate'] :: ImportCertificate -> Maybe (NonEmpty Tag)
-- | Specifies whether this certificate is used for signing or encryption.
[$sel:usage:ImportCertificate'] :: ImportCertificate -> CertificateUsageType
-- | The file that contains the certificate to import.
[$sel:certificate:ImportCertificate'] :: ImportCertificate -> Sensitive Text
-- | Create a value of ImportCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ImportCertificate, importCertificate_activeDate - An
-- optional date that specifies when the certificate becomes active.
--
-- ImportCertificate, importCertificate_certificateChain -
-- An optional list of certificates that make up the chain for the
-- certificate that's being imported.
--
-- ImportCertificate, importCertificate_description - A
-- short description that helps identify the certificate.
--
-- ImportCertificate, importCertificate_inactiveDate - An
-- optional date that specifies when the certificate becomes inactive.
--
-- $sel:privateKey:ImportCertificate',
-- importCertificate_privateKey - The file that contains the
-- private key for the certificate that's being imported.
--
-- ImportCertificate, importCertificate_tags - Key-value
-- pairs that can be used to group and search for certificates.
--
-- ImportCertificate, importCertificate_usage - Specifies
-- whether this certificate is used for signing or encryption.
--
-- ImportCertificate, importCertificate_certificate - The
-- file that contains the certificate to import.
newImportCertificate :: CertificateUsageType -> Text -> ImportCertificate
-- | An optional date that specifies when the certificate becomes active.
importCertificate_activeDate :: Lens' ImportCertificate (Maybe UTCTime)
-- | An optional list of certificates that make up the chain for the
-- certificate that's being imported.
importCertificate_certificateChain :: Lens' ImportCertificate (Maybe Text)
-- | A short description that helps identify the certificate.
importCertificate_description :: Lens' ImportCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
importCertificate_inactiveDate :: Lens' ImportCertificate (Maybe UTCTime)
-- | The file that contains the private key for the certificate that's
-- being imported.
importCertificate_privateKey :: Lens' ImportCertificate (Maybe Text)
-- | Key-value pairs that can be used to group and search for certificates.
importCertificate_tags :: Lens' ImportCertificate (Maybe (NonEmpty Tag))
-- | Specifies whether this certificate is used for signing or encryption.
importCertificate_usage :: Lens' ImportCertificate CertificateUsageType
-- | The file that contains the certificate to import.
importCertificate_certificate :: Lens' ImportCertificate Text
-- | See: newImportCertificateResponse smart constructor.
data ImportCertificateResponse
ImportCertificateResponse' :: Int -> Text -> ImportCertificateResponse
-- | The response's http status code.
[$sel:httpStatus:ImportCertificateResponse'] :: ImportCertificateResponse -> Int
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateId:ImportCertificateResponse'] :: ImportCertificateResponse -> Text
-- | Create a value of ImportCertificateResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:ImportCertificateResponse',
-- importCertificateResponse_httpStatus - The response's http
-- status code.
--
-- ImportCertificateResponse,
-- importCertificateResponse_certificateId - An array of
-- identifiers for the imported certificates. You use this identifier for
-- working with profiles and partner profiles.
newImportCertificateResponse :: Int -> Text -> ImportCertificateResponse
-- | The response's http status code.
importCertificateResponse_httpStatus :: Lens' ImportCertificateResponse Int
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
importCertificateResponse_certificateId :: Lens' ImportCertificateResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.ImportCertificate.ImportCertificate
instance GHC.Show.Show Amazonka.Transfer.ImportCertificate.ImportCertificate
instance GHC.Classes.Eq Amazonka.Transfer.ImportCertificate.ImportCertificate
instance GHC.Generics.Generic Amazonka.Transfer.ImportCertificate.ImportCertificateResponse
instance GHC.Show.Show Amazonka.Transfer.ImportCertificate.ImportCertificateResponse
instance GHC.Read.Read Amazonka.Transfer.ImportCertificate.ImportCertificateResponse
instance GHC.Classes.Eq Amazonka.Transfer.ImportCertificate.ImportCertificateResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.ImportCertificate.ImportCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.ImportCertificate.ImportCertificateResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.ImportCertificate.ImportCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.ImportCertificate.ImportCertificate
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.ImportCertificate.ImportCertificate
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.ImportCertificate.ImportCertificate
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.ImportCertificate.ImportCertificate
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.ImportCertificate.ImportCertificate
-- | Describes the specified workflow.
module Amazonka.Transfer.DescribeWorkflow
-- | See: newDescribeWorkflow smart constructor.
data DescribeWorkflow
DescribeWorkflow' :: Text -> DescribeWorkflow
-- | A unique identifier for the workflow.
[$sel:workflowId:DescribeWorkflow'] :: DescribeWorkflow -> Text
-- | Create a value of DescribeWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeWorkflow, describeWorkflow_workflowId - A unique
-- identifier for the workflow.
newDescribeWorkflow :: Text -> DescribeWorkflow
-- | A unique identifier for the workflow.
describeWorkflow_workflowId :: Lens' DescribeWorkflow Text
-- | See: newDescribeWorkflowResponse smart constructor.
data DescribeWorkflowResponse
DescribeWorkflowResponse' :: Int -> DescribedWorkflow -> DescribeWorkflowResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeWorkflowResponse'] :: DescribeWorkflowResponse -> Int
-- | The structure that contains the details of the workflow.
[$sel:workflow:DescribeWorkflowResponse'] :: DescribeWorkflowResponse -> DescribedWorkflow
-- | Create a value of DescribeWorkflowResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeWorkflowResponse',
-- describeWorkflowResponse_httpStatus - The response's http
-- status code.
--
-- $sel:workflow:DescribeWorkflowResponse',
-- describeWorkflowResponse_workflow - The structure that contains
-- the details of the workflow.
newDescribeWorkflowResponse :: Int -> DescribedWorkflow -> DescribeWorkflowResponse
-- | The response's http status code.
describeWorkflowResponse_httpStatus :: Lens' DescribeWorkflowResponse Int
-- | The structure that contains the details of the workflow.
describeWorkflowResponse_workflow :: Lens' DescribeWorkflowResponse DescribedWorkflow
instance GHC.Generics.Generic Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance GHC.Show.Show Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance GHC.Read.Read Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance GHC.Classes.Eq Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance GHC.Generics.Generic Amazonka.Transfer.DescribeWorkflow.DescribeWorkflowResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeWorkflow.DescribeWorkflowResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeWorkflow.DescribeWorkflowResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeWorkflow.DescribeWorkflowResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeWorkflow.DescribeWorkflowResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeWorkflow.DescribeWorkflow
-- | Describes the user assigned to the specific file transfer
-- protocol-enabled server, as identified by its ServerId
-- property.
--
-- The response from this call returns the properties of the user
-- associated with the ServerId value that was specified.
module Amazonka.Transfer.DescribeUser
-- | See: newDescribeUser smart constructor.
data DescribeUser
DescribeUser' :: Text -> Text -> DescribeUser
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
[$sel:serverId:DescribeUser'] :: DescribeUser -> Text
-- | The name of the user assigned to one or more servers. User names are
-- part of the sign-in credentials to use the Transfer Family service and
-- perform file transfer tasks.
[$sel:userName:DescribeUser'] :: DescribeUser -> Text
-- | Create a value of DescribeUser with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeUser, describeUser_serverId - A system-assigned
-- unique identifier for a server that has this user assigned.
--
-- DescribeUser, describeUser_userName - The name of the
-- user assigned to one or more servers. User names are part of the
-- sign-in credentials to use the Transfer Family service and perform
-- file transfer tasks.
newDescribeUser :: Text -> Text -> DescribeUser
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
describeUser_serverId :: Lens' DescribeUser Text
-- | The name of the user assigned to one or more servers. User names are
-- part of the sign-in credentials to use the Transfer Family service and
-- perform file transfer tasks.
describeUser_userName :: Lens' DescribeUser Text
-- | See: newDescribeUserResponse smart constructor.
data DescribeUserResponse
DescribeUserResponse' :: Int -> Text -> DescribedUser -> DescribeUserResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeUserResponse'] :: DescribeUserResponse -> Int
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
[$sel:serverId:DescribeUserResponse'] :: DescribeUserResponse -> Text
-- | An array containing the properties of the user account for the
-- ServerID value that you specified.
[$sel:user:DescribeUserResponse'] :: DescribeUserResponse -> DescribedUser
-- | Create a value of DescribeUserResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeUserResponse',
-- describeUserResponse_httpStatus - The response's http status
-- code.
--
-- DescribeUser, describeUserResponse_serverId - A
-- system-assigned unique identifier for a server that has this user
-- assigned.
--
-- $sel:user:DescribeUserResponse',
-- describeUserResponse_user - An array containing the properties
-- of the user account for the ServerID value that you
-- specified.
newDescribeUserResponse :: Int -> Text -> DescribedUser -> DescribeUserResponse
-- | The response's http status code.
describeUserResponse_httpStatus :: Lens' DescribeUserResponse Int
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
describeUserResponse_serverId :: Lens' DescribeUserResponse Text
-- | An array containing the properties of the user account for the
-- ServerID value that you specified.
describeUserResponse_user :: Lens' DescribeUserResponse DescribedUser
instance GHC.Generics.Generic Amazonka.Transfer.DescribeUser.DescribeUser
instance GHC.Show.Show Amazonka.Transfer.DescribeUser.DescribeUser
instance GHC.Read.Read Amazonka.Transfer.DescribeUser.DescribeUser
instance GHC.Classes.Eq Amazonka.Transfer.DescribeUser.DescribeUser
instance GHC.Generics.Generic Amazonka.Transfer.DescribeUser.DescribeUserResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeUser.DescribeUserResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeUser.DescribeUserResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeUser.DescribeUserResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeUser.DescribeUser
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeUser.DescribeUserResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeUser.DescribeUser
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeUser.DescribeUser
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeUser.DescribeUser
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeUser.DescribeUser
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeUser.DescribeUser
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeUser.DescribeUser
-- | Describes a file transfer protocol-enabled server that you specify by
-- passing the ServerId parameter.
--
-- The response contains a description of a server's properties. When you
-- set EndpointType to VPC, the response will contain the
-- EndpointDetails.
module Amazonka.Transfer.DescribeServer
-- | See: newDescribeServer smart constructor.
data DescribeServer
DescribeServer' :: Text -> DescribeServer
-- | A system-assigned unique identifier for a server.
[$sel:serverId:DescribeServer'] :: DescribeServer -> Text
-- | Create a value of DescribeServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeServer, describeServer_serverId - A
-- system-assigned unique identifier for a server.
newDescribeServer :: Text -> DescribeServer
-- | A system-assigned unique identifier for a server.
describeServer_serverId :: Lens' DescribeServer Text
-- | See: newDescribeServerResponse smart constructor.
data DescribeServerResponse
DescribeServerResponse' :: Int -> DescribedServer -> DescribeServerResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeServerResponse'] :: DescribeServerResponse -> Int
-- | An array containing the properties of a server with the
-- ServerID you specified.
[$sel:server:DescribeServerResponse'] :: DescribeServerResponse -> DescribedServer
-- | Create a value of DescribeServerResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeServerResponse',
-- describeServerResponse_httpStatus - The response's http status
-- code.
--
-- $sel:server:DescribeServerResponse',
-- describeServerResponse_server - An array containing the
-- properties of a server with the ServerID you specified.
newDescribeServerResponse :: Int -> DescribedServer -> DescribeServerResponse
-- | The response's http status code.
describeServerResponse_httpStatus :: Lens' DescribeServerResponse Int
-- | An array containing the properties of a server with the
-- ServerID you specified.
describeServerResponse_server :: Lens' DescribeServerResponse DescribedServer
instance GHC.Generics.Generic Amazonka.Transfer.DescribeServer.DescribeServer
instance GHC.Show.Show Amazonka.Transfer.DescribeServer.DescribeServer
instance GHC.Read.Read Amazonka.Transfer.DescribeServer.DescribeServer
instance GHC.Classes.Eq Amazonka.Transfer.DescribeServer.DescribeServer
instance GHC.Generics.Generic Amazonka.Transfer.DescribeServer.DescribeServerResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeServer.DescribeServerResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeServer.DescribeServerResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeServer.DescribeServerResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeServer.DescribeServer
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeServer.DescribeServerResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeServer.DescribeServer
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeServer.DescribeServer
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeServer.DescribeServer
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeServer.DescribeServer
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeServer.DescribeServer
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeServer.DescribeServer
-- | Describes the security policy that is attached to your file transfer
-- protocol-enabled server. The response contains a description of the
-- security policy's properties. For more information about security
-- policies, see Working with security policies.
module Amazonka.Transfer.DescribeSecurityPolicy
-- | See: newDescribeSecurityPolicy smart constructor.
data DescribeSecurityPolicy
DescribeSecurityPolicy' :: Text -> DescribeSecurityPolicy
-- | Specifies the name of the security policy that is attached to the
-- server.
[$sel:securityPolicyName:DescribeSecurityPolicy'] :: DescribeSecurityPolicy -> Text
-- | Create a value of DescribeSecurityPolicy with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeSecurityPolicy,
-- describeSecurityPolicy_securityPolicyName - Specifies the name
-- of the security policy that is attached to the server.
newDescribeSecurityPolicy :: Text -> DescribeSecurityPolicy
-- | Specifies the name of the security policy that is attached to the
-- server.
describeSecurityPolicy_securityPolicyName :: Lens' DescribeSecurityPolicy Text
-- | See: newDescribeSecurityPolicyResponse smart
-- constructor.
data DescribeSecurityPolicyResponse
DescribeSecurityPolicyResponse' :: Int -> DescribedSecurityPolicy -> DescribeSecurityPolicyResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeSecurityPolicyResponse'] :: DescribeSecurityPolicyResponse -> Int
-- | An array containing the properties of the security policy.
[$sel:securityPolicy:DescribeSecurityPolicyResponse'] :: DescribeSecurityPolicyResponse -> DescribedSecurityPolicy
-- | Create a value of DescribeSecurityPolicyResponse with all
-- optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeSecurityPolicyResponse',
-- describeSecurityPolicyResponse_httpStatus - The response's http
-- status code.
--
-- $sel:securityPolicy:DescribeSecurityPolicyResponse',
-- describeSecurityPolicyResponse_securityPolicy - An array
-- containing the properties of the security policy.
newDescribeSecurityPolicyResponse :: Int -> DescribedSecurityPolicy -> DescribeSecurityPolicyResponse
-- | The response's http status code.
describeSecurityPolicyResponse_httpStatus :: Lens' DescribeSecurityPolicyResponse Int
-- | An array containing the properties of the security policy.
describeSecurityPolicyResponse_securityPolicy :: Lens' DescribeSecurityPolicyResponse DescribedSecurityPolicy
instance GHC.Generics.Generic Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance GHC.Show.Show Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance GHC.Read.Read Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance GHC.Classes.Eq Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance GHC.Generics.Generic Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicyResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicyResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicyResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicyResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicyResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeSecurityPolicy.DescribeSecurityPolicy
-- | Returns the details of the profile that's specified by the
-- ProfileId.
module Amazonka.Transfer.DescribeProfile
-- | See: newDescribeProfile smart constructor.
data DescribeProfile
DescribeProfile' :: Text -> DescribeProfile
-- | The identifier of the profile that you want described.
[$sel:profileId:DescribeProfile'] :: DescribeProfile -> Text
-- | Create a value of DescribeProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeProfile, describeProfile_profileId - The
-- identifier of the profile that you want described.
newDescribeProfile :: Text -> DescribeProfile
-- | The identifier of the profile that you want described.
describeProfile_profileId :: Lens' DescribeProfile Text
-- | See: newDescribeProfileResponse smart constructor.
data DescribeProfileResponse
DescribeProfileResponse' :: Int -> DescribedProfile -> DescribeProfileResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeProfileResponse'] :: DescribeProfileResponse -> Int
-- | The details of the specified profile, returned as an object.
[$sel:profile:DescribeProfileResponse'] :: DescribeProfileResponse -> DescribedProfile
-- | Create a value of DescribeProfileResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeProfileResponse',
-- describeProfileResponse_httpStatus - The response's http status
-- code.
--
-- $sel:profile:DescribeProfileResponse',
-- describeProfileResponse_profile - The details of the specified
-- profile, returned as an object.
newDescribeProfileResponse :: Int -> DescribedProfile -> DescribeProfileResponse
-- | The response's http status code.
describeProfileResponse_httpStatus :: Lens' DescribeProfileResponse Int
-- | The details of the specified profile, returned as an object.
describeProfileResponse_profile :: Lens' DescribeProfileResponse DescribedProfile
instance GHC.Generics.Generic Amazonka.Transfer.DescribeProfile.DescribeProfile
instance GHC.Show.Show Amazonka.Transfer.DescribeProfile.DescribeProfile
instance GHC.Read.Read Amazonka.Transfer.DescribeProfile.DescribeProfile
instance GHC.Classes.Eq Amazonka.Transfer.DescribeProfile.DescribeProfile
instance GHC.Generics.Generic Amazonka.Transfer.DescribeProfile.DescribeProfileResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeProfile.DescribeProfileResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeProfile.DescribeProfileResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeProfile.DescribeProfileResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeProfile.DescribeProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeProfile.DescribeProfileResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeProfile.DescribeProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeProfile.DescribeProfile
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeProfile.DescribeProfile
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeProfile.DescribeProfile
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeProfile.DescribeProfile
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeProfile.DescribeProfile
-- | Returns the details of the host key that's specified by the
-- HostKeyId and ServerId.
module Amazonka.Transfer.DescribeHostKey
-- | See: newDescribeHostKey smart constructor.
data DescribeHostKey
DescribeHostKey' :: Text -> Text -> DescribeHostKey
-- | The identifier of the server that contains the host key that you want
-- described.
[$sel:serverId:DescribeHostKey'] :: DescribeHostKey -> Text
-- | The identifier of the host key that you want described.
[$sel:hostKeyId:DescribeHostKey'] :: DescribeHostKey -> Text
-- | Create a value of DescribeHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeHostKey, describeHostKey_serverId - The
-- identifier of the server that contains the host key that you want
-- described.
--
-- DescribeHostKey, describeHostKey_hostKeyId - The
-- identifier of the host key that you want described.
newDescribeHostKey :: Text -> Text -> DescribeHostKey
-- | The identifier of the server that contains the host key that you want
-- described.
describeHostKey_serverId :: Lens' DescribeHostKey Text
-- | The identifier of the host key that you want described.
describeHostKey_hostKeyId :: Lens' DescribeHostKey Text
-- | See: newDescribeHostKeyResponse smart constructor.
data DescribeHostKeyResponse
DescribeHostKeyResponse' :: Int -> DescribedHostKey -> DescribeHostKeyResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeHostKeyResponse'] :: DescribeHostKeyResponse -> Int
-- | Returns the details for the specified host key.
[$sel:hostKey:DescribeHostKeyResponse'] :: DescribeHostKeyResponse -> DescribedHostKey
-- | Create a value of DescribeHostKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeHostKeyResponse',
-- describeHostKeyResponse_httpStatus - The response's http status
-- code.
--
-- $sel:hostKey:DescribeHostKeyResponse',
-- describeHostKeyResponse_hostKey - Returns the details for the
-- specified host key.
newDescribeHostKeyResponse :: Int -> DescribedHostKey -> DescribeHostKeyResponse
-- | The response's http status code.
describeHostKeyResponse_httpStatus :: Lens' DescribeHostKeyResponse Int
-- | Returns the details for the specified host key.
describeHostKeyResponse_hostKey :: Lens' DescribeHostKeyResponse DescribedHostKey
instance GHC.Generics.Generic Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance GHC.Show.Show Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance GHC.Read.Read Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance GHC.Classes.Eq Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance GHC.Generics.Generic Amazonka.Transfer.DescribeHostKey.DescribeHostKeyResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeHostKey.DescribeHostKeyResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeHostKey.DescribeHostKeyResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeHostKey.DescribeHostKeyResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeHostKey.DescribeHostKeyResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeHostKey.DescribeHostKey
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeHostKey.DescribeHostKey
-- | You can use DescribeExecution to check the details of the
-- execution of the specified workflow.
module Amazonka.Transfer.DescribeExecution
-- | See: newDescribeExecution smart constructor.
data DescribeExecution
DescribeExecution' :: Text -> Text -> DescribeExecution
-- | A unique identifier for the execution of a workflow.
[$sel:executionId:DescribeExecution'] :: DescribeExecution -> Text
-- | A unique identifier for the workflow.
[$sel:workflowId:DescribeExecution'] :: DescribeExecution -> Text
-- | Create a value of DescribeExecution with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeExecution, describeExecution_executionId - A
-- unique identifier for the execution of a workflow.
--
-- DescribeExecution, describeExecution_workflowId - A
-- unique identifier for the workflow.
newDescribeExecution :: Text -> Text -> DescribeExecution
-- | A unique identifier for the execution of a workflow.
describeExecution_executionId :: Lens' DescribeExecution Text
-- | A unique identifier for the workflow.
describeExecution_workflowId :: Lens' DescribeExecution Text
-- | See: newDescribeExecutionResponse smart constructor.
data DescribeExecutionResponse
DescribeExecutionResponse' :: Int -> Text -> DescribedExecution -> DescribeExecutionResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeExecutionResponse'] :: DescribeExecutionResponse -> Int
-- | A unique identifier for the workflow.
[$sel:workflowId:DescribeExecutionResponse'] :: DescribeExecutionResponse -> Text
-- | The structure that contains the details of the workflow' execution.
[$sel:execution:DescribeExecutionResponse'] :: DescribeExecutionResponse -> DescribedExecution
-- | Create a value of DescribeExecutionResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeExecutionResponse',
-- describeExecutionResponse_httpStatus - The response's http
-- status code.
--
-- DescribeExecution, describeExecutionResponse_workflowId
-- - A unique identifier for the workflow.
--
-- $sel:execution:DescribeExecutionResponse',
-- describeExecutionResponse_execution - The structure that
-- contains the details of the workflow' execution.
newDescribeExecutionResponse :: Int -> Text -> DescribedExecution -> DescribeExecutionResponse
-- | The response's http status code.
describeExecutionResponse_httpStatus :: Lens' DescribeExecutionResponse Int
-- | A unique identifier for the workflow.
describeExecutionResponse_workflowId :: Lens' DescribeExecutionResponse Text
-- | The structure that contains the details of the workflow' execution.
describeExecutionResponse_execution :: Lens' DescribeExecutionResponse DescribedExecution
instance GHC.Generics.Generic Amazonka.Transfer.DescribeExecution.DescribeExecution
instance GHC.Show.Show Amazonka.Transfer.DescribeExecution.DescribeExecution
instance GHC.Read.Read Amazonka.Transfer.DescribeExecution.DescribeExecution
instance GHC.Classes.Eq Amazonka.Transfer.DescribeExecution.DescribeExecution
instance GHC.Generics.Generic Amazonka.Transfer.DescribeExecution.DescribeExecutionResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeExecution.DescribeExecutionResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeExecution.DescribeExecutionResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeExecution.DescribeExecutionResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeExecution.DescribeExecution
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeExecution.DescribeExecutionResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeExecution.DescribeExecution
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeExecution.DescribeExecution
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeExecution.DescribeExecution
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeExecution.DescribeExecution
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeExecution.DescribeExecution
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeExecution.DescribeExecution
-- | Describes the connector that's identified by the ConnectorId.
module Amazonka.Transfer.DescribeConnector
-- | See: newDescribeConnector smart constructor.
data DescribeConnector
DescribeConnector' :: Text -> DescribeConnector
-- | The unique identifier for the connector.
[$sel:connectorId:DescribeConnector'] :: DescribeConnector -> Text
-- | Create a value of DescribeConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeConnector, describeConnector_connectorId - The
-- unique identifier for the connector.
newDescribeConnector :: Text -> DescribeConnector
-- | The unique identifier for the connector.
describeConnector_connectorId :: Lens' DescribeConnector Text
-- | See: newDescribeConnectorResponse smart constructor.
data DescribeConnectorResponse
DescribeConnectorResponse' :: Int -> DescribedConnector -> DescribeConnectorResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeConnectorResponse'] :: DescribeConnectorResponse -> Int
-- | The structure that contains the details of the connector.
[$sel:connector:DescribeConnectorResponse'] :: DescribeConnectorResponse -> DescribedConnector
-- | Create a value of DescribeConnectorResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeConnectorResponse',
-- describeConnectorResponse_httpStatus - The response's http
-- status code.
--
-- $sel:connector:DescribeConnectorResponse',
-- describeConnectorResponse_connector - The structure that
-- contains the details of the connector.
newDescribeConnectorResponse :: Int -> DescribedConnector -> DescribeConnectorResponse
-- | The response's http status code.
describeConnectorResponse_httpStatus :: Lens' DescribeConnectorResponse Int
-- | The structure that contains the details of the connector.
describeConnectorResponse_connector :: Lens' DescribeConnectorResponse DescribedConnector
instance GHC.Generics.Generic Amazonka.Transfer.DescribeConnector.DescribeConnector
instance GHC.Show.Show Amazonka.Transfer.DescribeConnector.DescribeConnector
instance GHC.Read.Read Amazonka.Transfer.DescribeConnector.DescribeConnector
instance GHC.Classes.Eq Amazonka.Transfer.DescribeConnector.DescribeConnector
instance GHC.Generics.Generic Amazonka.Transfer.DescribeConnector.DescribeConnectorResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeConnector.DescribeConnectorResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeConnector.DescribeConnectorResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeConnector.DescribeConnectorResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeConnector.DescribeConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeConnector.DescribeConnectorResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeConnector.DescribeConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeConnector.DescribeConnector
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeConnector.DescribeConnector
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeConnector.DescribeConnector
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeConnector.DescribeConnector
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeConnector.DescribeConnector
-- | Describes the certificate that's identified by the
-- CertificateId.
module Amazonka.Transfer.DescribeCertificate
-- | See: newDescribeCertificate smart constructor.
data DescribeCertificate
DescribeCertificate' :: Text -> DescribeCertificate
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateId:DescribeCertificate'] :: DescribeCertificate -> Text
-- | Create a value of DescribeCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeCertificate, describeCertificate_certificateId -
-- An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
newDescribeCertificate :: Text -> DescribeCertificate
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
describeCertificate_certificateId :: Lens' DescribeCertificate Text
-- | See: newDescribeCertificateResponse smart constructor.
data DescribeCertificateResponse
DescribeCertificateResponse' :: Int -> DescribedCertificate -> DescribeCertificateResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeCertificateResponse'] :: DescribeCertificateResponse -> Int
-- | The details for the specified certificate, returned as an object.
[$sel:certificate:DescribeCertificateResponse'] :: DescribeCertificateResponse -> DescribedCertificate
-- | Create a value of DescribeCertificateResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeCertificateResponse',
-- describeCertificateResponse_httpStatus - The response's http
-- status code.
--
-- DescribeCertificateResponse,
-- describeCertificateResponse_certificate - The details for the
-- specified certificate, returned as an object.
newDescribeCertificateResponse :: Int -> DescribedCertificate -> DescribeCertificateResponse
-- | The response's http status code.
describeCertificateResponse_httpStatus :: Lens' DescribeCertificateResponse Int
-- | The details for the specified certificate, returned as an object.
describeCertificateResponse_certificate :: Lens' DescribeCertificateResponse DescribedCertificate
instance GHC.Generics.Generic Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance GHC.Show.Show Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance GHC.Read.Read Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance GHC.Classes.Eq Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance GHC.Generics.Generic Amazonka.Transfer.DescribeCertificate.DescribeCertificateResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeCertificate.DescribeCertificateResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeCertificate.DescribeCertificateResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeCertificate.DescribeCertificateResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeCertificate.DescribeCertificate
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeCertificate.DescribeCertificate
-- | Describes the agreement that's identified by the AgreementId.
module Amazonka.Transfer.DescribeAgreement
-- | See: newDescribeAgreement smart constructor.
data DescribeAgreement
DescribeAgreement' :: Text -> Text -> DescribeAgreement
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
[$sel:agreementId:DescribeAgreement'] :: DescribeAgreement -> Text
-- | The server identifier that's associated with the agreement.
[$sel:serverId:DescribeAgreement'] :: DescribeAgreement -> Text
-- | Create a value of DescribeAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeAgreement, describeAgreement_agreementId - A
-- unique identifier for the agreement. This identifier is returned when
-- you create an agreement.
--
-- DescribeAgreement, describeAgreement_serverId - The
-- server identifier that's associated with the agreement.
newDescribeAgreement :: Text -> Text -> DescribeAgreement
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
describeAgreement_agreementId :: Lens' DescribeAgreement Text
-- | The server identifier that's associated with the agreement.
describeAgreement_serverId :: Lens' DescribeAgreement Text
-- | See: newDescribeAgreementResponse smart constructor.
data DescribeAgreementResponse
DescribeAgreementResponse' :: Int -> DescribedAgreement -> DescribeAgreementResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeAgreementResponse'] :: DescribeAgreementResponse -> Int
-- | The details for the specified agreement, returned as a
-- DescribedAgreement object.
[$sel:agreement:DescribeAgreementResponse'] :: DescribeAgreementResponse -> DescribedAgreement
-- | Create a value of DescribeAgreementResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeAgreementResponse',
-- describeAgreementResponse_httpStatus - The response's http
-- status code.
--
-- $sel:agreement:DescribeAgreementResponse',
-- describeAgreementResponse_agreement - The details for the
-- specified agreement, returned as a DescribedAgreement object.
newDescribeAgreementResponse :: Int -> DescribedAgreement -> DescribeAgreementResponse
-- | The response's http status code.
describeAgreementResponse_httpStatus :: Lens' DescribeAgreementResponse Int
-- | The details for the specified agreement, returned as a
-- DescribedAgreement object.
describeAgreementResponse_agreement :: Lens' DescribeAgreementResponse DescribedAgreement
instance GHC.Generics.Generic Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance GHC.Show.Show Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance GHC.Read.Read Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance GHC.Classes.Eq Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance GHC.Generics.Generic Amazonka.Transfer.DescribeAgreement.DescribeAgreementResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeAgreement.DescribeAgreementResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeAgreement.DescribeAgreementResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeAgreement.DescribeAgreementResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeAgreement.DescribeAgreementResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeAgreement.DescribeAgreement
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeAgreement.DescribeAgreement
-- | Describes the access that is assigned to the specific file transfer
-- protocol-enabled server, as identified by its ServerId
-- property and its ExternalId.
--
-- The response from this call returns the properties of the access that
-- is associated with the ServerId value that was specified.
module Amazonka.Transfer.DescribeAccess
-- | See: newDescribeAccess smart constructor.
data DescribeAccess
DescribeAccess' :: Text -> Text -> DescribeAccess
-- | A system-assigned unique identifier for a server that has this access
-- assigned.
[$sel:serverId:DescribeAccess'] :: DescribeAccess -> Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
[$sel:externalId:DescribeAccess'] :: DescribeAccess -> Text
-- | Create a value of DescribeAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeAccess, describeAccess_serverId - A
-- system-assigned unique identifier for a server that has this access
-- assigned.
--
-- DescribeAccess, describeAccess_externalId - A unique
-- identifier that is required to identify specific groups within your
-- directory. The users of the group that you associate have access to
-- your Amazon S3 or Amazon EFS resources over the enabled protocols
-- using Transfer Family. If you know the group name, you can view the
-- SID values by running the following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
newDescribeAccess :: Text -> Text -> DescribeAccess
-- | A system-assigned unique identifier for a server that has this access
-- assigned.
describeAccess_serverId :: Lens' DescribeAccess Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
describeAccess_externalId :: Lens' DescribeAccess Text
-- | See: newDescribeAccessResponse smart constructor.
data DescribeAccessResponse
DescribeAccessResponse' :: Int -> Text -> DescribedAccess -> DescribeAccessResponse
-- | The response's http status code.
[$sel:httpStatus:DescribeAccessResponse'] :: DescribeAccessResponse -> Int
-- | A system-assigned unique identifier for a server that has this access
-- assigned.
[$sel:serverId:DescribeAccessResponse'] :: DescribeAccessResponse -> Text
-- | The external identifier of the server that the access is attached to.
[$sel:access:DescribeAccessResponse'] :: DescribeAccessResponse -> DescribedAccess
-- | Create a value of DescribeAccessResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeAccessResponse',
-- describeAccessResponse_httpStatus - The response's http status
-- code.
--
-- DescribeAccess, describeAccessResponse_serverId - A
-- system-assigned unique identifier for a server that has this access
-- assigned.
--
-- $sel:access:DescribeAccessResponse',
-- describeAccessResponse_access - The external identifier of the
-- server that the access is attached to.
newDescribeAccessResponse :: Int -> Text -> DescribedAccess -> DescribeAccessResponse
-- | The response's http status code.
describeAccessResponse_httpStatus :: Lens' DescribeAccessResponse Int
-- | A system-assigned unique identifier for a server that has this access
-- assigned.
describeAccessResponse_serverId :: Lens' DescribeAccessResponse Text
-- | The external identifier of the server that the access is attached to.
describeAccessResponse_access :: Lens' DescribeAccessResponse DescribedAccess
instance GHC.Generics.Generic Amazonka.Transfer.DescribeAccess.DescribeAccess
instance GHC.Show.Show Amazonka.Transfer.DescribeAccess.DescribeAccess
instance GHC.Read.Read Amazonka.Transfer.DescribeAccess.DescribeAccess
instance GHC.Classes.Eq Amazonka.Transfer.DescribeAccess.DescribeAccess
instance GHC.Generics.Generic Amazonka.Transfer.DescribeAccess.DescribeAccessResponse
instance GHC.Show.Show Amazonka.Transfer.DescribeAccess.DescribeAccessResponse
instance GHC.Read.Read Amazonka.Transfer.DescribeAccess.DescribeAccessResponse
instance GHC.Classes.Eq Amazonka.Transfer.DescribeAccess.DescribeAccessResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DescribeAccess.DescribeAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeAccess.DescribeAccessResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DescribeAccess.DescribeAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.DescribeAccess.DescribeAccess
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DescribeAccess.DescribeAccess
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DescribeAccess.DescribeAccess
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DescribeAccess.DescribeAccess
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DescribeAccess.DescribeAccess
-- | Deletes the specified workflow.
module Amazonka.Transfer.DeleteWorkflow
-- | See: newDeleteWorkflow smart constructor.
data DeleteWorkflow
DeleteWorkflow' :: Text -> DeleteWorkflow
-- | A unique identifier for the workflow.
[$sel:workflowId:DeleteWorkflow'] :: DeleteWorkflow -> Text
-- | Create a value of DeleteWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteWorkflow, deleteWorkflow_workflowId - A unique
-- identifier for the workflow.
newDeleteWorkflow :: Text -> DeleteWorkflow
-- | A unique identifier for the workflow.
deleteWorkflow_workflowId :: Lens' DeleteWorkflow Text
-- | See: newDeleteWorkflowResponse smart constructor.
data DeleteWorkflowResponse
DeleteWorkflowResponse' :: DeleteWorkflowResponse
-- | Create a value of DeleteWorkflowResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteWorkflowResponse :: DeleteWorkflowResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance GHC.Show.Show Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance GHC.Read.Read Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance GHC.Classes.Eq Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance GHC.Generics.Generic Amazonka.Transfer.DeleteWorkflow.DeleteWorkflowResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteWorkflow.DeleteWorkflowResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteWorkflow.DeleteWorkflowResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteWorkflow.DeleteWorkflowResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteWorkflow.DeleteWorkflowResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteWorkflow.DeleteWorkflow
-- | Deletes the user belonging to a file transfer protocol-enabled server
-- you specify.
--
-- No response returns from this operation.
--
-- When you delete a user from a server, the user's information is lost.
module Amazonka.Transfer.DeleteUser
-- | See: newDeleteUser smart constructor.
data DeleteUser
DeleteUser' :: Text -> Text -> DeleteUser
-- | A system-assigned unique identifier for a server instance that has the
-- user assigned to it.
[$sel:serverId:DeleteUser'] :: DeleteUser -> Text
-- | A unique string that identifies a user that is being deleted from a
-- server.
[$sel:userName:DeleteUser'] :: DeleteUser -> Text
-- | Create a value of DeleteUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteUser, deleteUser_serverId - A system-assigned
-- unique identifier for a server instance that has the user assigned to
-- it.
--
-- DeleteUser, deleteUser_userName - A unique string that
-- identifies a user that is being deleted from a server.
newDeleteUser :: Text -> Text -> DeleteUser
-- | A system-assigned unique identifier for a server instance that has the
-- user assigned to it.
deleteUser_serverId :: Lens' DeleteUser Text
-- | A unique string that identifies a user that is being deleted from a
-- server.
deleteUser_userName :: Lens' DeleteUser Text
-- | See: newDeleteUserResponse smart constructor.
data DeleteUserResponse
DeleteUserResponse' :: DeleteUserResponse
-- | Create a value of DeleteUserResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteUserResponse :: DeleteUserResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteUser.DeleteUser
instance GHC.Show.Show Amazonka.Transfer.DeleteUser.DeleteUser
instance GHC.Read.Read Amazonka.Transfer.DeleteUser.DeleteUser
instance GHC.Classes.Eq Amazonka.Transfer.DeleteUser.DeleteUser
instance GHC.Generics.Generic Amazonka.Transfer.DeleteUser.DeleteUserResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteUser.DeleteUserResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteUser.DeleteUserResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteUser.DeleteUserResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteUser.DeleteUser
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteUser.DeleteUserResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteUser.DeleteUser
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteUser.DeleteUser
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteUser.DeleteUser
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteUser.DeleteUser
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteUser.DeleteUser
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteUser.DeleteUser
-- | Deletes a user's Secure Shell (SSH) public key.
module Amazonka.Transfer.DeleteSshPublicKey
-- | See: newDeleteSshPublicKey smart constructor.
data DeleteSshPublicKey
DeleteSshPublicKey' :: Text -> Text -> Text -> DeleteSshPublicKey
-- | A system-assigned unique identifier for a file transfer
-- protocol-enabled server instance that has the user assigned to it.
[$sel:serverId:DeleteSshPublicKey'] :: DeleteSshPublicKey -> Text
-- | A unique identifier used to reference your user's specific SSH key.
[$sel:sshPublicKeyId:DeleteSshPublicKey'] :: DeleteSshPublicKey -> Text
-- | A unique string that identifies a user whose public key is being
-- deleted.
[$sel:userName:DeleteSshPublicKey'] :: DeleteSshPublicKey -> Text
-- | Create a value of DeleteSshPublicKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteSshPublicKey, deleteSshPublicKey_serverId - A
-- system-assigned unique identifier for a file transfer protocol-enabled
-- server instance that has the user assigned to it.
--
-- DeleteSshPublicKey, deleteSshPublicKey_sshPublicKeyId -
-- A unique identifier used to reference your user's specific SSH key.
--
-- DeleteSshPublicKey, deleteSshPublicKey_userName - A
-- unique string that identifies a user whose public key is being
-- deleted.
newDeleteSshPublicKey :: Text -> Text -> Text -> DeleteSshPublicKey
-- | A system-assigned unique identifier for a file transfer
-- protocol-enabled server instance that has the user assigned to it.
deleteSshPublicKey_serverId :: Lens' DeleteSshPublicKey Text
-- | A unique identifier used to reference your user's specific SSH key.
deleteSshPublicKey_sshPublicKeyId :: Lens' DeleteSshPublicKey Text
-- | A unique string that identifies a user whose public key is being
-- deleted.
deleteSshPublicKey_userName :: Lens' DeleteSshPublicKey Text
-- | See: newDeleteSshPublicKeyResponse smart constructor.
data DeleteSshPublicKeyResponse
DeleteSshPublicKeyResponse' :: DeleteSshPublicKeyResponse
-- | Create a value of DeleteSshPublicKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteSshPublicKeyResponse :: DeleteSshPublicKeyResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance GHC.Show.Show Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance GHC.Read.Read Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance GHC.Classes.Eq Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance GHC.Generics.Generic Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKeyResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKeyResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKeyResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKeyResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKeyResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteSshPublicKey.DeleteSshPublicKey
-- | Deletes the file transfer protocol-enabled server that you specify.
--
-- No response returns from this operation.
module Amazonka.Transfer.DeleteServer
-- | See: newDeleteServer smart constructor.
data DeleteServer
DeleteServer' :: Text -> DeleteServer
-- | A unique system-assigned identifier for a server instance.
[$sel:serverId:DeleteServer'] :: DeleteServer -> Text
-- | Create a value of DeleteServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteServer, deleteServer_serverId - A unique
-- system-assigned identifier for a server instance.
newDeleteServer :: Text -> DeleteServer
-- | A unique system-assigned identifier for a server instance.
deleteServer_serverId :: Lens' DeleteServer Text
-- | See: newDeleteServerResponse smart constructor.
data DeleteServerResponse
DeleteServerResponse' :: DeleteServerResponse
-- | Create a value of DeleteServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteServerResponse :: DeleteServerResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteServer.DeleteServer
instance GHC.Show.Show Amazonka.Transfer.DeleteServer.DeleteServer
instance GHC.Read.Read Amazonka.Transfer.DeleteServer.DeleteServer
instance GHC.Classes.Eq Amazonka.Transfer.DeleteServer.DeleteServer
instance GHC.Generics.Generic Amazonka.Transfer.DeleteServer.DeleteServerResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteServer.DeleteServerResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteServer.DeleteServerResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteServer.DeleteServerResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteServer.DeleteServer
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteServer.DeleteServerResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteServer.DeleteServer
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteServer.DeleteServer
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteServer.DeleteServer
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteServer.DeleteServer
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteServer.DeleteServer
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteServer.DeleteServer
-- | Deletes the profile that's specified in the ProfileId
-- parameter.
module Amazonka.Transfer.DeleteProfile
-- | See: newDeleteProfile smart constructor.
data DeleteProfile
DeleteProfile' :: Text -> DeleteProfile
-- | The identifier of the profile that you are deleting.
[$sel:profileId:DeleteProfile'] :: DeleteProfile -> Text
-- | Create a value of DeleteProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteProfile, deleteProfile_profileId - The identifier
-- of the profile that you are deleting.
newDeleteProfile :: Text -> DeleteProfile
-- | The identifier of the profile that you are deleting.
deleteProfile_profileId :: Lens' DeleteProfile Text
-- | See: newDeleteProfileResponse smart constructor.
data DeleteProfileResponse
DeleteProfileResponse' :: DeleteProfileResponse
-- | Create a value of DeleteProfileResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteProfileResponse :: DeleteProfileResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteProfile.DeleteProfile
instance GHC.Show.Show Amazonka.Transfer.DeleteProfile.DeleteProfile
instance GHC.Read.Read Amazonka.Transfer.DeleteProfile.DeleteProfile
instance GHC.Classes.Eq Amazonka.Transfer.DeleteProfile.DeleteProfile
instance GHC.Generics.Generic Amazonka.Transfer.DeleteProfile.DeleteProfileResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteProfile.DeleteProfileResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteProfile.DeleteProfileResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteProfile.DeleteProfileResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteProfile.DeleteProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteProfile.DeleteProfileResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteProfile.DeleteProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteProfile.DeleteProfile
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteProfile.DeleteProfile
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteProfile.DeleteProfile
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteProfile.DeleteProfile
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteProfile.DeleteProfile
-- | Deletes the host key that's specified in the HoskKeyId
-- parameter.
module Amazonka.Transfer.DeleteHostKey
-- | See: newDeleteHostKey smart constructor.
data DeleteHostKey
DeleteHostKey' :: Text -> Text -> DeleteHostKey
-- | The identifier of the server that contains the host key that you are
-- deleting.
[$sel:serverId:DeleteHostKey'] :: DeleteHostKey -> Text
-- | The identifier of the host key that you are deleting.
[$sel:hostKeyId:DeleteHostKey'] :: DeleteHostKey -> Text
-- | Create a value of DeleteHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteHostKey, deleteHostKey_serverId - The identifier
-- of the server that contains the host key that you are deleting.
--
-- DeleteHostKey, deleteHostKey_hostKeyId - The identifier
-- of the host key that you are deleting.
newDeleteHostKey :: Text -> Text -> DeleteHostKey
-- | The identifier of the server that contains the host key that you are
-- deleting.
deleteHostKey_serverId :: Lens' DeleteHostKey Text
-- | The identifier of the host key that you are deleting.
deleteHostKey_hostKeyId :: Lens' DeleteHostKey Text
-- | See: newDeleteHostKeyResponse smart constructor.
data DeleteHostKeyResponse
DeleteHostKeyResponse' :: DeleteHostKeyResponse
-- | Create a value of DeleteHostKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteHostKeyResponse :: DeleteHostKeyResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance GHC.Show.Show Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance GHC.Read.Read Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance GHC.Classes.Eq Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance GHC.Generics.Generic Amazonka.Transfer.DeleteHostKey.DeleteHostKeyResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteHostKey.DeleteHostKeyResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteHostKey.DeleteHostKeyResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteHostKey.DeleteHostKeyResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteHostKey.DeleteHostKeyResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteHostKey.DeleteHostKey
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteHostKey.DeleteHostKey
-- | Deletes the agreement that's specified in the provided
-- ConnectorId.
module Amazonka.Transfer.DeleteConnector
-- | See: newDeleteConnector smart constructor.
data DeleteConnector
DeleteConnector' :: Text -> DeleteConnector
-- | The unique identifier for the connector.
[$sel:connectorId:DeleteConnector'] :: DeleteConnector -> Text
-- | Create a value of DeleteConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteConnector, deleteConnector_connectorId - The
-- unique identifier for the connector.
newDeleteConnector :: Text -> DeleteConnector
-- | The unique identifier for the connector.
deleteConnector_connectorId :: Lens' DeleteConnector Text
-- | See: newDeleteConnectorResponse smart constructor.
data DeleteConnectorResponse
DeleteConnectorResponse' :: DeleteConnectorResponse
-- | Create a value of DeleteConnectorResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteConnectorResponse :: DeleteConnectorResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteConnector.DeleteConnector
instance GHC.Show.Show Amazonka.Transfer.DeleteConnector.DeleteConnector
instance GHC.Read.Read Amazonka.Transfer.DeleteConnector.DeleteConnector
instance GHC.Classes.Eq Amazonka.Transfer.DeleteConnector.DeleteConnector
instance GHC.Generics.Generic Amazonka.Transfer.DeleteConnector.DeleteConnectorResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteConnector.DeleteConnectorResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteConnector.DeleteConnectorResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteConnector.DeleteConnectorResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteConnector.DeleteConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteConnector.DeleteConnectorResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteConnector.DeleteConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteConnector.DeleteConnector
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteConnector.DeleteConnector
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteConnector.DeleteConnector
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteConnector.DeleteConnector
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteConnector.DeleteConnector
-- | Deletes the certificate that's specified in the CertificateId
-- parameter.
module Amazonka.Transfer.DeleteCertificate
-- | See: newDeleteCertificate smart constructor.
data DeleteCertificate
DeleteCertificate' :: Text -> DeleteCertificate
-- | The identifier of the certificate object that you are deleting.
[$sel:certificateId:DeleteCertificate'] :: DeleteCertificate -> Text
-- | Create a value of DeleteCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteCertificate, deleteCertificate_certificateId - The
-- identifier of the certificate object that you are deleting.
newDeleteCertificate :: Text -> DeleteCertificate
-- | The identifier of the certificate object that you are deleting.
deleteCertificate_certificateId :: Lens' DeleteCertificate Text
-- | See: newDeleteCertificateResponse smart constructor.
data DeleteCertificateResponse
DeleteCertificateResponse' :: DeleteCertificateResponse
-- | Create a value of DeleteCertificateResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteCertificateResponse :: DeleteCertificateResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance GHC.Show.Show Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance GHC.Read.Read Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance GHC.Classes.Eq Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance GHC.Generics.Generic Amazonka.Transfer.DeleteCertificate.DeleteCertificateResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteCertificate.DeleteCertificateResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteCertificate.DeleteCertificateResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteCertificate.DeleteCertificateResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteCertificate.DeleteCertificateResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteCertificate.DeleteCertificate
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteCertificate.DeleteCertificate
-- | Delete the agreement that's specified in the provided
-- AgreementId.
module Amazonka.Transfer.DeleteAgreement
-- | See: newDeleteAgreement smart constructor.
data DeleteAgreement
DeleteAgreement' :: Text -> Text -> DeleteAgreement
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
[$sel:agreementId:DeleteAgreement'] :: DeleteAgreement -> Text
-- | The server identifier associated with the agreement that you are
-- deleting.
[$sel:serverId:DeleteAgreement'] :: DeleteAgreement -> Text
-- | Create a value of DeleteAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteAgreement, deleteAgreement_agreementId - A unique
-- identifier for the agreement. This identifier is returned when you
-- create an agreement.
--
-- DeleteAgreement, deleteAgreement_serverId - The server
-- identifier associated with the agreement that you are deleting.
newDeleteAgreement :: Text -> Text -> DeleteAgreement
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
deleteAgreement_agreementId :: Lens' DeleteAgreement Text
-- | The server identifier associated with the agreement that you are
-- deleting.
deleteAgreement_serverId :: Lens' DeleteAgreement Text
-- | See: newDeleteAgreementResponse smart constructor.
data DeleteAgreementResponse
DeleteAgreementResponse' :: DeleteAgreementResponse
-- | Create a value of DeleteAgreementResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteAgreementResponse :: DeleteAgreementResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance GHC.Show.Show Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance GHC.Read.Read Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance GHC.Classes.Eq Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance GHC.Generics.Generic Amazonka.Transfer.DeleteAgreement.DeleteAgreementResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteAgreement.DeleteAgreementResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteAgreement.DeleteAgreementResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteAgreement.DeleteAgreementResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteAgreement.DeleteAgreementResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteAgreement.DeleteAgreement
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteAgreement.DeleteAgreement
-- | Allows you to delete the access specified in the ServerID and
-- ExternalID parameters.
module Amazonka.Transfer.DeleteAccess
-- | See: newDeleteAccess smart constructor.
data DeleteAccess
DeleteAccess' :: Text -> Text -> DeleteAccess
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
[$sel:serverId:DeleteAccess'] :: DeleteAccess -> Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
[$sel:externalId:DeleteAccess'] :: DeleteAccess -> Text
-- | Create a value of DeleteAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteAccess, deleteAccess_serverId - A system-assigned
-- unique identifier for a server that has this user assigned.
--
-- DeleteAccess, deleteAccess_externalId - A unique
-- identifier that is required to identify specific groups within your
-- directory. The users of the group that you associate have access to
-- your Amazon S3 or Amazon EFS resources over the enabled protocols
-- using Transfer Family. If you know the group name, you can view the
-- SID values by running the following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
newDeleteAccess :: Text -> Text -> DeleteAccess
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
deleteAccess_serverId :: Lens' DeleteAccess Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
deleteAccess_externalId :: Lens' DeleteAccess Text
-- | See: newDeleteAccessResponse smart constructor.
data DeleteAccessResponse
DeleteAccessResponse' :: DeleteAccessResponse
-- | Create a value of DeleteAccessResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteAccessResponse :: DeleteAccessResponse
instance GHC.Generics.Generic Amazonka.Transfer.DeleteAccess.DeleteAccess
instance GHC.Show.Show Amazonka.Transfer.DeleteAccess.DeleteAccess
instance GHC.Read.Read Amazonka.Transfer.DeleteAccess.DeleteAccess
instance GHC.Classes.Eq Amazonka.Transfer.DeleteAccess.DeleteAccess
instance GHC.Generics.Generic Amazonka.Transfer.DeleteAccess.DeleteAccessResponse
instance GHC.Show.Show Amazonka.Transfer.DeleteAccess.DeleteAccessResponse
instance GHC.Read.Read Amazonka.Transfer.DeleteAccess.DeleteAccessResponse
instance GHC.Classes.Eq Amazonka.Transfer.DeleteAccess.DeleteAccessResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.DeleteAccess.DeleteAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteAccess.DeleteAccessResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.DeleteAccess.DeleteAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.DeleteAccess.DeleteAccess
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.DeleteAccess.DeleteAccess
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.DeleteAccess.DeleteAccess
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.DeleteAccess.DeleteAccess
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.DeleteAccess.DeleteAccess
-- | Allows you to create a workflow with specified steps and step details
-- the workflow invokes after file transfer completes. After creating a
-- workflow, you can associate the workflow created with any transfer
-- servers by specifying the workflow-details field in
-- CreateServer and UpdateServer operations.
module Amazonka.Transfer.CreateWorkflow
-- | See: newCreateWorkflow smart constructor.
data CreateWorkflow
CreateWorkflow' :: Maybe Text -> Maybe [WorkflowStep] -> Maybe (NonEmpty Tag) -> [WorkflowStep] -> CreateWorkflow
-- | A textual description for the workflow.
[$sel:description:CreateWorkflow'] :: CreateWorkflow -> Maybe Text
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
--
-- For custom steps, the lambda function needs to send FAILURE
-- to the call back API to kick off the exception steps. Additionally, if
-- the lambda does not send SUCCESS before it times out, the
-- exception steps are executed.
[$sel:onExceptionSteps:CreateWorkflow'] :: CreateWorkflow -> Maybe [WorkflowStep]
-- | Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
[$sel:tags:CreateWorkflow'] :: CreateWorkflow -> Maybe (NonEmpty Tag)
-- | Specifies the details for the steps that are in the specified
-- workflow.
--
-- The TYPE specifies which of the following actions is being
-- taken for this step.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
--
-- Currently, copying and tagging are supported only on S3.
--
-- For file location, you specify either the S3 bucket and key, or the
-- EFS file system ID and path.
[$sel:steps:CreateWorkflow'] :: CreateWorkflow -> [WorkflowStep]
-- | Create a value of CreateWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateWorkflow, createWorkflow_description - A textual
-- description for the workflow.
--
-- CreateWorkflow, createWorkflow_onExceptionSteps -
-- Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
--
-- For custom steps, the lambda function needs to send FAILURE
-- to the call back API to kick off the exception steps. Additionally, if
-- the lambda does not send SUCCESS before it times out, the
-- exception steps are executed.
--
-- CreateWorkflow, createWorkflow_tags - Key-value pairs
-- that can be used to group and search for workflows. Tags are metadata
-- attached to workflows for any purpose.
--
-- CreateWorkflow, createWorkflow_steps - Specifies the
-- details for the steps that are in the specified workflow.
--
-- The TYPE specifies which of the following actions is being
-- taken for this step.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
--
-- Currently, copying and tagging are supported only on S3.
--
-- For file location, you specify either the S3 bucket and key, or the
-- EFS file system ID and path.
newCreateWorkflow :: CreateWorkflow
-- | A textual description for the workflow.
createWorkflow_description :: Lens' CreateWorkflow (Maybe Text)
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
--
-- For custom steps, the lambda function needs to send FAILURE
-- to the call back API to kick off the exception steps. Additionally, if
-- the lambda does not send SUCCESS before it times out, the
-- exception steps are executed.
createWorkflow_onExceptionSteps :: Lens' CreateWorkflow (Maybe [WorkflowStep])
-- | Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
createWorkflow_tags :: Lens' CreateWorkflow (Maybe (NonEmpty Tag))
-- | Specifies the details for the steps that are in the specified
-- workflow.
--
-- The TYPE specifies which of the following actions is being
-- taken for this step.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
--
-- Currently, copying and tagging are supported only on S3.
--
-- For file location, you specify either the S3 bucket and key, or the
-- EFS file system ID and path.
createWorkflow_steps :: Lens' CreateWorkflow [WorkflowStep]
-- | See: newCreateWorkflowResponse smart constructor.
data CreateWorkflowResponse
CreateWorkflowResponse' :: Int -> Text -> CreateWorkflowResponse
-- | The response's http status code.
[$sel:httpStatus:CreateWorkflowResponse'] :: CreateWorkflowResponse -> Int
-- | A unique identifier for the workflow.
[$sel:workflowId:CreateWorkflowResponse'] :: CreateWorkflowResponse -> Text
-- | Create a value of CreateWorkflowResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateWorkflowResponse',
-- createWorkflowResponse_httpStatus - The response's http status
-- code.
--
-- CreateWorkflowResponse,
-- createWorkflowResponse_workflowId - A unique identifier for the
-- workflow.
newCreateWorkflowResponse :: Int -> Text -> CreateWorkflowResponse
-- | The response's http status code.
createWorkflowResponse_httpStatus :: Lens' CreateWorkflowResponse Int
-- | A unique identifier for the workflow.
createWorkflowResponse_workflowId :: Lens' CreateWorkflowResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance GHC.Show.Show Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance GHC.Read.Read Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance GHC.Classes.Eq Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance GHC.Generics.Generic Amazonka.Transfer.CreateWorkflow.CreateWorkflowResponse
instance GHC.Show.Show Amazonka.Transfer.CreateWorkflow.CreateWorkflowResponse
instance GHC.Read.Read Amazonka.Transfer.CreateWorkflow.CreateWorkflowResponse
instance GHC.Classes.Eq Amazonka.Transfer.CreateWorkflow.CreateWorkflowResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateWorkflow.CreateWorkflowResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.CreateWorkflow.CreateWorkflow
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.CreateWorkflow.CreateWorkflow
-- | Creates a user and associates them with an existing file transfer
-- protocol-enabled server. You can only create and associate users with
-- servers that have the IdentityProviderType set to
-- SERVICE_MANAGED. Using parameters for CreateUser,
-- you can specify the user name, set the home directory, store the
-- user's public key, and assign the user's Identity and Access
-- Management (IAM) role. You can also optionally add a session policy,
-- and assign metadata with tags that can be used to group and search for
-- users.
module Amazonka.Transfer.CreateUser
-- | See: newCreateUser smart constructor.
data CreateUser
CreateUser' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Maybe (NonEmpty Tag) -> Text -> Text -> Text -> CreateUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:CreateUser'] :: CreateUser -> Maybe Text
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory parameter
-- value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
[$sel:homeDirectoryMappings:CreateUser'] :: CreateUser -> Maybe (NonEmpty HomeDirectoryMapEntry)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:CreateUser'] :: CreateUser -> Maybe HomeDirectoryType
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
[$sel:policy:CreateUser'] :: CreateUser -> Maybe Text
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon EFS file systems. The POSIX permissions that are set on files
-- and directories in Amazon EFS determine the level of access your users
-- get when transferring files into and out of your Amazon EFS file
-- systems.
[$sel:posixProfile:CreateUser'] :: CreateUser -> Maybe PosixProfile
-- | The public portion of the Secure Shell (SSH) key used to authenticate
-- the user to the server.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
[$sel:sshPublicKeyBody:CreateUser'] :: CreateUser -> Maybe Text
-- | Key-value pairs that can be used to group and search for users. Tags
-- are metadata attached to users for any purpose.
[$sel:tags:CreateUser'] :: CreateUser -> Maybe (NonEmpty Tag)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':CreateUser'] :: CreateUser -> Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
[$sel:serverId:CreateUser'] :: CreateUser -> Text
-- | A unique string that identifies a user and is associated with a
-- ServerId. This user name must be a minimum of 3 and a maximum
-- of 100 characters long. The following are valid characters: a-z, A-Z,
-- 0-9, underscore '_', hyphen '-', period '.', and at sign '@'. The user
-- name can't start with a hyphen, period, or at sign.
[$sel:userName:CreateUser'] :: CreateUser -> Text
-- | Create a value of CreateUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateUser, createUser_homeDirectory - The landing
-- directory (folder) for a user when they log in to the server using the
-- client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- CreateUser, createUser_homeDirectoryMappings - Logical
-- directory mappings that specify what Amazon S3 or Amazon EFS paths and
-- keys should be visible to your user and how you want to make them
-- visible. You must specify the Entry and Target pair,
-- where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory parameter
-- value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- CreateUser, createUser_homeDirectoryType - The type of
-- landing directory (folder) that you want your users' home directory to
-- be when they log in to the server. If you set it to PATH, the
-- user will see the absolute Amazon S3 bucket or EFS paths as is in
-- their file transfer protocol clients. If you set it LOGICAL,
-- you need to provide mappings in the HomeDirectoryMappings for
-- how you want to make Amazon S3 or Amazon EFS paths visible to your
-- users.
--
-- CreateUser, createUser_policy - A session policy for
-- your user so that you can use the same Identity and Access Management
-- (IAM) role across multiple users. This policy scopes down a user's
-- access to portions of their Amazon S3 bucket. Variables that you can
-- use inside this policy include ${Transfer:UserName},
-- ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
--
-- CreateUser, createUser_posixProfile - Specifies the full
-- POSIX identity, including user ID (Uid), group ID
-- (Gid), and any secondary groups IDs (SecondaryGids),
-- that controls your users' access to your Amazon EFS file systems. The
-- POSIX permissions that are set on files and directories in Amazon EFS
-- determine the level of access your users get when transferring files
-- into and out of your Amazon EFS file systems.
--
-- CreateUser, createUser_sshPublicKeyBody - The public
-- portion of the Secure Shell (SSH) key used to authenticate the user to
-- the server.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
--
-- CreateUser, createUser_tags - Key-value pairs that can
-- be used to group and search for users. Tags are metadata attached to
-- users for any purpose.
--
-- CreateUser, createUser_role - The Amazon Resource Name
-- (ARN) of the Identity and Access Management (IAM) role that controls
-- your users' access to your Amazon S3 bucket or Amazon EFS file system.
-- The policies attached to this role determine the level of access that
-- you want to provide your users when transferring files into and out of
-- your Amazon S3 bucket or Amazon EFS file system. The IAM role should
-- also contain a trust relationship that allows the server to access
-- your resources when servicing your users' transfer requests.
--
-- CreateUser, createUser_serverId - A system-assigned
-- unique identifier for a server instance. This is the specific server
-- that you added your user to.
--
-- CreateUser, createUser_userName - A unique string that
-- identifies a user and is associated with a ServerId. This
-- user name must be a minimum of 3 and a maximum of 100 characters long.
-- The following are valid characters: a-z, A-Z, 0-9, underscore '_',
-- hyphen '-', period '.', and at sign '@'. The user name can't start
-- with a hyphen, period, or at sign.
newCreateUser :: Text -> Text -> Text -> CreateUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
createUser_homeDirectory :: Lens' CreateUser (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory parameter
-- value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
createUser_homeDirectoryMappings :: Lens' CreateUser (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
createUser_homeDirectoryType :: Lens' CreateUser (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
createUser_policy :: Lens' CreateUser (Maybe Text)
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon EFS file systems. The POSIX permissions that are set on files
-- and directories in Amazon EFS determine the level of access your users
-- get when transferring files into and out of your Amazon EFS file
-- systems.
createUser_posixProfile :: Lens' CreateUser (Maybe PosixProfile)
-- | The public portion of the Secure Shell (SSH) key used to authenticate
-- the user to the server.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
createUser_sshPublicKeyBody :: Lens' CreateUser (Maybe Text)
-- | Key-value pairs that can be used to group and search for users. Tags
-- are metadata attached to users for any purpose.
createUser_tags :: Lens' CreateUser (Maybe (NonEmpty Tag))
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
createUser_role :: Lens' CreateUser Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
createUser_serverId :: Lens' CreateUser Text
-- | A unique string that identifies a user and is associated with a
-- ServerId. This user name must be a minimum of 3 and a maximum
-- of 100 characters long. The following are valid characters: a-z, A-Z,
-- 0-9, underscore '_', hyphen '-', period '.', and at sign '@'. The user
-- name can't start with a hyphen, period, or at sign.
createUser_userName :: Lens' CreateUser Text
-- | See: newCreateUserResponse smart constructor.
data CreateUserResponse
CreateUserResponse' :: Int -> Text -> Text -> CreateUserResponse
-- | The response's http status code.
[$sel:httpStatus:CreateUserResponse'] :: CreateUserResponse -> Int
-- | The identifier of the server that the user is attached to.
[$sel:serverId:CreateUserResponse'] :: CreateUserResponse -> Text
-- | A unique string that identifies a user account associated with a
-- server.
[$sel:userName:CreateUserResponse'] :: CreateUserResponse -> Text
-- | Create a value of CreateUserResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateUserResponse',
-- createUserResponse_httpStatus - The response's http status
-- code.
--
-- CreateUser, createUserResponse_serverId - The identifier
-- of the server that the user is attached to.
--
-- CreateUser, createUserResponse_userName - A unique
-- string that identifies a user account associated with a server.
newCreateUserResponse :: Int -> Text -> Text -> CreateUserResponse
-- | The response's http status code.
createUserResponse_httpStatus :: Lens' CreateUserResponse Int
-- | The identifier of the server that the user is attached to.
createUserResponse_serverId :: Lens' CreateUserResponse Text
-- | A unique string that identifies a user account associated with a
-- server.
createUserResponse_userName :: Lens' CreateUserResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.CreateUser.CreateUser
instance GHC.Show.Show Amazonka.Transfer.CreateUser.CreateUser
instance GHC.Read.Read Amazonka.Transfer.CreateUser.CreateUser
instance GHC.Classes.Eq Amazonka.Transfer.CreateUser.CreateUser
instance GHC.Generics.Generic Amazonka.Transfer.CreateUser.CreateUserResponse
instance GHC.Show.Show Amazonka.Transfer.CreateUser.CreateUserResponse
instance GHC.Read.Read Amazonka.Transfer.CreateUser.CreateUserResponse
instance GHC.Classes.Eq Amazonka.Transfer.CreateUser.CreateUserResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.CreateUser.CreateUser
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateUser.CreateUserResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.CreateUser.CreateUser
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateUser.CreateUser
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.CreateUser.CreateUser
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.CreateUser.CreateUser
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.CreateUser.CreateUser
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.CreateUser.CreateUser
-- | Instantiates an auto-scaling virtual server based on the selected file
-- transfer protocol in Amazon Web Services. When you make updates to
-- your file transfer protocol-enabled server or when you work with
-- users, use the service-generated ServerId property that is
-- assigned to the newly created server.
module Amazonka.Transfer.CreateServer
-- | See: newCreateServer smart constructor.
data CreateServer
CreateServer' :: Maybe Text -> Maybe Domain -> Maybe EndpointDetails -> Maybe EndpointType -> Maybe (Sensitive Text) -> Maybe IdentityProviderDetails -> Maybe IdentityProviderType -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProtocolDetails -> Maybe (NonEmpty Protocol) -> Maybe Text -> Maybe (NonEmpty Tag) -> Maybe WorkflowDetails -> CreateServer
-- | The Amazon Resource Name (ARN) of the Certificate Manager (ACM)
-- certificate. Required when Protocols is set to FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Certificate Manager User Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Certificate Manager User
-- Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the
-- Certificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
[$sel:certificate:CreateServer'] :: CreateServer -> Maybe Text
-- | The domain of the storage system that is used for file transfers.
-- There are two domains available: Amazon Simple Storage Service (Amazon
-- S3) and Amazon Elastic File System (Amazon EFS). The default value is
-- S3.
--
-- After the server is created, the domain cannot be changed.
[$sel:domain:CreateServer'] :: CreateServer -> Maybe Domain
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
[$sel:endpointDetails:CreateServer'] :: CreateServer -> Maybe EndpointDetails
-- | The type of endpoint that you want your server to use. You can choose
-- to make your server's endpoint publicly accessible (PUBLIC) or host it
-- inside your VPC. With an endpoint that is hosted in a VPC, you can
-- restrict access to your server and resources only within your VPC or
-- choose to make it internet facing by attaching Elastic IP addresses
-- directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Services account
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Services account on or before May 19, 2021, you
-- will not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
[$sel:endpointType:CreateServer'] :: CreateServer -> Maybe EndpointType
-- | The RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
[$sel:hostKey:CreateServer'] :: CreateServer -> Maybe (Sensitive Text)
-- | Required when IdentityProviderType is set to
-- AWS_DIRECTORY_SERVICE or API_GATEWAY. Accepts an
-- array containing all of the information required to use a directory in
-- AWS_DIRECTORY_SERVICE or invoke a customer-supplied
-- authentication API, including the API Gateway URL. Not required when
-- IdentityProviderType is set to SERVICE_MANAGED.
[$sel:identityProviderDetails:CreateServer'] :: CreateServer -> Maybe IdentityProviderDetails
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
[$sel:identityProviderType:CreateServer'] :: CreateServer -> Maybe IdentityProviderType
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
[$sel:loggingRole:CreateServer'] :: CreateServer -> Maybe Text
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
[$sel:postAuthenticationLoginBanner:CreateServer'] :: CreateServer -> Maybe Text
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
[$sel:preAuthenticationLoginBanner:CreateServer'] :: CreateServer -> Maybe Text
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
[$sel:protocolDetails:CreateServer'] :: CreateServer -> Maybe ProtocolDetails
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
[$sel:protocols:CreateServer'] :: CreateServer -> Maybe (NonEmpty Protocol)
-- | Specifies the name of the security policy that is attached to the
-- server.
[$sel:securityPolicyName:CreateServer'] :: CreateServer -> Maybe Text
-- | Key-value pairs that can be used to group and search for servers.
[$sel:tags:CreateServer'] :: CreateServer -> Maybe (NonEmpty Tag)
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
[$sel:workflowDetails:CreateServer'] :: CreateServer -> Maybe WorkflowDetails
-- | Create a value of CreateServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateServer, createServer_certificate - The Amazon
-- Resource Name (ARN) of the Certificate Manager (ACM) certificate.
-- Required when Protocols is set to FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Certificate Manager User Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Certificate Manager User
-- Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the
-- Certificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
--
-- CreateServer, createServer_domain - The domain of the
-- storage system that is used for file transfers. There are two domains
-- available: Amazon Simple Storage Service (Amazon S3) and Amazon
-- Elastic File System (Amazon EFS). The default value is S3.
--
-- After the server is created, the domain cannot be changed.
--
-- CreateServer, createServer_endpointDetails - The virtual
-- private cloud (VPC) endpoint settings that are configured for your
-- server. When you host your endpoint within your VPC, you can make your
-- endpoint accessible only to resources within your VPC, or you can
-- attach Elastic IP addresses and make your endpoint accessible to
-- clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
--
-- CreateServer, createServer_endpointType - The type of
-- endpoint that you want your server to use. You can choose to make your
-- server's endpoint publicly accessible (PUBLIC) or host it inside your
-- VPC. With an endpoint that is hosted in a VPC, you can restrict access
-- to your server and resources only within your VPC or choose to make it
-- internet facing by attaching Elastic IP addresses directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Services account
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Services account on or before May 19, 2021, you
-- will not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
--
-- $sel:hostKey:CreateServer', createServer_hostKey - The
-- RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
--
-- CreateServer, createServer_identityProviderDetails -
-- Required when IdentityProviderType is set to
-- AWS_DIRECTORY_SERVICE or API_GATEWAY. Accepts an
-- array containing all of the information required to use a directory in
-- AWS_DIRECTORY_SERVICE or invoke a customer-supplied
-- authentication API, including the API Gateway URL. Not required when
-- IdentityProviderType is set to SERVICE_MANAGED.
--
-- CreateServer, createServer_identityProviderType - The
-- mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
--
-- CreateServer, createServer_loggingRole - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that allows a server to turn on Amazon CloudWatch logging for Amazon
-- S3 or Amazon EFSevents. When set, you can view user activity in your
-- CloudWatch logs.
--
-- CreateServer, createServer_postAuthenticationLoginBanner
-- - Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
--
-- CreateServer, createServer_preAuthenticationLoginBanner
-- - Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
--
-- CreateServer, createServer_protocolDetails - The
-- protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
--
-- CreateServer, createServer_protocols - Specifies the
-- file transfer protocol or protocols over which your file transfer
-- protocol client can connect to your server's endpoint. The available
-- protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
--
-- CreateServer, createServer_securityPolicyName -
-- Specifies the name of the security policy that is attached to the
-- server.
--
-- CreateServer, createServer_tags - Key-value pairs that
-- can be used to group and search for servers.
--
-- CreateServer, createServer_workflowDetails - Specifies
-- the workflow ID for the workflow to assign and the execution role
-- that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
newCreateServer :: CreateServer
-- | The Amazon Resource Name (ARN) of the Certificate Manager (ACM)
-- certificate. Required when Protocols is set to FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Certificate Manager User Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Certificate Manager User
-- Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the
-- Certificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
createServer_certificate :: Lens' CreateServer (Maybe Text)
-- | The domain of the storage system that is used for file transfers.
-- There are two domains available: Amazon Simple Storage Service (Amazon
-- S3) and Amazon Elastic File System (Amazon EFS). The default value is
-- S3.
--
-- After the server is created, the domain cannot be changed.
createServer_domain :: Lens' CreateServer (Maybe Domain)
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
createServer_endpointDetails :: Lens' CreateServer (Maybe EndpointDetails)
-- | The type of endpoint that you want your server to use. You can choose
-- to make your server's endpoint publicly accessible (PUBLIC) or host it
-- inside your VPC. With an endpoint that is hosted in a VPC, you can
-- restrict access to your server and resources only within your VPC or
-- choose to make it internet facing by attaching Elastic IP addresses
-- directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Services account
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Services account on or before May 19, 2021, you
-- will not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
createServer_endpointType :: Lens' CreateServer (Maybe EndpointType)
-- | The RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
createServer_hostKey :: Lens' CreateServer (Maybe Text)
-- | Required when IdentityProviderType is set to
-- AWS_DIRECTORY_SERVICE or API_GATEWAY. Accepts an
-- array containing all of the information required to use a directory in
-- AWS_DIRECTORY_SERVICE or invoke a customer-supplied
-- authentication API, including the API Gateway URL. Not required when
-- IdentityProviderType is set to SERVICE_MANAGED.
createServer_identityProviderDetails :: Lens' CreateServer (Maybe IdentityProviderDetails)
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
createServer_identityProviderType :: Lens' CreateServer (Maybe IdentityProviderType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
createServer_loggingRole :: Lens' CreateServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
createServer_postAuthenticationLoginBanner :: Lens' CreateServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
createServer_preAuthenticationLoginBanner :: Lens' CreateServer (Maybe Text)
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
createServer_protocolDetails :: Lens' CreateServer (Maybe ProtocolDetails)
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
createServer_protocols :: Lens' CreateServer (Maybe (NonEmpty Protocol))
-- | Specifies the name of the security policy that is attached to the
-- server.
createServer_securityPolicyName :: Lens' CreateServer (Maybe Text)
-- | Key-value pairs that can be used to group and search for servers.
createServer_tags :: Lens' CreateServer (Maybe (NonEmpty Tag))
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
createServer_workflowDetails :: Lens' CreateServer (Maybe WorkflowDetails)
-- | See: newCreateServerResponse smart constructor.
data CreateServerResponse
CreateServerResponse' :: Int -> Text -> CreateServerResponse
-- | The response's http status code.
[$sel:httpStatus:CreateServerResponse'] :: CreateServerResponse -> Int
-- | The service-assigned identifier of the server that is created.
[$sel:serverId:CreateServerResponse'] :: CreateServerResponse -> Text
-- | Create a value of CreateServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateServerResponse',
-- createServerResponse_httpStatus - The response's http status
-- code.
--
-- CreateServerResponse, createServerResponse_serverId -
-- The service-assigned identifier of the server that is created.
newCreateServerResponse :: Int -> Text -> CreateServerResponse
-- | The response's http status code.
createServerResponse_httpStatus :: Lens' CreateServerResponse Int
-- | The service-assigned identifier of the server that is created.
createServerResponse_serverId :: Lens' CreateServerResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.CreateServer.CreateServer
instance GHC.Show.Show Amazonka.Transfer.CreateServer.CreateServer
instance GHC.Classes.Eq Amazonka.Transfer.CreateServer.CreateServer
instance GHC.Generics.Generic Amazonka.Transfer.CreateServer.CreateServerResponse
instance GHC.Show.Show Amazonka.Transfer.CreateServer.CreateServerResponse
instance GHC.Read.Read Amazonka.Transfer.CreateServer.CreateServerResponse
instance GHC.Classes.Eq Amazonka.Transfer.CreateServer.CreateServerResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.CreateServer.CreateServer
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateServer.CreateServerResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.CreateServer.CreateServer
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateServer.CreateServer
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.CreateServer.CreateServer
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.CreateServer.CreateServer
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.CreateServer.CreateServer
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.CreateServer.CreateServer
-- | Creates the local or partner profile to use for AS2 transfers.
module Amazonka.Transfer.CreateProfile
-- | See: newCreateProfile smart constructor.
data CreateProfile
CreateProfile' :: Maybe [Text] -> Maybe (NonEmpty Tag) -> Text -> ProfileType -> CreateProfile
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateIds:CreateProfile'] :: CreateProfile -> Maybe [Text]
-- | Key-value pairs that can be used to group and search for AS2 profiles.
[$sel:tags:CreateProfile'] :: CreateProfile -> Maybe (NonEmpty Tag)
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
[$sel:as2Id:CreateProfile'] :: CreateProfile -> Text
-- | Determines the type of profile to create:
--
--
-- - Specify LOCAL to create a local profile. A local profile
-- represents the AS2-enabled Transfer Family server organization or
-- party.
-- - Specify PARTNER to create a partner profile. A partner
-- profile represents a remote organization, external to Transfer
-- Family.
--
[$sel:profileType:CreateProfile'] :: CreateProfile -> ProfileType
-- | Create a value of CreateProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateProfile, createProfile_certificateIds - An array
-- of identifiers for the imported certificates. You use this identifier
-- for working with profiles and partner profiles.
--
-- CreateProfile, createProfile_tags - Key-value pairs that
-- can be used to group and search for AS2 profiles.
--
-- CreateProfile, createProfile_as2Id - The As2Id
-- is the AS2-name, as defined in the RFC 4130. For inbound
-- transfers, this is the AS2-From header for the AS2 messages
-- sent from the partner. For outbound connectors, this is the
-- AS2-To header for the AS2 messages sent to the partner using
-- the StartFileTransfer API operation. This ID cannot include
-- spaces.
--
-- CreateProfile, createProfile_profileType - Determines
-- the type of profile to create:
--
--
-- - Specify LOCAL to create a local profile. A local profile
-- represents the AS2-enabled Transfer Family server organization or
-- party.
-- - Specify PARTNER to create a partner profile. A partner
-- profile represents a remote organization, external to Transfer
-- Family.
--
newCreateProfile :: Text -> ProfileType -> CreateProfile
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
createProfile_certificateIds :: Lens' CreateProfile (Maybe [Text])
-- | Key-value pairs that can be used to group and search for AS2 profiles.
createProfile_tags :: Lens' CreateProfile (Maybe (NonEmpty Tag))
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
createProfile_as2Id :: Lens' CreateProfile Text
-- | Determines the type of profile to create:
--
--
-- - Specify LOCAL to create a local profile. A local profile
-- represents the AS2-enabled Transfer Family server organization or
-- party.
-- - Specify PARTNER to create a partner profile. A partner
-- profile represents a remote organization, external to Transfer
-- Family.
--
createProfile_profileType :: Lens' CreateProfile ProfileType
-- | See: newCreateProfileResponse smart constructor.
data CreateProfileResponse
CreateProfileResponse' :: Int -> Text -> CreateProfileResponse
-- | The response's http status code.
[$sel:httpStatus:CreateProfileResponse'] :: CreateProfileResponse -> Int
-- | The unique identifier for the AS2 profile, returned after the API call
-- succeeds.
[$sel:profileId:CreateProfileResponse'] :: CreateProfileResponse -> Text
-- | Create a value of CreateProfileResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateProfileResponse',
-- createProfileResponse_httpStatus - The response's http status
-- code.
--
-- CreateProfileResponse, createProfileResponse_profileId -
-- The unique identifier for the AS2 profile, returned after the API call
-- succeeds.
newCreateProfileResponse :: Int -> Text -> CreateProfileResponse
-- | The response's http status code.
createProfileResponse_httpStatus :: Lens' CreateProfileResponse Int
-- | The unique identifier for the AS2 profile, returned after the API call
-- succeeds.
createProfileResponse_profileId :: Lens' CreateProfileResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.CreateProfile.CreateProfile
instance GHC.Show.Show Amazonka.Transfer.CreateProfile.CreateProfile
instance GHC.Read.Read Amazonka.Transfer.CreateProfile.CreateProfile
instance GHC.Classes.Eq Amazonka.Transfer.CreateProfile.CreateProfile
instance GHC.Generics.Generic Amazonka.Transfer.CreateProfile.CreateProfileResponse
instance GHC.Show.Show Amazonka.Transfer.CreateProfile.CreateProfileResponse
instance GHC.Read.Read Amazonka.Transfer.CreateProfile.CreateProfileResponse
instance GHC.Classes.Eq Amazonka.Transfer.CreateProfile.CreateProfileResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.CreateProfile.CreateProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateProfile.CreateProfileResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.CreateProfile.CreateProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateProfile.CreateProfile
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.CreateProfile.CreateProfile
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.CreateProfile.CreateProfile
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.CreateProfile.CreateProfile
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.CreateProfile.CreateProfile
-- | Creates the connector, which captures the parameters for an outbound
-- connection for the AS2 protocol. The connector is required for sending
-- files to an externally hosted AS2 server. For more details about
-- connectors, see Create AS2 connectors.
module Amazonka.Transfer.CreateConnector
-- | See: newCreateConnector smart constructor.
data CreateConnector
CreateConnector' :: Maybe Text -> Maybe (NonEmpty Tag) -> Text -> As2ConnectorConfig -> Text -> CreateConnector
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
[$sel:loggingRole:CreateConnector'] :: CreateConnector -> Maybe Text
-- | Key-value pairs that can be used to group and search for connectors.
-- Tags are metadata attached to connectors for any purpose.
[$sel:tags:CreateConnector'] :: CreateConnector -> Maybe (NonEmpty Tag)
-- | The URL of the partner's AS2 endpoint.
[$sel:url:CreateConnector'] :: CreateConnector -> Text
-- | A structure that contains the parameters for a connector object.
[$sel:as2Config:CreateConnector'] :: CreateConnector -> As2ConnectorConfig
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
[$sel:accessRole:CreateConnector'] :: CreateConnector -> Text
-- | Create a value of CreateConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateConnector, createConnector_loggingRole - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that allows a connector to turn on CloudWatch logging for Amazon
-- S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
--
-- CreateConnector, createConnector_tags - Key-value pairs
-- that can be used to group and search for connectors. Tags are metadata
-- attached to connectors for any purpose.
--
-- CreateConnector, createConnector_url - The URL of the
-- partner's AS2 endpoint.
--
-- CreateConnector, createConnector_as2Config - A structure
-- that contains the parameters for a connector object.
--
-- CreateConnector, createConnector_accessRole - With AS2,
-- you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
newCreateConnector :: Text -> As2ConnectorConfig -> Text -> CreateConnector
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
createConnector_loggingRole :: Lens' CreateConnector (Maybe Text)
-- | Key-value pairs that can be used to group and search for connectors.
-- Tags are metadata attached to connectors for any purpose.
createConnector_tags :: Lens' CreateConnector (Maybe (NonEmpty Tag))
-- | The URL of the partner's AS2 endpoint.
createConnector_url :: Lens' CreateConnector Text
-- | A structure that contains the parameters for a connector object.
createConnector_as2Config :: Lens' CreateConnector As2ConnectorConfig
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
createConnector_accessRole :: Lens' CreateConnector Text
-- | See: newCreateConnectorResponse smart constructor.
data CreateConnectorResponse
CreateConnectorResponse' :: Int -> Text -> CreateConnectorResponse
-- | The response's http status code.
[$sel:httpStatus:CreateConnectorResponse'] :: CreateConnectorResponse -> Int
-- | The unique identifier for the connector, returned after the API call
-- succeeds.
[$sel:connectorId:CreateConnectorResponse'] :: CreateConnectorResponse -> Text
-- | Create a value of CreateConnectorResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateConnectorResponse',
-- createConnectorResponse_httpStatus - The response's http status
-- code.
--
-- CreateConnectorResponse,
-- createConnectorResponse_connectorId - The unique identifier for
-- the connector, returned after the API call succeeds.
newCreateConnectorResponse :: Int -> Text -> CreateConnectorResponse
-- | The response's http status code.
createConnectorResponse_httpStatus :: Lens' CreateConnectorResponse Int
-- | The unique identifier for the connector, returned after the API call
-- succeeds.
createConnectorResponse_connectorId :: Lens' CreateConnectorResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.CreateConnector.CreateConnector
instance GHC.Show.Show Amazonka.Transfer.CreateConnector.CreateConnector
instance GHC.Read.Read Amazonka.Transfer.CreateConnector.CreateConnector
instance GHC.Classes.Eq Amazonka.Transfer.CreateConnector.CreateConnector
instance GHC.Generics.Generic Amazonka.Transfer.CreateConnector.CreateConnectorResponse
instance GHC.Show.Show Amazonka.Transfer.CreateConnector.CreateConnectorResponse
instance GHC.Read.Read Amazonka.Transfer.CreateConnector.CreateConnectorResponse
instance GHC.Classes.Eq Amazonka.Transfer.CreateConnector.CreateConnectorResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.CreateConnector.CreateConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateConnector.CreateConnectorResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.CreateConnector.CreateConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateConnector.CreateConnector
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.CreateConnector.CreateConnector
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.CreateConnector.CreateConnector
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.CreateConnector.CreateConnector
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.CreateConnector.CreateConnector
-- | Creates an agreement. An agreement is a bilateral trading partner
-- agreement, or partnership, between an Transfer Family server and an
-- AS2 process. The agreement defines the file and message transfer
-- relationship between the server and the AS2 process. To define an
-- agreement, Transfer Family combines a server, local profile, partner
-- profile, certificate, and other attributes.
--
-- The partner is identified with the PartnerProfileId, and the
-- AS2 process is identified with the LocalProfileId.
module Amazonka.Transfer.CreateAgreement
-- | See: newCreateAgreement smart constructor.
data CreateAgreement
CreateAgreement' :: Maybe Text -> Maybe AgreementStatusType -> Maybe (NonEmpty Tag) -> Text -> Text -> Text -> Text -> Text -> CreateAgreement
-- | A name or short description to identify the agreement.
[$sel:description:CreateAgreement'] :: CreateAgreement -> Maybe Text
-- | The status of the agreement. The agreement can be either
-- ACTIVE or INACTIVE.
[$sel:status:CreateAgreement'] :: CreateAgreement -> Maybe AgreementStatusType
-- | Key-value pairs that can be used to group and search for agreements.
[$sel:tags:CreateAgreement'] :: CreateAgreement -> Maybe (NonEmpty Tag)
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
[$sel:serverId:CreateAgreement'] :: CreateAgreement -> Text
-- | A unique identifier for the AS2 local profile.
[$sel:localProfileId:CreateAgreement'] :: CreateAgreement -> Text
-- | A unique identifier for the partner profile used in the agreement.
[$sel:partnerProfileId:CreateAgreement'] :: CreateAgreement -> Text
-- | The landing directory (folder) for files transferred by using the AS2
-- protocol.
--
-- A BaseDirectory example is
-- DOC-EXAMPLE-BUCKET/home/mydirectory.
[$sel:baseDirectory:CreateAgreement'] :: CreateAgreement -> Text
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
[$sel:accessRole:CreateAgreement'] :: CreateAgreement -> Text
-- | Create a value of CreateAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateAgreement, createAgreement_description - A name or
-- short description to identify the agreement.
--
-- CreateAgreement, createAgreement_status - The status of
-- the agreement. The agreement can be either ACTIVE or
-- INACTIVE.
--
-- CreateAgreement, createAgreement_tags - Key-value pairs
-- that can be used to group and search for agreements.
--
-- CreateAgreement, createAgreement_serverId - A
-- system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
--
-- CreateAgreement, createAgreement_localProfileId - A
-- unique identifier for the AS2 local profile.
--
-- CreateAgreement, createAgreement_partnerProfileId - A
-- unique identifier for the partner profile used in the agreement.
--
-- CreateAgreement, createAgreement_baseDirectory - The
-- landing directory (folder) for files transferred by using the AS2
-- protocol.
--
-- A BaseDirectory example is
-- DOC-EXAMPLE-BUCKET/home/mydirectory.
--
-- CreateAgreement, createAgreement_accessRole - With AS2,
-- you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
newCreateAgreement :: Text -> Text -> Text -> Text -> Text -> CreateAgreement
-- | A name or short description to identify the agreement.
createAgreement_description :: Lens' CreateAgreement (Maybe Text)
-- | The status of the agreement. The agreement can be either
-- ACTIVE or INACTIVE.
createAgreement_status :: Lens' CreateAgreement (Maybe AgreementStatusType)
-- | Key-value pairs that can be used to group and search for agreements.
createAgreement_tags :: Lens' CreateAgreement (Maybe (NonEmpty Tag))
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
createAgreement_serverId :: Lens' CreateAgreement Text
-- | A unique identifier for the AS2 local profile.
createAgreement_localProfileId :: Lens' CreateAgreement Text
-- | A unique identifier for the partner profile used in the agreement.
createAgreement_partnerProfileId :: Lens' CreateAgreement Text
-- | The landing directory (folder) for files transferred by using the AS2
-- protocol.
--
-- A BaseDirectory example is
-- DOC-EXAMPLE-BUCKET/home/mydirectory.
createAgreement_baseDirectory :: Lens' CreateAgreement Text
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
createAgreement_accessRole :: Lens' CreateAgreement Text
-- | See: newCreateAgreementResponse smart constructor.
data CreateAgreementResponse
CreateAgreementResponse' :: Int -> Text -> CreateAgreementResponse
-- | The response's http status code.
[$sel:httpStatus:CreateAgreementResponse'] :: CreateAgreementResponse -> Int
-- | The unique identifier for the agreement. Use this ID for deleting, or
-- updating an agreement, as well as in any other API calls that require
-- that you specify the agreement ID.
[$sel:agreementId:CreateAgreementResponse'] :: CreateAgreementResponse -> Text
-- | Create a value of CreateAgreementResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateAgreementResponse',
-- createAgreementResponse_httpStatus - The response's http status
-- code.
--
-- CreateAgreementResponse,
-- createAgreementResponse_agreementId - The unique identifier for
-- the agreement. Use this ID for deleting, or updating an agreement, as
-- well as in any other API calls that require that you specify the
-- agreement ID.
newCreateAgreementResponse :: Int -> Text -> CreateAgreementResponse
-- | The response's http status code.
createAgreementResponse_httpStatus :: Lens' CreateAgreementResponse Int
-- | The unique identifier for the agreement. Use this ID for deleting, or
-- updating an agreement, as well as in any other API calls that require
-- that you specify the agreement ID.
createAgreementResponse_agreementId :: Lens' CreateAgreementResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.CreateAgreement.CreateAgreement
instance GHC.Show.Show Amazonka.Transfer.CreateAgreement.CreateAgreement
instance GHC.Read.Read Amazonka.Transfer.CreateAgreement.CreateAgreement
instance GHC.Classes.Eq Amazonka.Transfer.CreateAgreement.CreateAgreement
instance GHC.Generics.Generic Amazonka.Transfer.CreateAgreement.CreateAgreementResponse
instance GHC.Show.Show Amazonka.Transfer.CreateAgreement.CreateAgreementResponse
instance GHC.Read.Read Amazonka.Transfer.CreateAgreement.CreateAgreementResponse
instance GHC.Classes.Eq Amazonka.Transfer.CreateAgreement.CreateAgreementResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.CreateAgreement.CreateAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateAgreement.CreateAgreementResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.CreateAgreement.CreateAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateAgreement.CreateAgreement
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.CreateAgreement.CreateAgreement
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.CreateAgreement.CreateAgreement
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.CreateAgreement.CreateAgreement
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.CreateAgreement.CreateAgreement
-- | Used by administrators to choose which groups in the directory should
-- have access to upload and download files over the enabled protocols
-- using Transfer Family. For example, a Microsoft Active Directory might
-- contain 50,000 users, but only a small fraction might need the ability
-- to transfer files to the server. An administrator can use
-- CreateAccess to limit the access to the correct set of users
-- who need this ability.
module Amazonka.Transfer.CreateAccess
-- | See: newCreateAccess smart constructor.
data CreateAccess
CreateAccess' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Text -> Text -> Text -> CreateAccess
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:CreateAccess'] :: CreateAccess -> Maybe Text
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
[$sel:homeDirectoryMappings:CreateAccess'] :: CreateAccess -> Maybe (NonEmpty HomeDirectoryMapEntry)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:CreateAccess'] :: CreateAccess -> Maybe HomeDirectoryType
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Security Token
-- Service API Reference.
[$sel:policy:CreateAccess'] :: CreateAccess -> Maybe Text
[$sel:posixProfile:CreateAccess'] :: CreateAccess -> Maybe PosixProfile
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':CreateAccess'] :: CreateAccess -> Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
[$sel:serverId:CreateAccess'] :: CreateAccess -> Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
[$sel:externalId:CreateAccess'] :: CreateAccess -> Text
-- | Create a value of CreateAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateAccess, createAccess_homeDirectory - The landing
-- directory (folder) for a user when they log in to the server using the
-- client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- CreateAccess, createAccess_homeDirectoryMappings -
-- Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- CreateAccess, createAccess_homeDirectoryType - The type
-- of landing directory (folder) that you want your users' home directory
-- to be when they log in to the server. If you set it to PATH,
-- the user will see the absolute Amazon S3 bucket or EFS paths as is in
-- their file transfer protocol clients. If you set it LOGICAL,
-- you need to provide mappings in the HomeDirectoryMappings for
-- how you want to make Amazon S3 or Amazon EFS paths visible to your
-- users.
--
-- CreateAccess, createAccess_policy - A session policy for
-- your user so that you can use the same Identity and Access Management
-- (IAM) role across multiple users. This policy scopes down a user's
-- access to portions of their Amazon S3 bucket. Variables that you can
-- use inside this policy include ${Transfer:UserName},
-- ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Security Token
-- Service API Reference.
--
-- CreateAccess, createAccess_posixProfile - Undocumented
-- member.
--
-- CreateAccess, createAccess_role - The Amazon Resource
-- Name (ARN) of the Identity and Access Management (IAM) role that
-- controls your users' access to your Amazon S3 bucket or Amazon EFS
-- file system. The policies attached to this role determine the level of
-- access that you want to provide your users when transferring files
-- into and out of your Amazon S3 bucket or Amazon EFS file system. The
-- IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
--
-- CreateAccess, createAccess_serverId - A system-assigned
-- unique identifier for a server instance. This is the specific server
-- that you added your user to.
--
-- CreateAccess, createAccess_externalId - A unique
-- identifier that is required to identify specific groups within your
-- directory. The users of the group that you associate have access to
-- your Amazon S3 or Amazon EFS resources over the enabled protocols
-- using Transfer Family. If you know the group name, you can view the
-- SID values by running the following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
newCreateAccess :: Text -> Text -> Text -> CreateAccess
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
createAccess_homeDirectory :: Lens' CreateAccess (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
createAccess_homeDirectoryMappings :: Lens' CreateAccess (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
createAccess_homeDirectoryType :: Lens' CreateAccess (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Security Token
-- Service API Reference.
createAccess_policy :: Lens' CreateAccess (Maybe Text)
-- | Undocumented member.
createAccess_posixProfile :: Lens' CreateAccess (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
createAccess_role :: Lens' CreateAccess Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
createAccess_serverId :: Lens' CreateAccess Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
createAccess_externalId :: Lens' CreateAccess Text
-- | See: newCreateAccessResponse smart constructor.
data CreateAccessResponse
CreateAccessResponse' :: Int -> Text -> Text -> CreateAccessResponse
-- | The response's http status code.
[$sel:httpStatus:CreateAccessResponse'] :: CreateAccessResponse -> Int
-- | The identifier of the server that the user is attached to.
[$sel:serverId:CreateAccessResponse'] :: CreateAccessResponse -> Text
-- | The external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Transfer Family.
[$sel:externalId:CreateAccessResponse'] :: CreateAccessResponse -> Text
-- | Create a value of CreateAccessResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateAccessResponse',
-- createAccessResponse_httpStatus - The response's http status
-- code.
--
-- CreateAccess, createAccessResponse_serverId - The
-- identifier of the server that the user is attached to.
--
-- CreateAccess, createAccessResponse_externalId - The
-- external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Transfer Family.
newCreateAccessResponse :: Int -> Text -> Text -> CreateAccessResponse
-- | The response's http status code.
createAccessResponse_httpStatus :: Lens' CreateAccessResponse Int
-- | The identifier of the server that the user is attached to.
createAccessResponse_serverId :: Lens' CreateAccessResponse Text
-- | The external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Transfer Family.
createAccessResponse_externalId :: Lens' CreateAccessResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.CreateAccess.CreateAccess
instance GHC.Show.Show Amazonka.Transfer.CreateAccess.CreateAccess
instance GHC.Read.Read Amazonka.Transfer.CreateAccess.CreateAccess
instance GHC.Classes.Eq Amazonka.Transfer.CreateAccess.CreateAccess
instance GHC.Generics.Generic Amazonka.Transfer.CreateAccess.CreateAccessResponse
instance GHC.Show.Show Amazonka.Transfer.CreateAccess.CreateAccessResponse
instance GHC.Read.Read Amazonka.Transfer.CreateAccess.CreateAccessResponse
instance GHC.Classes.Eq Amazonka.Transfer.CreateAccess.CreateAccessResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.CreateAccess.CreateAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateAccess.CreateAccessResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.CreateAccess.CreateAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.CreateAccess.CreateAccess
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.CreateAccess.CreateAccess
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.CreateAccess.CreateAccess
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.CreateAccess.CreateAccess
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.CreateAccess.CreateAccess
-- | Detaches a key-value pair from a resource, as identified by its Amazon
-- Resource Name (ARN). Resources are users, servers, roles, and other
-- entities.
--
-- No response is returned from this call.
module Amazonka.Transfer.UntagResource
-- | See: newUntagResource smart constructor.
data UntagResource
UntagResource' :: Text -> NonEmpty Text -> UntagResource
-- | The value of the resource that will have the tag removed. An Amazon
-- Resource Name (ARN) is an identifier for a specific Amazon Web
-- Services resource, such as a server, user, or role.
[$sel:arn:UntagResource'] :: UntagResource -> Text
-- | TagKeys are key-value pairs assigned to ARNs that can be used to group
-- and search for resources by type. This metadata can be attached to
-- resources for any purpose.
[$sel:tagKeys:UntagResource'] :: UntagResource -> NonEmpty Text
-- | Create a value of UntagResource with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UntagResource, untagResource_arn - The value of the
-- resource that will have the tag removed. An Amazon Resource Name (ARN)
-- is an identifier for a specific Amazon Web Services resource, such as
-- a server, user, or role.
--
-- $sel:tagKeys:UntagResource', untagResource_tagKeys -
-- TagKeys are key-value pairs assigned to ARNs that can be used to group
-- and search for resources by type. This metadata can be attached to
-- resources for any purpose.
newUntagResource :: Text -> NonEmpty Text -> UntagResource
-- | The value of the resource that will have the tag removed. An Amazon
-- Resource Name (ARN) is an identifier for a specific Amazon Web
-- Services resource, such as a server, user, or role.
untagResource_arn :: Lens' UntagResource Text
-- | TagKeys are key-value pairs assigned to ARNs that can be used to group
-- and search for resources by type. This metadata can be attached to
-- resources for any purpose.
untagResource_tagKeys :: Lens' UntagResource (NonEmpty Text)
-- | See: newUntagResourceResponse smart constructor.
data UntagResourceResponse
UntagResourceResponse' :: UntagResourceResponse
-- | Create a value of UntagResourceResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newUntagResourceResponse :: UntagResourceResponse
instance GHC.Generics.Generic Amazonka.Transfer.UntagResource.UntagResource
instance GHC.Show.Show Amazonka.Transfer.UntagResource.UntagResource
instance GHC.Read.Read Amazonka.Transfer.UntagResource.UntagResource
instance GHC.Classes.Eq Amazonka.Transfer.UntagResource.UntagResource
instance GHC.Generics.Generic Amazonka.Transfer.UntagResource.UntagResourceResponse
instance GHC.Show.Show Amazonka.Transfer.UntagResource.UntagResourceResponse
instance GHC.Read.Read Amazonka.Transfer.UntagResource.UntagResourceResponse
instance GHC.Classes.Eq Amazonka.Transfer.UntagResource.UntagResourceResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UntagResource.UntagResource
instance Control.DeepSeq.NFData Amazonka.Transfer.UntagResource.UntagResourceResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UntagResource.UntagResource
instance Control.DeepSeq.NFData Amazonka.Transfer.UntagResource.UntagResource
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UntagResource.UntagResource
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UntagResource.UntagResource
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UntagResource.UntagResource
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UntagResource.UntagResource
-- | Allows you to update parameters for the access specified in the
-- ServerID and ExternalID parameters.
module Amazonka.Transfer.UpdateAccess
-- | See: newUpdateAccess smart constructor.
data UpdateAccess
UpdateAccess' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Text -> Text -> UpdateAccess
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:UpdateAccess'] :: UpdateAccess -> Maybe Text
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
[$sel:homeDirectoryMappings:UpdateAccess'] :: UpdateAccess -> Maybe (NonEmpty HomeDirectoryMapEntry)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:UpdateAccess'] :: UpdateAccess -> Maybe HomeDirectoryType
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- ServicesSecurity Token Service API Reference.
[$sel:policy:UpdateAccess'] :: UpdateAccess -> Maybe Text
[$sel:posixProfile:UpdateAccess'] :: UpdateAccess -> Maybe PosixProfile
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':UpdateAccess'] :: UpdateAccess -> Maybe Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
[$sel:serverId:UpdateAccess'] :: UpdateAccess -> Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
[$sel:externalId:UpdateAccess'] :: UpdateAccess -> Text
-- | Create a value of UpdateAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateAccess, updateAccess_homeDirectory - The landing
-- directory (folder) for a user when they log in to the server using the
-- client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- UpdateAccess, updateAccess_homeDirectoryMappings -
-- Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- UpdateAccess, updateAccess_homeDirectoryType - The type
-- of landing directory (folder) that you want your users' home directory
-- to be when they log in to the server. If you set it to PATH,
-- the user will see the absolute Amazon S3 bucket or EFS paths as is in
-- their file transfer protocol clients. If you set it LOGICAL,
-- you need to provide mappings in the HomeDirectoryMappings for
-- how you want to make Amazon S3 or Amazon EFS paths visible to your
-- users.
--
-- UpdateAccess, updateAccess_policy - A session policy for
-- your user so that you can use the same Identity and Access Management
-- (IAM) role across multiple users. This policy scopes down a user's
-- access to portions of their Amazon S3 bucket. Variables that you can
-- use inside this policy include ${Transfer:UserName},
-- ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- ServicesSecurity Token Service API Reference.
--
-- UpdateAccess, updateAccess_posixProfile - Undocumented
-- member.
--
-- UpdateAccess, updateAccess_role - The Amazon Resource
-- Name (ARN) of the Identity and Access Management (IAM) role that
-- controls your users' access to your Amazon S3 bucket or Amazon EFS
-- file system. The policies attached to this role determine the level of
-- access that you want to provide your users when transferring files
-- into and out of your Amazon S3 bucket or Amazon EFS file system. The
-- IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
--
-- UpdateAccess, updateAccess_serverId - A system-assigned
-- unique identifier for a server instance. This is the specific server
-- that you added your user to.
--
-- UpdateAccess, updateAccess_externalId - A unique
-- identifier that is required to identify specific groups within your
-- directory. The users of the group that you associate have access to
-- your Amazon S3 or Amazon EFS resources over the enabled protocols
-- using Transfer Family. If you know the group name, you can view the
-- SID values by running the following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
newUpdateAccess :: Text -> Text -> UpdateAccess
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
updateAccess_homeDirectory :: Lens' UpdateAccess (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
updateAccess_homeDirectoryMappings :: Lens' UpdateAccess (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
updateAccess_homeDirectoryType :: Lens' UpdateAccess (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- ServicesSecurity Token Service API Reference.
updateAccess_policy :: Lens' UpdateAccess (Maybe Text)
-- | Undocumented member.
updateAccess_posixProfile :: Lens' UpdateAccess (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
updateAccess_role :: Lens' UpdateAccess (Maybe Text)
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
updateAccess_serverId :: Lens' UpdateAccess Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
updateAccess_externalId :: Lens' UpdateAccess Text
-- | See: newUpdateAccessResponse smart constructor.
data UpdateAccessResponse
UpdateAccessResponse' :: Int -> Text -> Text -> UpdateAccessResponse
-- | The response's http status code.
[$sel:httpStatus:UpdateAccessResponse'] :: UpdateAccessResponse -> Int
-- | The identifier of the server that the user is attached to.
[$sel:serverId:UpdateAccessResponse'] :: UpdateAccessResponse -> Text
-- | The external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Amazon Web ServicesTransfer Family.
[$sel:externalId:UpdateAccessResponse'] :: UpdateAccessResponse -> Text
-- | Create a value of UpdateAccessResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateAccessResponse',
-- updateAccessResponse_httpStatus - The response's http status
-- code.
--
-- UpdateAccess, updateAccessResponse_serverId - The
-- identifier of the server that the user is attached to.
--
-- UpdateAccess, updateAccessResponse_externalId - The
-- external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Amazon Web ServicesTransfer Family.
newUpdateAccessResponse :: Int -> Text -> Text -> UpdateAccessResponse
-- | The response's http status code.
updateAccessResponse_httpStatus :: Lens' UpdateAccessResponse Int
-- | The identifier of the server that the user is attached to.
updateAccessResponse_serverId :: Lens' UpdateAccessResponse Text
-- | The external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Amazon Web ServicesTransfer Family.
updateAccessResponse_externalId :: Lens' UpdateAccessResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.UpdateAccess.UpdateAccess
instance GHC.Show.Show Amazonka.Transfer.UpdateAccess.UpdateAccess
instance GHC.Read.Read Amazonka.Transfer.UpdateAccess.UpdateAccess
instance GHC.Classes.Eq Amazonka.Transfer.UpdateAccess.UpdateAccess
instance GHC.Generics.Generic Amazonka.Transfer.UpdateAccess.UpdateAccessResponse
instance GHC.Show.Show Amazonka.Transfer.UpdateAccess.UpdateAccessResponse
instance GHC.Read.Read Amazonka.Transfer.UpdateAccess.UpdateAccessResponse
instance GHC.Classes.Eq Amazonka.Transfer.UpdateAccess.UpdateAccessResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UpdateAccess.UpdateAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateAccess.UpdateAccessResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UpdateAccess.UpdateAccess
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateAccess.UpdateAccess
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UpdateAccess.UpdateAccess
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UpdateAccess.UpdateAccess
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UpdateAccess.UpdateAccess
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UpdateAccess.UpdateAccess
-- | Updates some of the parameters for an existing agreement. Provide the
-- AgreementId and the ServerId for the agreement that
-- you want to update, along with the new values for the parameters to
-- update.
module Amazonka.Transfer.UpdateAgreement
-- | See: newUpdateAgreement smart constructor.
data UpdateAgreement
UpdateAgreement' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe AgreementStatusType -> Text -> Text -> UpdateAgreement
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
[$sel:accessRole:UpdateAgreement'] :: UpdateAgreement -> Maybe Text
-- | To change the landing directory (folder) for files that are
-- transferred, provide the bucket folder that you want to use; for
-- example,
-- /DOC-EXAMPLE-BUCKET/home/mydirectory
-- .
[$sel:baseDirectory:UpdateAgreement'] :: UpdateAgreement -> Maybe Text
-- | To replace the existing description, provide a short description for
-- the agreement.
[$sel:description:UpdateAgreement'] :: UpdateAgreement -> Maybe Text
-- | A unique identifier for the AS2 local profile.
--
-- To change the local profile identifier, provide a new value here.
[$sel:localProfileId:UpdateAgreement'] :: UpdateAgreement -> Maybe Text
-- | A unique identifier for the partner profile. To change the partner
-- profile identifier, provide a new value here.
[$sel:partnerProfileId:UpdateAgreement'] :: UpdateAgreement -> Maybe Text
-- | You can update the status for the agreement, either activating an
-- inactive agreement or the reverse.
[$sel:status:UpdateAgreement'] :: UpdateAgreement -> Maybe AgreementStatusType
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
[$sel:agreementId:UpdateAgreement'] :: UpdateAgreement -> Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
[$sel:serverId:UpdateAgreement'] :: UpdateAgreement -> Text
-- | Create a value of UpdateAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateAgreement, updateAgreement_accessRole - With AS2,
-- you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- UpdateAgreement, updateAgreement_baseDirectory - To
-- change the landing directory (folder) for files that are transferred,
-- provide the bucket folder that you want to use; for example,
-- /DOC-EXAMPLE-BUCKET/home/mydirectory
-- .
--
-- UpdateAgreement, updateAgreement_description - To
-- replace the existing description, provide a short description for the
-- agreement.
--
-- UpdateAgreement, updateAgreement_localProfileId - A
-- unique identifier for the AS2 local profile.
--
-- To change the local profile identifier, provide a new value here.
--
-- UpdateAgreement, updateAgreement_partnerProfileId - A
-- unique identifier for the partner profile. To change the partner
-- profile identifier, provide a new value here.
--
-- UpdateAgreement, updateAgreement_status - You can update
-- the status for the agreement, either activating an inactive agreement
-- or the reverse.
--
-- UpdateAgreement, updateAgreement_agreementId - A unique
-- identifier for the agreement. This identifier is returned when you
-- create an agreement.
--
-- UpdateAgreement, updateAgreement_serverId - A
-- system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
newUpdateAgreement :: Text -> Text -> UpdateAgreement
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
updateAgreement_accessRole :: Lens' UpdateAgreement (Maybe Text)
-- | To change the landing directory (folder) for files that are
-- transferred, provide the bucket folder that you want to use; for
-- example,
-- /DOC-EXAMPLE-BUCKET/home/mydirectory
-- .
updateAgreement_baseDirectory :: Lens' UpdateAgreement (Maybe Text)
-- | To replace the existing description, provide a short description for
-- the agreement.
updateAgreement_description :: Lens' UpdateAgreement (Maybe Text)
-- | A unique identifier for the AS2 local profile.
--
-- To change the local profile identifier, provide a new value here.
updateAgreement_localProfileId :: Lens' UpdateAgreement (Maybe Text)
-- | A unique identifier for the partner profile. To change the partner
-- profile identifier, provide a new value here.
updateAgreement_partnerProfileId :: Lens' UpdateAgreement (Maybe Text)
-- | You can update the status for the agreement, either activating an
-- inactive agreement or the reverse.
updateAgreement_status :: Lens' UpdateAgreement (Maybe AgreementStatusType)
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
updateAgreement_agreementId :: Lens' UpdateAgreement Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
updateAgreement_serverId :: Lens' UpdateAgreement Text
-- | See: newUpdateAgreementResponse smart constructor.
data UpdateAgreementResponse
UpdateAgreementResponse' :: Int -> Text -> UpdateAgreementResponse
-- | The response's http status code.
[$sel:httpStatus:UpdateAgreementResponse'] :: UpdateAgreementResponse -> Int
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
[$sel:agreementId:UpdateAgreementResponse'] :: UpdateAgreementResponse -> Text
-- | Create a value of UpdateAgreementResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateAgreementResponse',
-- updateAgreementResponse_httpStatus - The response's http status
-- code.
--
-- UpdateAgreement, updateAgreementResponse_agreementId - A
-- unique identifier for the agreement. This identifier is returned when
-- you create an agreement.
newUpdateAgreementResponse :: Int -> Text -> UpdateAgreementResponse
-- | The response's http status code.
updateAgreementResponse_httpStatus :: Lens' UpdateAgreementResponse Int
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
updateAgreementResponse_agreementId :: Lens' UpdateAgreementResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance GHC.Show.Show Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance GHC.Read.Read Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance GHC.Classes.Eq Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance GHC.Generics.Generic Amazonka.Transfer.UpdateAgreement.UpdateAgreementResponse
instance GHC.Show.Show Amazonka.Transfer.UpdateAgreement.UpdateAgreementResponse
instance GHC.Read.Read Amazonka.Transfer.UpdateAgreement.UpdateAgreementResponse
instance GHC.Classes.Eq Amazonka.Transfer.UpdateAgreement.UpdateAgreementResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateAgreement.UpdateAgreementResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UpdateAgreement.UpdateAgreement
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UpdateAgreement.UpdateAgreement
-- | Updates the active and inactive dates for a certificate.
module Amazonka.Transfer.UpdateCertificate
-- | See: newUpdateCertificate smart constructor.
data UpdateCertificate
UpdateCertificate' :: Maybe POSIX -> Maybe Text -> Maybe POSIX -> Text -> UpdateCertificate
-- | An optional date that specifies when the certificate becomes active.
[$sel:activeDate:UpdateCertificate'] :: UpdateCertificate -> Maybe POSIX
-- | A short description to help identify the certificate.
[$sel:description:UpdateCertificate'] :: UpdateCertificate -> Maybe Text
-- | An optional date that specifies when the certificate becomes inactive.
[$sel:inactiveDate:UpdateCertificate'] :: UpdateCertificate -> Maybe POSIX
-- | The identifier of the certificate object that you are updating.
[$sel:certificateId:UpdateCertificate'] :: UpdateCertificate -> Text
-- | Create a value of UpdateCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateCertificate, updateCertificate_activeDate - An
-- optional date that specifies when the certificate becomes active.
--
-- UpdateCertificate, updateCertificate_description - A
-- short description to help identify the certificate.
--
-- UpdateCertificate, updateCertificate_inactiveDate - An
-- optional date that specifies when the certificate becomes inactive.
--
-- UpdateCertificate, updateCertificate_certificateId - The
-- identifier of the certificate object that you are updating.
newUpdateCertificate :: Text -> UpdateCertificate
-- | An optional date that specifies when the certificate becomes active.
updateCertificate_activeDate :: Lens' UpdateCertificate (Maybe UTCTime)
-- | A short description to help identify the certificate.
updateCertificate_description :: Lens' UpdateCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
updateCertificate_inactiveDate :: Lens' UpdateCertificate (Maybe UTCTime)
-- | The identifier of the certificate object that you are updating.
updateCertificate_certificateId :: Lens' UpdateCertificate Text
-- | See: newUpdateCertificateResponse smart constructor.
data UpdateCertificateResponse
UpdateCertificateResponse' :: Int -> Text -> UpdateCertificateResponse
-- | The response's http status code.
[$sel:httpStatus:UpdateCertificateResponse'] :: UpdateCertificateResponse -> Int
-- | Returns the identifier of the certificate object that you are
-- updating.
[$sel:certificateId:UpdateCertificateResponse'] :: UpdateCertificateResponse -> Text
-- | Create a value of UpdateCertificateResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateCertificateResponse',
-- updateCertificateResponse_httpStatus - The response's http
-- status code.
--
-- UpdateCertificate,
-- updateCertificateResponse_certificateId - Returns the
-- identifier of the certificate object that you are updating.
newUpdateCertificateResponse :: Int -> Text -> UpdateCertificateResponse
-- | The response's http status code.
updateCertificateResponse_httpStatus :: Lens' UpdateCertificateResponse Int
-- | Returns the identifier of the certificate object that you are
-- updating.
updateCertificateResponse_certificateId :: Lens' UpdateCertificateResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance GHC.Show.Show Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance GHC.Read.Read Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance GHC.Classes.Eq Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance GHC.Generics.Generic Amazonka.Transfer.UpdateCertificate.UpdateCertificateResponse
instance GHC.Show.Show Amazonka.Transfer.UpdateCertificate.UpdateCertificateResponse
instance GHC.Read.Read Amazonka.Transfer.UpdateCertificate.UpdateCertificateResponse
instance GHC.Classes.Eq Amazonka.Transfer.UpdateCertificate.UpdateCertificateResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateCertificate.UpdateCertificateResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UpdateCertificate.UpdateCertificate
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UpdateCertificate.UpdateCertificate
-- | Updates some of the parameters for an existing connector. Provide the
-- ConnectorId for the connector that you want to update, along
-- with the new values for the parameters to update.
module Amazonka.Transfer.UpdateConnector
-- | See: newUpdateConnector smart constructor.
data UpdateConnector
UpdateConnector' :: Maybe Text -> Maybe As2ConnectorConfig -> Maybe Text -> Maybe Text -> Text -> UpdateConnector
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
[$sel:accessRole:UpdateConnector'] :: UpdateConnector -> Maybe Text
-- | A structure that contains the parameters for a connector object.
[$sel:as2Config:UpdateConnector'] :: UpdateConnector -> Maybe As2ConnectorConfig
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
[$sel:loggingRole:UpdateConnector'] :: UpdateConnector -> Maybe Text
-- | The URL of the partner's AS2 endpoint.
[$sel:url:UpdateConnector'] :: UpdateConnector -> Maybe Text
-- | The unique identifier for the connector.
[$sel:connectorId:UpdateConnector'] :: UpdateConnector -> Text
-- | Create a value of UpdateConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateConnector, updateConnector_accessRole - With AS2,
-- you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- UpdateConnector, updateConnector_as2Config - A structure
-- that contains the parameters for a connector object.
--
-- UpdateConnector, updateConnector_loggingRole - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that allows a connector to turn on CloudWatch logging for Amazon
-- S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
--
-- UpdateConnector, updateConnector_url - The URL of the
-- partner's AS2 endpoint.
--
-- UpdateConnector, updateConnector_connectorId - The
-- unique identifier for the connector.
newUpdateConnector :: Text -> UpdateConnector
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
updateConnector_accessRole :: Lens' UpdateConnector (Maybe Text)
-- | A structure that contains the parameters for a connector object.
updateConnector_as2Config :: Lens' UpdateConnector (Maybe As2ConnectorConfig)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
updateConnector_loggingRole :: Lens' UpdateConnector (Maybe Text)
-- | The URL of the partner's AS2 endpoint.
updateConnector_url :: Lens' UpdateConnector (Maybe Text)
-- | The unique identifier for the connector.
updateConnector_connectorId :: Lens' UpdateConnector Text
-- | See: newUpdateConnectorResponse smart constructor.
data UpdateConnectorResponse
UpdateConnectorResponse' :: Int -> Text -> UpdateConnectorResponse
-- | The response's http status code.
[$sel:httpStatus:UpdateConnectorResponse'] :: UpdateConnectorResponse -> Int
-- | Returns the identifier of the connector object that you are updating.
[$sel:connectorId:UpdateConnectorResponse'] :: UpdateConnectorResponse -> Text
-- | Create a value of UpdateConnectorResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateConnectorResponse',
-- updateConnectorResponse_httpStatus - The response's http status
-- code.
--
-- UpdateConnector, updateConnectorResponse_connectorId -
-- Returns the identifier of the connector object that you are updating.
newUpdateConnectorResponse :: Int -> Text -> UpdateConnectorResponse
-- | The response's http status code.
updateConnectorResponse_httpStatus :: Lens' UpdateConnectorResponse Int
-- | Returns the identifier of the connector object that you are updating.
updateConnectorResponse_connectorId :: Lens' UpdateConnectorResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.UpdateConnector.UpdateConnector
instance GHC.Show.Show Amazonka.Transfer.UpdateConnector.UpdateConnector
instance GHC.Read.Read Amazonka.Transfer.UpdateConnector.UpdateConnector
instance GHC.Classes.Eq Amazonka.Transfer.UpdateConnector.UpdateConnector
instance GHC.Generics.Generic Amazonka.Transfer.UpdateConnector.UpdateConnectorResponse
instance GHC.Show.Show Amazonka.Transfer.UpdateConnector.UpdateConnectorResponse
instance GHC.Read.Read Amazonka.Transfer.UpdateConnector.UpdateConnectorResponse
instance GHC.Classes.Eq Amazonka.Transfer.UpdateConnector.UpdateConnectorResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UpdateConnector.UpdateConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateConnector.UpdateConnectorResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UpdateConnector.UpdateConnector
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateConnector.UpdateConnector
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UpdateConnector.UpdateConnector
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UpdateConnector.UpdateConnector
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UpdateConnector.UpdateConnector
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UpdateConnector.UpdateConnector
-- | Updates the description for the host key that's specified by the
-- ServerId and HostKeyId parameters.
module Amazonka.Transfer.UpdateHostKey
-- | See: newUpdateHostKey smart constructor.
data UpdateHostKey
UpdateHostKey' :: Text -> Text -> Text -> UpdateHostKey
-- | The identifier of the server that contains the host key that you are
-- updating.
[$sel:serverId:UpdateHostKey'] :: UpdateHostKey -> Text
-- | The identifier of the host key that you are updating.
[$sel:hostKeyId:UpdateHostKey'] :: UpdateHostKey -> Text
-- | An updated description for the host key.
[$sel:description:UpdateHostKey'] :: UpdateHostKey -> Text
-- | Create a value of UpdateHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateHostKey, updateHostKey_serverId - The identifier
-- of the server that contains the host key that you are updating.
--
-- UpdateHostKey, updateHostKey_hostKeyId - The identifier
-- of the host key that you are updating.
--
-- UpdateHostKey, updateHostKey_description - An updated
-- description for the host key.
newUpdateHostKey :: Text -> Text -> Text -> UpdateHostKey
-- | The identifier of the server that contains the host key that you are
-- updating.
updateHostKey_serverId :: Lens' UpdateHostKey Text
-- | The identifier of the host key that you are updating.
updateHostKey_hostKeyId :: Lens' UpdateHostKey Text
-- | An updated description for the host key.
updateHostKey_description :: Lens' UpdateHostKey Text
-- | See: newUpdateHostKeyResponse smart constructor.
data UpdateHostKeyResponse
UpdateHostKeyResponse' :: Int -> Text -> Text -> UpdateHostKeyResponse
-- | The response's http status code.
[$sel:httpStatus:UpdateHostKeyResponse'] :: UpdateHostKeyResponse -> Int
-- | Returns the server identifier for the server that contains the updated
-- host key.
[$sel:serverId:UpdateHostKeyResponse'] :: UpdateHostKeyResponse -> Text
-- | Returns the host key identifier for the updated host key.
[$sel:hostKeyId:UpdateHostKeyResponse'] :: UpdateHostKeyResponse -> Text
-- | Create a value of UpdateHostKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateHostKeyResponse',
-- updateHostKeyResponse_httpStatus - The response's http status
-- code.
--
-- UpdateHostKey, updateHostKeyResponse_serverId - Returns
-- the server identifier for the server that contains the updated host
-- key.
--
-- UpdateHostKey, updateHostKeyResponse_hostKeyId - Returns
-- the host key identifier for the updated host key.
newUpdateHostKeyResponse :: Int -> Text -> Text -> UpdateHostKeyResponse
-- | The response's http status code.
updateHostKeyResponse_httpStatus :: Lens' UpdateHostKeyResponse Int
-- | Returns the server identifier for the server that contains the updated
-- host key.
updateHostKeyResponse_serverId :: Lens' UpdateHostKeyResponse Text
-- | Returns the host key identifier for the updated host key.
updateHostKeyResponse_hostKeyId :: Lens' UpdateHostKeyResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance GHC.Show.Show Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance GHC.Read.Read Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance GHC.Classes.Eq Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance GHC.Generics.Generic Amazonka.Transfer.UpdateHostKey.UpdateHostKeyResponse
instance GHC.Show.Show Amazonka.Transfer.UpdateHostKey.UpdateHostKeyResponse
instance GHC.Read.Read Amazonka.Transfer.UpdateHostKey.UpdateHostKeyResponse
instance GHC.Classes.Eq Amazonka.Transfer.UpdateHostKey.UpdateHostKeyResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateHostKey.UpdateHostKeyResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UpdateHostKey.UpdateHostKey
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UpdateHostKey.UpdateHostKey
-- | Updates some of the parameters for an existing profile. Provide the
-- ProfileId for the profile that you want to update, along with
-- the new values for the parameters to update.
module Amazonka.Transfer.UpdateProfile
-- | See: newUpdateProfile smart constructor.
data UpdateProfile
UpdateProfile' :: Maybe [Text] -> Text -> UpdateProfile
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
[$sel:certificateIds:UpdateProfile'] :: UpdateProfile -> Maybe [Text]
-- | The identifier of the profile object that you are updating.
[$sel:profileId:UpdateProfile'] :: UpdateProfile -> Text
-- | Create a value of UpdateProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateProfile, updateProfile_certificateIds - An array
-- of identifiers for the imported certificates. You use this identifier
-- for working with profiles and partner profiles.
--
-- UpdateProfile, updateProfile_profileId - The identifier
-- of the profile object that you are updating.
newUpdateProfile :: Text -> UpdateProfile
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
updateProfile_certificateIds :: Lens' UpdateProfile (Maybe [Text])
-- | The identifier of the profile object that you are updating.
updateProfile_profileId :: Lens' UpdateProfile Text
-- | See: newUpdateProfileResponse smart constructor.
data UpdateProfileResponse
UpdateProfileResponse' :: Int -> Text -> UpdateProfileResponse
-- | The response's http status code.
[$sel:httpStatus:UpdateProfileResponse'] :: UpdateProfileResponse -> Int
-- | Returns the identifier for the profile that's being updated.
[$sel:profileId:UpdateProfileResponse'] :: UpdateProfileResponse -> Text
-- | Create a value of UpdateProfileResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateProfileResponse',
-- updateProfileResponse_httpStatus - The response's http status
-- code.
--
-- UpdateProfile, updateProfileResponse_profileId - Returns
-- the identifier for the profile that's being updated.
newUpdateProfileResponse :: Int -> Text -> UpdateProfileResponse
-- | The response's http status code.
updateProfileResponse_httpStatus :: Lens' UpdateProfileResponse Int
-- | Returns the identifier for the profile that's being updated.
updateProfileResponse_profileId :: Lens' UpdateProfileResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.UpdateProfile.UpdateProfile
instance GHC.Show.Show Amazonka.Transfer.UpdateProfile.UpdateProfile
instance GHC.Read.Read Amazonka.Transfer.UpdateProfile.UpdateProfile
instance GHC.Classes.Eq Amazonka.Transfer.UpdateProfile.UpdateProfile
instance GHC.Generics.Generic Amazonka.Transfer.UpdateProfile.UpdateProfileResponse
instance GHC.Show.Show Amazonka.Transfer.UpdateProfile.UpdateProfileResponse
instance GHC.Read.Read Amazonka.Transfer.UpdateProfile.UpdateProfileResponse
instance GHC.Classes.Eq Amazonka.Transfer.UpdateProfile.UpdateProfileResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UpdateProfile.UpdateProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateProfile.UpdateProfileResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UpdateProfile.UpdateProfile
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateProfile.UpdateProfile
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UpdateProfile.UpdateProfile
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UpdateProfile.UpdateProfile
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UpdateProfile.UpdateProfile
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UpdateProfile.UpdateProfile
-- | Updates the file transfer protocol-enabled server's properties after
-- that server has been created.
--
-- The UpdateServer call returns the ServerId of the
-- server you updated.
module Amazonka.Transfer.UpdateServer
-- | See: newUpdateServer smart constructor.
data UpdateServer
UpdateServer' :: Maybe Text -> Maybe EndpointDetails -> Maybe EndpointType -> Maybe (Sensitive Text) -> Maybe IdentityProviderDetails -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProtocolDetails -> Maybe (NonEmpty Protocol) -> Maybe Text -> Maybe WorkflowDetails -> Text -> UpdateServer
-- | The Amazon Resource Name (ARN) of the Amazon Web ServicesCertificate
-- Manager (ACM) certificate. Required when Protocols is set to
-- FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Amazon Web ServicesCertificate Manager User
-- Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Amazon Web ServicesCertificate
-- Manager User Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the Amazon
-- Web ServicesCertificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
[$sel:certificate:UpdateServer'] :: UpdateServer -> Maybe Text
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
[$sel:endpointDetails:UpdateServer'] :: UpdateServer -> Maybe EndpointDetails
-- | The type of endpoint that you want your server to use. You can choose
-- to make your server's endpoint publicly accessible (PUBLIC) or host it
-- inside your VPC. With an endpoint that is hosted in a VPC, you can
-- restrict access to your server and resources only within your VPC or
-- choose to make it internet facing by attaching Elastic IP addresses
-- directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Servicesaccount on or before May 19, 2021, you will
-- not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
[$sel:endpointType:UpdateServer'] :: UpdateServer -> Maybe EndpointType
-- | The RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
[$sel:hostKey:UpdateServer'] :: UpdateServer -> Maybe (Sensitive Text)
-- | An array containing all of the information required to call a
-- customer's authentication API method.
[$sel:identityProviderDetails:UpdateServer'] :: UpdateServer -> Maybe IdentityProviderDetails
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
[$sel:loggingRole:UpdateServer'] :: UpdateServer -> Maybe Text
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
[$sel:postAuthenticationLoginBanner:UpdateServer'] :: UpdateServer -> Maybe Text
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
[$sel:preAuthenticationLoginBanner:UpdateServer'] :: UpdateServer -> Maybe Text
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
[$sel:protocolDetails:UpdateServer'] :: UpdateServer -> Maybe ProtocolDetails
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
[$sel:protocols:UpdateServer'] :: UpdateServer -> Maybe (NonEmpty Protocol)
-- | Specifies the name of the security policy that is attached to the
-- server.
[$sel:securityPolicyName:UpdateServer'] :: UpdateServer -> Maybe Text
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
[$sel:workflowDetails:UpdateServer'] :: UpdateServer -> Maybe WorkflowDetails
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
[$sel:serverId:UpdateServer'] :: UpdateServer -> Text
-- | Create a value of UpdateServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateServer, updateServer_certificate - The Amazon
-- Resource Name (ARN) of the Amazon Web ServicesCertificate Manager
-- (ACM) certificate. Required when Protocols is set to
-- FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Amazon Web ServicesCertificate Manager User
-- Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Amazon Web ServicesCertificate
-- Manager User Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the Amazon
-- Web ServicesCertificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
--
-- UpdateServer, updateServer_endpointDetails - The virtual
-- private cloud (VPC) endpoint settings that are configured for your
-- server. When you host your endpoint within your VPC, you can make your
-- endpoint accessible only to resources within your VPC, or you can
-- attach Elastic IP addresses and make your endpoint accessible to
-- clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
--
-- UpdateServer, updateServer_endpointType - The type of
-- endpoint that you want your server to use. You can choose to make your
-- server's endpoint publicly accessible (PUBLIC) or host it inside your
-- VPC. With an endpoint that is hosted in a VPC, you can restrict access
-- to your server and resources only within your VPC or choose to make it
-- internet facing by attaching Elastic IP addresses directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Servicesaccount on or before May 19, 2021, you will
-- not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
--
-- $sel:hostKey:UpdateServer', updateServer_hostKey - The
-- RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
--
-- UpdateServer, updateServer_identityProviderDetails - An
-- array containing all of the information required to call a customer's
-- authentication API method.
--
-- UpdateServer, updateServer_loggingRole - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that allows a server to turn on Amazon CloudWatch logging for Amazon
-- S3 or Amazon EFSevents. When set, you can view user activity in your
-- CloudWatch logs.
--
-- UpdateServer, updateServer_postAuthenticationLoginBanner
-- - Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
--
-- UpdateServer, updateServer_preAuthenticationLoginBanner
-- - Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
--
-- UpdateServer, updateServer_protocolDetails - The
-- protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
--
-- UpdateServer, updateServer_protocols - Specifies the
-- file transfer protocol or protocols over which your file transfer
-- protocol client can connect to your server's endpoint. The available
-- protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
--
-- UpdateServer, updateServer_securityPolicyName -
-- Specifies the name of the security policy that is attached to the
-- server.
--
-- UpdateServer, updateServer_workflowDetails - Specifies
-- the workflow ID for the workflow to assign and the execution role
-- that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
--
-- UpdateServer, updateServer_serverId - A system-assigned
-- unique identifier for a server instance that the user account is
-- assigned to.
newUpdateServer :: Text -> UpdateServer
-- | The Amazon Resource Name (ARN) of the Amazon Web ServicesCertificate
-- Manager (ACM) certificate. Required when Protocols is set to
-- FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Amazon Web ServicesCertificate Manager User
-- Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Amazon Web ServicesCertificate
-- Manager User Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the Amazon
-- Web ServicesCertificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
updateServer_certificate :: Lens' UpdateServer (Maybe Text)
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
updateServer_endpointDetails :: Lens' UpdateServer (Maybe EndpointDetails)
-- | The type of endpoint that you want your server to use. You can choose
-- to make your server's endpoint publicly accessible (PUBLIC) or host it
-- inside your VPC. With an endpoint that is hosted in a VPC, you can
-- restrict access to your server and resources only within your VPC or
-- choose to make it internet facing by attaching Elastic IP addresses
-- directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Servicesaccount on or before May 19, 2021, you will
-- not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
updateServer_endpointType :: Lens' UpdateServer (Maybe EndpointType)
-- | The RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
updateServer_hostKey :: Lens' UpdateServer (Maybe Text)
-- | An array containing all of the information required to call a
-- customer's authentication API method.
updateServer_identityProviderDetails :: Lens' UpdateServer (Maybe IdentityProviderDetails)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
updateServer_loggingRole :: Lens' UpdateServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
updateServer_postAuthenticationLoginBanner :: Lens' UpdateServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
updateServer_preAuthenticationLoginBanner :: Lens' UpdateServer (Maybe Text)
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
updateServer_protocolDetails :: Lens' UpdateServer (Maybe ProtocolDetails)
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
updateServer_protocols :: Lens' UpdateServer (Maybe (NonEmpty Protocol))
-- | Specifies the name of the security policy that is attached to the
-- server.
updateServer_securityPolicyName :: Lens' UpdateServer (Maybe Text)
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
updateServer_workflowDetails :: Lens' UpdateServer (Maybe WorkflowDetails)
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
updateServer_serverId :: Lens' UpdateServer Text
-- | See: newUpdateServerResponse smart constructor.
data UpdateServerResponse
UpdateServerResponse' :: Int -> Text -> UpdateServerResponse
-- | The response's http status code.
[$sel:httpStatus:UpdateServerResponse'] :: UpdateServerResponse -> Int
-- | A system-assigned unique identifier for a server that the user account
-- is assigned to.
[$sel:serverId:UpdateServerResponse'] :: UpdateServerResponse -> Text
-- | Create a value of UpdateServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateServerResponse',
-- updateServerResponse_httpStatus - The response's http status
-- code.
--
-- UpdateServer, updateServerResponse_serverId - A
-- system-assigned unique identifier for a server that the user account
-- is assigned to.
newUpdateServerResponse :: Int -> Text -> UpdateServerResponse
-- | The response's http status code.
updateServerResponse_httpStatus :: Lens' UpdateServerResponse Int
-- | A system-assigned unique identifier for a server that the user account
-- is assigned to.
updateServerResponse_serverId :: Lens' UpdateServerResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.UpdateServer.UpdateServer
instance GHC.Show.Show Amazonka.Transfer.UpdateServer.UpdateServer
instance GHC.Classes.Eq Amazonka.Transfer.UpdateServer.UpdateServer
instance GHC.Generics.Generic Amazonka.Transfer.UpdateServer.UpdateServerResponse
instance GHC.Show.Show Amazonka.Transfer.UpdateServer.UpdateServerResponse
instance GHC.Read.Read Amazonka.Transfer.UpdateServer.UpdateServerResponse
instance GHC.Classes.Eq Amazonka.Transfer.UpdateServer.UpdateServerResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UpdateServer.UpdateServer
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateServer.UpdateServerResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UpdateServer.UpdateServer
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateServer.UpdateServer
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UpdateServer.UpdateServer
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UpdateServer.UpdateServer
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UpdateServer.UpdateServer
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UpdateServer.UpdateServer
-- | Assigns new properties to a user. Parameters you pass modify any or
-- all of the following: the home directory, role, and policy for the
-- UserName and ServerId you specify.
--
-- The response returns the ServerId and the UserName
-- for the updated user.
module Amazonka.Transfer.UpdateUser
-- | See: newUpdateUser smart constructor.
data UpdateUser
UpdateUser' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Text -> Text -> UpdateUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
[$sel:homeDirectory:UpdateUser'] :: UpdateUser -> Maybe Text
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
[$sel:homeDirectoryMappings:UpdateUser'] :: UpdateUser -> Maybe (NonEmpty HomeDirectoryMapEntry)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
[$sel:homeDirectoryType:UpdateUser'] :: UpdateUser -> Maybe HomeDirectoryType
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Creating a session
-- policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
[$sel:policy:UpdateUser'] :: UpdateUser -> Maybe Text
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon Elastic File Systems (Amazon EFS). The POSIX permissions that
-- are set on files and directories in your file system determines the
-- level of access your users get when transferring files into and out of
-- your Amazon EFS file systems.
[$sel:posixProfile:UpdateUser'] :: UpdateUser -> Maybe PosixProfile
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
[$sel:role':UpdateUser'] :: UpdateUser -> Maybe Text
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
[$sel:serverId:UpdateUser'] :: UpdateUser -> Text
-- | A unique string that identifies a user and is associated with a server
-- as specified by the ServerId. This user name must be a
-- minimum of 3 and a maximum of 100 characters long. The following are
-- valid characters: a-z, A-Z, 0-9, underscore '_', hyphen '-', period
-- '.', and at sign '@'. The user name can't start with a hyphen, period,
-- or at sign.
[$sel:userName:UpdateUser'] :: UpdateUser -> Text
-- | Create a value of UpdateUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateUser, updateUser_homeDirectory - The landing
-- directory (folder) for a user when they log in to the server using the
-- client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- UpdateUser, updateUser_homeDirectoryMappings - Logical
-- directory mappings that specify what Amazon S3 or Amazon EFS paths and
-- keys should be visible to your user and how you want to make them
-- visible. You must specify the Entry and Target pair,
-- where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- UpdateUser, updateUser_homeDirectoryType - The type of
-- landing directory (folder) that you want your users' home directory to
-- be when they log in to the server. If you set it to PATH, the
-- user will see the absolute Amazon S3 bucket or EFS paths as is in
-- their file transfer protocol clients. If you set it LOGICAL,
-- you need to provide mappings in the HomeDirectoryMappings for
-- how you want to make Amazon S3 or Amazon EFS paths visible to your
-- users.
--
-- UpdateUser, updateUser_policy - A session policy for
-- your user so that you can use the same Identity and Access Management
-- (IAM) role across multiple users. This policy scopes down a user's
-- access to portions of their Amazon S3 bucket. Variables that you can
-- use inside this policy include ${Transfer:UserName},
-- ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Creating a session
-- policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
--
-- UpdateUser, updateUser_posixProfile - Specifies the full
-- POSIX identity, including user ID (Uid), group ID
-- (Gid), and any secondary groups IDs (SecondaryGids),
-- that controls your users' access to your Amazon Elastic File Systems
-- (Amazon EFS). The POSIX permissions that are set on files and
-- directories in your file system determines the level of access your
-- users get when transferring files into and out of your Amazon EFS file
-- systems.
--
-- UpdateUser, updateUser_role - The Amazon Resource Name
-- (ARN) of the Identity and Access Management (IAM) role that controls
-- your users' access to your Amazon S3 bucket or Amazon EFS file system.
-- The policies attached to this role determine the level of access that
-- you want to provide your users when transferring files into and out of
-- your Amazon S3 bucket or Amazon EFS file system. The IAM role should
-- also contain a trust relationship that allows the server to access
-- your resources when servicing your users' transfer requests.
--
-- UpdateUser, updateUser_serverId - A system-assigned
-- unique identifier for a server instance that the user account is
-- assigned to.
--
-- UpdateUser, updateUser_userName - A unique string that
-- identifies a user and is associated with a server as specified by the
-- ServerId. This user name must be a minimum of 3 and a maximum
-- of 100 characters long. The following are valid characters: a-z, A-Z,
-- 0-9, underscore '_', hyphen '-', period '.', and at sign '@'. The user
-- name can't start with a hyphen, period, or at sign.
newUpdateUser :: Text -> Text -> UpdateUser
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
updateUser_homeDirectory :: Lens' UpdateUser (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
updateUser_homeDirectoryMappings :: Lens' UpdateUser (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
updateUser_homeDirectoryType :: Lens' UpdateUser (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Creating a session
-- policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
updateUser_policy :: Lens' UpdateUser (Maybe Text)
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon Elastic File Systems (Amazon EFS). The POSIX permissions that
-- are set on files and directories in your file system determines the
-- level of access your users get when transferring files into and out of
-- your Amazon EFS file systems.
updateUser_posixProfile :: Lens' UpdateUser (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
updateUser_role :: Lens' UpdateUser (Maybe Text)
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
updateUser_serverId :: Lens' UpdateUser Text
-- | A unique string that identifies a user and is associated with a server
-- as specified by the ServerId. This user name must be a
-- minimum of 3 and a maximum of 100 characters long. The following are
-- valid characters: a-z, A-Z, 0-9, underscore '_', hyphen '-', period
-- '.', and at sign '@'. The user name can't start with a hyphen, period,
-- or at sign.
updateUser_userName :: Lens' UpdateUser Text
-- | UpdateUserResponse returns the user name and identifier for
-- the request to update a user's properties.
--
-- See: newUpdateUserResponse smart constructor.
data UpdateUserResponse
UpdateUserResponse' :: Int -> Text -> Text -> UpdateUserResponse
-- | The response's http status code.
[$sel:httpStatus:UpdateUserResponse'] :: UpdateUserResponse -> Int
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
[$sel:serverId:UpdateUserResponse'] :: UpdateUserResponse -> Text
-- | The unique identifier for a user that is assigned to a server instance
-- that was specified in the request.
[$sel:userName:UpdateUserResponse'] :: UpdateUserResponse -> Text
-- | Create a value of UpdateUserResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateUserResponse',
-- updateUserResponse_httpStatus - The response's http status
-- code.
--
-- UpdateUser, updateUserResponse_serverId - A
-- system-assigned unique identifier for a server instance that the user
-- account is assigned to.
--
-- UpdateUser, updateUserResponse_userName - The unique
-- identifier for a user that is assigned to a server instance that was
-- specified in the request.
newUpdateUserResponse :: Int -> Text -> Text -> UpdateUserResponse
-- | The response's http status code.
updateUserResponse_httpStatus :: Lens' UpdateUserResponse Int
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
updateUserResponse_serverId :: Lens' UpdateUserResponse Text
-- | The unique identifier for a user that is assigned to a server instance
-- that was specified in the request.
updateUserResponse_userName :: Lens' UpdateUserResponse Text
instance GHC.Generics.Generic Amazonka.Transfer.UpdateUser.UpdateUser
instance GHC.Show.Show Amazonka.Transfer.UpdateUser.UpdateUser
instance GHC.Read.Read Amazonka.Transfer.UpdateUser.UpdateUser
instance GHC.Classes.Eq Amazonka.Transfer.UpdateUser.UpdateUser
instance GHC.Generics.Generic Amazonka.Transfer.UpdateUser.UpdateUserResponse
instance GHC.Show.Show Amazonka.Transfer.UpdateUser.UpdateUserResponse
instance GHC.Read.Read Amazonka.Transfer.UpdateUser.UpdateUserResponse
instance GHC.Classes.Eq Amazonka.Transfer.UpdateUser.UpdateUserResponse
instance Amazonka.Types.AWSRequest Amazonka.Transfer.UpdateUser.UpdateUser
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateUser.UpdateUserResponse
instance Data.Hashable.Class.Hashable Amazonka.Transfer.UpdateUser.UpdateUser
instance Control.DeepSeq.NFData Amazonka.Transfer.UpdateUser.UpdateUser
instance Amazonka.Data.Headers.ToHeaders Amazonka.Transfer.UpdateUser.UpdateUser
instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.Transfer.UpdateUser.UpdateUser
instance Amazonka.Data.Path.ToPath Amazonka.Transfer.UpdateUser.UpdateUser
instance Amazonka.Data.Query.ToQuery Amazonka.Transfer.UpdateUser.UpdateUser
module Amazonka.Transfer.Lens
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
createAccess_homeDirectory :: Lens' CreateAccess (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
createAccess_homeDirectoryMappings :: Lens' CreateAccess (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
createAccess_homeDirectoryType :: Lens' CreateAccess (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Security Token
-- Service API Reference.
createAccess_policy :: Lens' CreateAccess (Maybe Text)
-- | Undocumented member.
createAccess_posixProfile :: Lens' CreateAccess (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
createAccess_role :: Lens' CreateAccess Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
createAccess_serverId :: Lens' CreateAccess Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
createAccess_externalId :: Lens' CreateAccess Text
-- | The response's http status code.
createAccessResponse_httpStatus :: Lens' CreateAccessResponse Int
-- | The identifier of the server that the user is attached to.
createAccessResponse_serverId :: Lens' CreateAccessResponse Text
-- | The external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Transfer Family.
createAccessResponse_externalId :: Lens' CreateAccessResponse Text
-- | A name or short description to identify the agreement.
createAgreement_description :: Lens' CreateAgreement (Maybe Text)
-- | The status of the agreement. The agreement can be either
-- ACTIVE or INACTIVE.
createAgreement_status :: Lens' CreateAgreement (Maybe AgreementStatusType)
-- | Key-value pairs that can be used to group and search for agreements.
createAgreement_tags :: Lens' CreateAgreement (Maybe (NonEmpty Tag))
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
createAgreement_serverId :: Lens' CreateAgreement Text
-- | A unique identifier for the AS2 local profile.
createAgreement_localProfileId :: Lens' CreateAgreement Text
-- | A unique identifier for the partner profile used in the agreement.
createAgreement_partnerProfileId :: Lens' CreateAgreement Text
-- | The landing directory (folder) for files transferred by using the AS2
-- protocol.
--
-- A BaseDirectory example is
-- DOC-EXAMPLE-BUCKET/home/mydirectory.
createAgreement_baseDirectory :: Lens' CreateAgreement Text
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
createAgreement_accessRole :: Lens' CreateAgreement Text
-- | The response's http status code.
createAgreementResponse_httpStatus :: Lens' CreateAgreementResponse Int
-- | The unique identifier for the agreement. Use this ID for deleting, or
-- updating an agreement, as well as in any other API calls that require
-- that you specify the agreement ID.
createAgreementResponse_agreementId :: Lens' CreateAgreementResponse Text
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
createConnector_loggingRole :: Lens' CreateConnector (Maybe Text)
-- | Key-value pairs that can be used to group and search for connectors.
-- Tags are metadata attached to connectors for any purpose.
createConnector_tags :: Lens' CreateConnector (Maybe (NonEmpty Tag))
-- | The URL of the partner's AS2 endpoint.
createConnector_url :: Lens' CreateConnector Text
-- | A structure that contains the parameters for a connector object.
createConnector_as2Config :: Lens' CreateConnector As2ConnectorConfig
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
createConnector_accessRole :: Lens' CreateConnector Text
-- | The response's http status code.
createConnectorResponse_httpStatus :: Lens' CreateConnectorResponse Int
-- | The unique identifier for the connector, returned after the API call
-- succeeds.
createConnectorResponse_connectorId :: Lens' CreateConnectorResponse Text
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
createProfile_certificateIds :: Lens' CreateProfile (Maybe [Text])
-- | Key-value pairs that can be used to group and search for AS2 profiles.
createProfile_tags :: Lens' CreateProfile (Maybe (NonEmpty Tag))
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
createProfile_as2Id :: Lens' CreateProfile Text
-- | Determines the type of profile to create:
--
--
-- - Specify LOCAL to create a local profile. A local profile
-- represents the AS2-enabled Transfer Family server organization or
-- party.
-- - Specify PARTNER to create a partner profile. A partner
-- profile represents a remote organization, external to Transfer
-- Family.
--
createProfile_profileType :: Lens' CreateProfile ProfileType
-- | The response's http status code.
createProfileResponse_httpStatus :: Lens' CreateProfileResponse Int
-- | The unique identifier for the AS2 profile, returned after the API call
-- succeeds.
createProfileResponse_profileId :: Lens' CreateProfileResponse Text
-- | The Amazon Resource Name (ARN) of the Certificate Manager (ACM)
-- certificate. Required when Protocols is set to FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Certificate Manager User Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Certificate Manager User
-- Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the
-- Certificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
createServer_certificate :: Lens' CreateServer (Maybe Text)
-- | The domain of the storage system that is used for file transfers.
-- There are two domains available: Amazon Simple Storage Service (Amazon
-- S3) and Amazon Elastic File System (Amazon EFS). The default value is
-- S3.
--
-- After the server is created, the domain cannot be changed.
createServer_domain :: Lens' CreateServer (Maybe Domain)
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
createServer_endpointDetails :: Lens' CreateServer (Maybe EndpointDetails)
-- | The type of endpoint that you want your server to use. You can choose
-- to make your server's endpoint publicly accessible (PUBLIC) or host it
-- inside your VPC. With an endpoint that is hosted in a VPC, you can
-- restrict access to your server and resources only within your VPC or
-- choose to make it internet facing by attaching Elastic IP addresses
-- directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Services account
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Services account on or before May 19, 2021, you
-- will not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
createServer_endpointType :: Lens' CreateServer (Maybe EndpointType)
-- | The RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
createServer_hostKey :: Lens' CreateServer (Maybe Text)
-- | Required when IdentityProviderType is set to
-- AWS_DIRECTORY_SERVICE or API_GATEWAY. Accepts an
-- array containing all of the information required to use a directory in
-- AWS_DIRECTORY_SERVICE or invoke a customer-supplied
-- authentication API, including the API Gateway URL. Not required when
-- IdentityProviderType is set to SERVICE_MANAGED.
createServer_identityProviderDetails :: Lens' CreateServer (Maybe IdentityProviderDetails)
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
createServer_identityProviderType :: Lens' CreateServer (Maybe IdentityProviderType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
createServer_loggingRole :: Lens' CreateServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
createServer_postAuthenticationLoginBanner :: Lens' CreateServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
createServer_preAuthenticationLoginBanner :: Lens' CreateServer (Maybe Text)
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
createServer_protocolDetails :: Lens' CreateServer (Maybe ProtocolDetails)
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
createServer_protocols :: Lens' CreateServer (Maybe (NonEmpty Protocol))
-- | Specifies the name of the security policy that is attached to the
-- server.
createServer_securityPolicyName :: Lens' CreateServer (Maybe Text)
-- | Key-value pairs that can be used to group and search for servers.
createServer_tags :: Lens' CreateServer (Maybe (NonEmpty Tag))
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
createServer_workflowDetails :: Lens' CreateServer (Maybe WorkflowDetails)
-- | The response's http status code.
createServerResponse_httpStatus :: Lens' CreateServerResponse Int
-- | The service-assigned identifier of the server that is created.
createServerResponse_serverId :: Lens' CreateServerResponse Text
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
createUser_homeDirectory :: Lens' CreateUser (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory parameter
-- value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
createUser_homeDirectoryMappings :: Lens' CreateUser (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
createUser_homeDirectoryType :: Lens' CreateUser (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
createUser_policy :: Lens' CreateUser (Maybe Text)
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon EFS file systems. The POSIX permissions that are set on files
-- and directories in Amazon EFS determine the level of access your users
-- get when transferring files into and out of your Amazon EFS file
-- systems.
createUser_posixProfile :: Lens' CreateUser (Maybe PosixProfile)
-- | The public portion of the Secure Shell (SSH) key used to authenticate
-- the user to the server.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
createUser_sshPublicKeyBody :: Lens' CreateUser (Maybe Text)
-- | Key-value pairs that can be used to group and search for users. Tags
-- are metadata attached to users for any purpose.
createUser_tags :: Lens' CreateUser (Maybe (NonEmpty Tag))
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
createUser_role :: Lens' CreateUser Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
createUser_serverId :: Lens' CreateUser Text
-- | A unique string that identifies a user and is associated with a
-- ServerId. This user name must be a minimum of 3 and a maximum
-- of 100 characters long. The following are valid characters: a-z, A-Z,
-- 0-9, underscore '_', hyphen '-', period '.', and at sign '@'. The user
-- name can't start with a hyphen, period, or at sign.
createUser_userName :: Lens' CreateUser Text
-- | The response's http status code.
createUserResponse_httpStatus :: Lens' CreateUserResponse Int
-- | The identifier of the server that the user is attached to.
createUserResponse_serverId :: Lens' CreateUserResponse Text
-- | A unique string that identifies a user account associated with a
-- server.
createUserResponse_userName :: Lens' CreateUserResponse Text
-- | A textual description for the workflow.
createWorkflow_description :: Lens' CreateWorkflow (Maybe Text)
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
--
-- For custom steps, the lambda function needs to send FAILURE
-- to the call back API to kick off the exception steps. Additionally, if
-- the lambda does not send SUCCESS before it times out, the
-- exception steps are executed.
createWorkflow_onExceptionSteps :: Lens' CreateWorkflow (Maybe [WorkflowStep])
-- | Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
createWorkflow_tags :: Lens' CreateWorkflow (Maybe (NonEmpty Tag))
-- | Specifies the details for the steps that are in the specified
-- workflow.
--
-- The TYPE specifies which of the following actions is being
-- taken for this step.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
--
-- Currently, copying and tagging are supported only on S3.
--
-- For file location, you specify either the S3 bucket and key, or the
-- EFS file system ID and path.
createWorkflow_steps :: Lens' CreateWorkflow [WorkflowStep]
-- | The response's http status code.
createWorkflowResponse_httpStatus :: Lens' CreateWorkflowResponse Int
-- | A unique identifier for the workflow.
createWorkflowResponse_workflowId :: Lens' CreateWorkflowResponse Text
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
deleteAccess_serverId :: Lens' DeleteAccess Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
deleteAccess_externalId :: Lens' DeleteAccess Text
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
deleteAgreement_agreementId :: Lens' DeleteAgreement Text
-- | The server identifier associated with the agreement that you are
-- deleting.
deleteAgreement_serverId :: Lens' DeleteAgreement Text
-- | The identifier of the certificate object that you are deleting.
deleteCertificate_certificateId :: Lens' DeleteCertificate Text
-- | The unique identifier for the connector.
deleteConnector_connectorId :: Lens' DeleteConnector Text
-- | The identifier of the server that contains the host key that you are
-- deleting.
deleteHostKey_serverId :: Lens' DeleteHostKey Text
-- | The identifier of the host key that you are deleting.
deleteHostKey_hostKeyId :: Lens' DeleteHostKey Text
-- | The identifier of the profile that you are deleting.
deleteProfile_profileId :: Lens' DeleteProfile Text
-- | A unique system-assigned identifier for a server instance.
deleteServer_serverId :: Lens' DeleteServer Text
-- | A system-assigned unique identifier for a file transfer
-- protocol-enabled server instance that has the user assigned to it.
deleteSshPublicKey_serverId :: Lens' DeleteSshPublicKey Text
-- | A unique identifier used to reference your user's specific SSH key.
deleteSshPublicKey_sshPublicKeyId :: Lens' DeleteSshPublicKey Text
-- | A unique string that identifies a user whose public key is being
-- deleted.
deleteSshPublicKey_userName :: Lens' DeleteSshPublicKey Text
-- | A system-assigned unique identifier for a server instance that has the
-- user assigned to it.
deleteUser_serverId :: Lens' DeleteUser Text
-- | A unique string that identifies a user that is being deleted from a
-- server.
deleteUser_userName :: Lens' DeleteUser Text
-- | A unique identifier for the workflow.
deleteWorkflow_workflowId :: Lens' DeleteWorkflow Text
-- | A system-assigned unique identifier for a server that has this access
-- assigned.
describeAccess_serverId :: Lens' DescribeAccess Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
describeAccess_externalId :: Lens' DescribeAccess Text
-- | The response's http status code.
describeAccessResponse_httpStatus :: Lens' DescribeAccessResponse Int
-- | A system-assigned unique identifier for a server that has this access
-- assigned.
describeAccessResponse_serverId :: Lens' DescribeAccessResponse Text
-- | The external identifier of the server that the access is attached to.
describeAccessResponse_access :: Lens' DescribeAccessResponse DescribedAccess
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
describeAgreement_agreementId :: Lens' DescribeAgreement Text
-- | The server identifier that's associated with the agreement.
describeAgreement_serverId :: Lens' DescribeAgreement Text
-- | The response's http status code.
describeAgreementResponse_httpStatus :: Lens' DescribeAgreementResponse Int
-- | The details for the specified agreement, returned as a
-- DescribedAgreement object.
describeAgreementResponse_agreement :: Lens' DescribeAgreementResponse DescribedAgreement
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
describeCertificate_certificateId :: Lens' DescribeCertificate Text
-- | The response's http status code.
describeCertificateResponse_httpStatus :: Lens' DescribeCertificateResponse Int
-- | The details for the specified certificate, returned as an object.
describeCertificateResponse_certificate :: Lens' DescribeCertificateResponse DescribedCertificate
-- | The unique identifier for the connector.
describeConnector_connectorId :: Lens' DescribeConnector Text
-- | The response's http status code.
describeConnectorResponse_httpStatus :: Lens' DescribeConnectorResponse Int
-- | The structure that contains the details of the connector.
describeConnectorResponse_connector :: Lens' DescribeConnectorResponse DescribedConnector
-- | A unique identifier for the execution of a workflow.
describeExecution_executionId :: Lens' DescribeExecution Text
-- | A unique identifier for the workflow.
describeExecution_workflowId :: Lens' DescribeExecution Text
-- | The response's http status code.
describeExecutionResponse_httpStatus :: Lens' DescribeExecutionResponse Int
-- | A unique identifier for the workflow.
describeExecutionResponse_workflowId :: Lens' DescribeExecutionResponse Text
-- | The structure that contains the details of the workflow' execution.
describeExecutionResponse_execution :: Lens' DescribeExecutionResponse DescribedExecution
-- | The identifier of the server that contains the host key that you want
-- described.
describeHostKey_serverId :: Lens' DescribeHostKey Text
-- | The identifier of the host key that you want described.
describeHostKey_hostKeyId :: Lens' DescribeHostKey Text
-- | The response's http status code.
describeHostKeyResponse_httpStatus :: Lens' DescribeHostKeyResponse Int
-- | Returns the details for the specified host key.
describeHostKeyResponse_hostKey :: Lens' DescribeHostKeyResponse DescribedHostKey
-- | The identifier of the profile that you want described.
describeProfile_profileId :: Lens' DescribeProfile Text
-- | The response's http status code.
describeProfileResponse_httpStatus :: Lens' DescribeProfileResponse Int
-- | The details of the specified profile, returned as an object.
describeProfileResponse_profile :: Lens' DescribeProfileResponse DescribedProfile
-- | Specifies the name of the security policy that is attached to the
-- server.
describeSecurityPolicy_securityPolicyName :: Lens' DescribeSecurityPolicy Text
-- | The response's http status code.
describeSecurityPolicyResponse_httpStatus :: Lens' DescribeSecurityPolicyResponse Int
-- | An array containing the properties of the security policy.
describeSecurityPolicyResponse_securityPolicy :: Lens' DescribeSecurityPolicyResponse DescribedSecurityPolicy
-- | A system-assigned unique identifier for a server.
describeServer_serverId :: Lens' DescribeServer Text
-- | The response's http status code.
describeServerResponse_httpStatus :: Lens' DescribeServerResponse Int
-- | An array containing the properties of a server with the
-- ServerID you specified.
describeServerResponse_server :: Lens' DescribeServerResponse DescribedServer
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
describeUser_serverId :: Lens' DescribeUser Text
-- | The name of the user assigned to one or more servers. User names are
-- part of the sign-in credentials to use the Transfer Family service and
-- perform file transfer tasks.
describeUser_userName :: Lens' DescribeUser Text
-- | The response's http status code.
describeUserResponse_httpStatus :: Lens' DescribeUserResponse Int
-- | A system-assigned unique identifier for a server that has this user
-- assigned.
describeUserResponse_serverId :: Lens' DescribeUserResponse Text
-- | An array containing the properties of the user account for the
-- ServerID value that you specified.
describeUserResponse_user :: Lens' DescribeUserResponse DescribedUser
-- | A unique identifier for the workflow.
describeWorkflow_workflowId :: Lens' DescribeWorkflow Text
-- | The response's http status code.
describeWorkflowResponse_httpStatus :: Lens' DescribeWorkflowResponse Int
-- | The structure that contains the details of the workflow.
describeWorkflowResponse_workflow :: Lens' DescribeWorkflowResponse DescribedWorkflow
-- | An optional date that specifies when the certificate becomes active.
importCertificate_activeDate :: Lens' ImportCertificate (Maybe UTCTime)
-- | An optional list of certificates that make up the chain for the
-- certificate that's being imported.
importCertificate_certificateChain :: Lens' ImportCertificate (Maybe Text)
-- | A short description that helps identify the certificate.
importCertificate_description :: Lens' ImportCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
importCertificate_inactiveDate :: Lens' ImportCertificate (Maybe UTCTime)
-- | The file that contains the private key for the certificate that's
-- being imported.
importCertificate_privateKey :: Lens' ImportCertificate (Maybe Text)
-- | Key-value pairs that can be used to group and search for certificates.
importCertificate_tags :: Lens' ImportCertificate (Maybe (NonEmpty Tag))
-- | Specifies whether this certificate is used for signing or encryption.
importCertificate_usage :: Lens' ImportCertificate CertificateUsageType
-- | The file that contains the certificate to import.
importCertificate_certificate :: Lens' ImportCertificate Text
-- | The response's http status code.
importCertificateResponse_httpStatus :: Lens' ImportCertificateResponse Int
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
importCertificateResponse_certificateId :: Lens' ImportCertificateResponse Text
-- | The text description that identifies this host key.
importHostKey_description :: Lens' ImportHostKey (Maybe Text)
-- | Key-value pairs that can be used to group and search for host keys.
importHostKey_tags :: Lens' ImportHostKey (Maybe (NonEmpty Tag))
-- | The identifier of the server that contains the host key that you are
-- importing.
importHostKey_serverId :: Lens' ImportHostKey Text
-- | The public key portion of an SSH key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
importHostKey_hostKeyBody :: Lens' ImportHostKey Text
-- | The response's http status code.
importHostKeyResponse_httpStatus :: Lens' ImportHostKeyResponse Int
-- | Returns the server identifier that contains the imported key.
importHostKeyResponse_serverId :: Lens' ImportHostKeyResponse Text
-- | Returns the host key identifier for the imported key.
importHostKeyResponse_hostKeyId :: Lens' ImportHostKeyResponse Text
-- | A system-assigned unique identifier for a server.
importSshPublicKey_serverId :: Lens' ImportSshPublicKey Text
-- | The public key portion of an SSH key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
importSshPublicKey_sshPublicKeyBody :: Lens' ImportSshPublicKey Text
-- | The name of the user account that is assigned to one or more servers.
importSshPublicKey_userName :: Lens' ImportSshPublicKey Text
-- | The response's http status code.
importSshPublicKeyResponse_httpStatus :: Lens' ImportSshPublicKeyResponse Int
-- | A system-assigned unique identifier for a server.
importSshPublicKeyResponse_serverId :: Lens' ImportSshPublicKeyResponse Text
-- | The name given to a public key by the system that was imported.
importSshPublicKeyResponse_sshPublicKeyId :: Lens' ImportSshPublicKeyResponse Text
-- | A user name assigned to the ServerID value that you
-- specified.
importSshPublicKeyResponse_userName :: Lens' ImportSshPublicKeyResponse Text
-- | Specifies the maximum number of access SIDs to return.
listAccesses_maxResults :: Lens' ListAccesses (Maybe Natural)
-- | When you can get additional results from the ListAccesses
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional accesses.
listAccesses_nextToken :: Lens' ListAccesses (Maybe Text)
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
listAccesses_serverId :: Lens' ListAccesses Text
-- | When you can get additional results from the ListAccesses
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional accesses.
listAccessesResponse_nextToken :: Lens' ListAccessesResponse (Maybe Text)
-- | The response's http status code.
listAccessesResponse_httpStatus :: Lens' ListAccessesResponse Int
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
listAccessesResponse_serverId :: Lens' ListAccessesResponse Text
-- | Returns the accesses and their properties for the ServerId
-- value that you specify.
listAccessesResponse_accesses :: Lens' ListAccessesResponse [ListedAccess]
-- | The maximum number of agreements to return.
listAgreements_maxResults :: Lens' ListAgreements (Maybe Natural)
-- | When you can get additional results from the ListAgreements
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional agreements.
listAgreements_nextToken :: Lens' ListAgreements (Maybe Text)
-- | The identifier of the server for which you want a list of agreements.
listAgreements_serverId :: Lens' ListAgreements Text
-- | Returns a token that you can use to call ListAgreements again
-- and receive additional results, if there are any.
listAgreementsResponse_nextToken :: Lens' ListAgreementsResponse (Maybe Text)
-- | The response's http status code.
listAgreementsResponse_httpStatus :: Lens' ListAgreementsResponse Int
-- | Returns an array, where each item contains the details of an
-- agreement.
listAgreementsResponse_agreements :: Lens' ListAgreementsResponse [ListedAgreement]
-- | The maximum number of certificates to return.
listCertificates_maxResults :: Lens' ListCertificates (Maybe Natural)
-- | When you can get additional results from the ListCertificates
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional certificates.
listCertificates_nextToken :: Lens' ListCertificates (Maybe Text)
-- | Returns the next token, which you can use to list the next
-- certificate.
listCertificatesResponse_nextToken :: Lens' ListCertificatesResponse (Maybe Text)
-- | The response's http status code.
listCertificatesResponse_httpStatus :: Lens' ListCertificatesResponse Int
-- | Returns an array of the certificates that are specified in the
-- ListCertificates call.
listCertificatesResponse_certificates :: Lens' ListCertificatesResponse [ListedCertificate]
-- | The maximum number of connectors to return.
listConnectors_maxResults :: Lens' ListConnectors (Maybe Natural)
-- | When you can get additional results from the ListConnectors
-- call, a NextToken parameter is returned in the output. You
-- can then pass in a subsequent command to the NextToken
-- parameter to continue listing additional connectors.
listConnectors_nextToken :: Lens' ListConnectors (Maybe Text)
-- | Returns a token that you can use to call ListConnectors again
-- and receive additional results, if there are any.
listConnectorsResponse_nextToken :: Lens' ListConnectorsResponse (Maybe Text)
-- | The response's http status code.
listConnectorsResponse_httpStatus :: Lens' ListConnectorsResponse Int
-- | Returns an array, where each item contains the details of a connector.
listConnectorsResponse_connectors :: Lens' ListConnectorsResponse [ListedConnector]
-- | Specifies the maximum number of executions to return.
listExecutions_maxResults :: Lens' ListExecutions (Maybe Natural)
-- | ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
--
-- This is useful for pagination, for instance. If you have 100
-- executions for a workflow, you might only want to list first 10. If
-- so, call the API by specifying the max-results:
--
--
-- aws transfer list-executions --max-results 10
--
--
-- This returns details for the first 10 executions, as well as the
-- pointer (NextToken) to the eleventh execution. You can now
-- call the API again, supplying the NextToken value you
-- received:
--
--
-- aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult
--
--
-- This call returns the next 10 executions, the 11th through the 20th.
-- You can then repeat the call until the details for all 100 executions
-- have been returned.
listExecutions_nextToken :: Lens' ListExecutions (Maybe Text)
-- | A unique identifier for the workflow.
listExecutions_workflowId :: Lens' ListExecutions Text
-- | ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
listExecutionsResponse_nextToken :: Lens' ListExecutionsResponse (Maybe Text)
-- | The response's http status code.
listExecutionsResponse_httpStatus :: Lens' ListExecutionsResponse Int
-- | A unique identifier for the workflow.
listExecutionsResponse_workflowId :: Lens' ListExecutionsResponse Text
-- | Returns the details for each execution.
--
--
-- - NextToken: returned from a call to several APIs, you can
-- use pass it to a subsequent command to continue listing additional
-- executions.
-- - StartTime: timestamp indicating when the execution
-- began.
-- - Executions: details of the execution, including the
-- execution ID, initial file location, and Service metadata.
-- - Status: one of the following values: IN_PROGRESS,
-- COMPLETED, EXCEPTION,
-- HANDLING_EXEPTION.
--
listExecutionsResponse_executions :: Lens' ListExecutionsResponse [ListedExecution]
-- | The maximum number of host keys to return.
listHostKeys_maxResults :: Lens' ListHostKeys (Maybe Natural)
-- | When there are additional results that were not returned, a
-- NextToken parameter is returned. You can use that value for a
-- subsequent call to ListHostKeys to continue listing results.
listHostKeys_nextToken :: Lens' ListHostKeys (Maybe Text)
-- | The identifier of the server that contains the host keys that you want
-- to view.
listHostKeys_serverId :: Lens' ListHostKeys Text
-- | Returns a token that you can use to call ListHostKeys again
-- and receive additional results, if there are any.
listHostKeysResponse_nextToken :: Lens' ListHostKeysResponse (Maybe Text)
-- | The response's http status code.
listHostKeysResponse_httpStatus :: Lens' ListHostKeysResponse Int
-- | Returns the server identifier that contains the listed host keys.
listHostKeysResponse_serverId :: Lens' ListHostKeysResponse Text
-- | Returns an array, where each item contains the details of a host key.
listHostKeysResponse_hostKeys :: Lens' ListHostKeysResponse [ListedHostKey]
-- | The maximum number of profiles to return.
listProfiles_maxResults :: Lens' ListProfiles (Maybe Natural)
-- | When there are additional results that were not returned, a
-- NextToken parameter is returned. You can use that value for a
-- subsequent call to ListProfiles to continue listing results.
listProfiles_nextToken :: Lens' ListProfiles (Maybe Text)
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
listProfiles_profileType :: Lens' ListProfiles (Maybe ProfileType)
-- | Returns a token that you can use to call ListProfiles again
-- and receive additional results, if there are any.
listProfilesResponse_nextToken :: Lens' ListProfilesResponse (Maybe Text)
-- | The response's http status code.
listProfilesResponse_httpStatus :: Lens' ListProfilesResponse Int
-- | Returns an array, where each item contains the details of a profile.
listProfilesResponse_profiles :: Lens' ListProfilesResponse [ListedProfile]
-- | Specifies the number of security policies to return as a response to
-- the ListSecurityPolicies query.
listSecurityPolicies_maxResults :: Lens' ListSecurityPolicies (Maybe Natural)
-- | When additional results are obtained from the
-- ListSecurityPolicies command, a NextToken parameter
-- is returned in the output. You can then pass the NextToken
-- parameter in a subsequent command to continue listing additional
-- security policies.
listSecurityPolicies_nextToken :: Lens' ListSecurityPolicies (Maybe Text)
-- | When you can get additional results from the
-- ListSecurityPolicies operation, a NextToken
-- parameter is returned in the output. In a following command, you can
-- pass in the NextToken parameter to continue listing security
-- policies.
listSecurityPoliciesResponse_nextToken :: Lens' ListSecurityPoliciesResponse (Maybe Text)
-- | The response's http status code.
listSecurityPoliciesResponse_httpStatus :: Lens' ListSecurityPoliciesResponse Int
-- | An array of security policies that were listed.
listSecurityPoliciesResponse_securityPolicyNames :: Lens' ListSecurityPoliciesResponse [Text]
-- | Specifies the number of servers to return as a response to the
-- ListServers query.
listServers_maxResults :: Lens' ListServers (Maybe Natural)
-- | When additional results are obtained from the ListServers
-- command, a NextToken parameter is returned in the output. You
-- can then pass the NextToken parameter in a subsequent command
-- to continue listing additional servers.
listServers_nextToken :: Lens' ListServers (Maybe Text)
-- | When you can get additional results from the ListServers
-- operation, a NextToken parameter is returned in the output.
-- In a following command, you can pass in the NextToken
-- parameter to continue listing additional servers.
listServersResponse_nextToken :: Lens' ListServersResponse (Maybe Text)
-- | The response's http status code.
listServersResponse_httpStatus :: Lens' ListServersResponse Int
-- | An array of servers that were listed.
listServersResponse_servers :: Lens' ListServersResponse [ListedServer]
-- | Specifies the number of tags to return as a response to the
-- ListTagsForResource request.
listTagsForResource_maxResults :: Lens' ListTagsForResource (Maybe Natural)
-- | When you request additional results from the
-- ListTagsForResource operation, a NextToken parameter
-- is returned in the input. You can then pass in a subsequent command to
-- the NextToken parameter to continue listing additional tags.
listTagsForResource_nextToken :: Lens' ListTagsForResource (Maybe Text)
-- | Requests the tags associated with a particular Amazon Resource Name
-- (ARN). An ARN is an identifier for a specific Amazon Web Services
-- resource, such as a server, user, or role.
listTagsForResource_arn :: Lens' ListTagsForResource Text
-- | The ARN you specified to list the tags of.
listTagsForResourceResponse_arn :: Lens' ListTagsForResourceResponse (Maybe Text)
-- | When you can get additional results from the
-- ListTagsForResource call, a NextToken parameter is
-- returned in the output. You can then pass in a subsequent command to
-- the NextToken parameter to continue listing additional tags.
listTagsForResourceResponse_nextToken :: Lens' ListTagsForResourceResponse (Maybe Text)
-- | Key-value pairs that are assigned to a resource, usually for the
-- purpose of grouping and searching for items. Tags are metadata that
-- you define.
listTagsForResourceResponse_tags :: Lens' ListTagsForResourceResponse (Maybe (NonEmpty Tag))
-- | The response's http status code.
listTagsForResourceResponse_httpStatus :: Lens' ListTagsForResourceResponse Int
-- | Specifies the number of users to return as a response to the
-- ListUsers request.
listUsers_maxResults :: Lens' ListUsers (Maybe Natural)
-- | When you can get additional results from the ListUsers call,
-- a NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
listUsers_nextToken :: Lens' ListUsers (Maybe Text)
-- | A system-assigned unique identifier for a server that has users
-- assigned to it.
listUsers_serverId :: Lens' ListUsers Text
-- | When you can get additional results from the ListUsers call,
-- a NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
listUsersResponse_nextToken :: Lens' ListUsersResponse (Maybe Text)
-- | The response's http status code.
listUsersResponse_httpStatus :: Lens' ListUsersResponse Int
-- | A system-assigned unique identifier for a server that the users are
-- assigned to.
listUsersResponse_serverId :: Lens' ListUsersResponse Text
-- | Returns the user accounts and their properties for the
-- ServerId value that you specify.
listUsersResponse_users :: Lens' ListUsersResponse [ListedUser]
-- | Specifies the maximum number of workflows to return.
listWorkflows_maxResults :: Lens' ListWorkflows (Maybe Natural)
-- | ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
listWorkflows_nextToken :: Lens' ListWorkflows (Maybe Text)
-- | ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
listWorkflowsResponse_nextToken :: Lens' ListWorkflowsResponse (Maybe Text)
-- | The response's http status code.
listWorkflowsResponse_httpStatus :: Lens' ListWorkflowsResponse Int
-- | Returns the Arn, WorkflowId, and
-- Description for each workflow.
listWorkflowsResponse_workflows :: Lens' ListWorkflowsResponse [ListedWorkflow]
-- | A unique identifier for the workflow.
sendWorkflowStepState_workflowId :: Lens' SendWorkflowStepState Text
-- | A unique identifier for the execution of a workflow.
sendWorkflowStepState_executionId :: Lens' SendWorkflowStepState Text
-- | Used to distinguish between multiple callbacks for multiple Lambda
-- steps within the same execution.
sendWorkflowStepState_token :: Lens' SendWorkflowStepState Text
-- | Indicates whether the specified step succeeded or failed.
sendWorkflowStepState_status :: Lens' SendWorkflowStepState CustomStepStatus
-- | The response's http status code.
sendWorkflowStepStateResponse_httpStatus :: Lens' SendWorkflowStepStateResponse Int
-- | The unique identifier for the connector.
startFileTransfer_connectorId :: Lens' StartFileTransfer Text
-- | An array of strings. Each string represents the absolute path for one
-- outbound file transfer. For example,
-- DOC-EXAMPLE-BUCKET/myfile.txt
-- .
startFileTransfer_sendFilePaths :: Lens' StartFileTransfer (NonEmpty Text)
-- | The response's http status code.
startFileTransferResponse_httpStatus :: Lens' StartFileTransferResponse Int
-- | Returns the unique identifier for this file transfer.
startFileTransferResponse_transferId :: Lens' StartFileTransferResponse Text
-- | A system-assigned unique identifier for a server that you start.
startServer_serverId :: Lens' StartServer Text
-- | A system-assigned unique identifier for a server that you stopped.
stopServer_serverId :: Lens' StopServer Text
-- | An Amazon Resource Name (ARN) for a specific Amazon Web Services
-- resource, such as a server, user, or role.
tagResource_arn :: Lens' TagResource Text
-- | Key-value pairs assigned to ARNs that you can use to group and search
-- for resources by type. You can attach this metadata to user accounts
-- for any purpose.
tagResource_tags :: Lens' TagResource (NonEmpty Tag)
-- | The type of file transfer protocol to be tested.
--
-- The available protocols are:
--
--
-- - Secure Shell (SSH) File Transfer Protocol (SFTP)
-- - File Transfer Protocol Secure (FTPS)
-- - File Transfer Protocol (FTP)
--
testIdentityProvider_serverProtocol :: Lens' TestIdentityProvider (Maybe Protocol)
-- | The source IP address of the user account to be tested.
testIdentityProvider_sourceIp :: Lens' TestIdentityProvider (Maybe Text)
-- | The password of the user account to be tested.
testIdentityProvider_userPassword :: Lens' TestIdentityProvider (Maybe Text)
-- | A system-assigned identifier for a specific server. That server's user
-- authentication method is tested with a user name and password.
testIdentityProvider_serverId :: Lens' TestIdentityProvider Text
-- | The name of the user account to be tested.
testIdentityProvider_userName :: Lens' TestIdentityProvider Text
-- | A message that indicates whether the test was successful or not.
--
-- If an empty string is returned, the most likely cause is that the
-- authentication failed due to an incorrect username or password.
testIdentityProviderResponse_message :: Lens' TestIdentityProviderResponse (Maybe Text)
-- | The response that is returned from your API Gateway.
testIdentityProviderResponse_response :: Lens' TestIdentityProviderResponse (Maybe Text)
-- | The response's http status code.
testIdentityProviderResponse_httpStatus :: Lens' TestIdentityProviderResponse Int
-- | The HTTP status code that is the response from your API Gateway.
testIdentityProviderResponse_statusCode :: Lens' TestIdentityProviderResponse Int
-- | The endpoint of the service used to authenticate a user.
testIdentityProviderResponse_url :: Lens' TestIdentityProviderResponse Text
-- | The value of the resource that will have the tag removed. An Amazon
-- Resource Name (ARN) is an identifier for a specific Amazon Web
-- Services resource, such as a server, user, or role.
untagResource_arn :: Lens' UntagResource Text
-- | TagKeys are key-value pairs assigned to ARNs that can be used to group
-- and search for resources by type. This metadata can be attached to
-- resources for any purpose.
untagResource_tagKeys :: Lens' UntagResource (NonEmpty Text)
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
updateAccess_homeDirectory :: Lens' UpdateAccess (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
updateAccess_homeDirectoryMappings :: Lens' UpdateAccess (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
updateAccess_homeDirectoryType :: Lens' UpdateAccess (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- ServicesSecurity Token Service API Reference.
updateAccess_policy :: Lens' UpdateAccess (Maybe Text)
-- | Undocumented member.
updateAccess_posixProfile :: Lens' UpdateAccess (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
updateAccess_role :: Lens' UpdateAccess (Maybe Text)
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that you added your user to.
updateAccess_serverId :: Lens' UpdateAccess Text
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
updateAccess_externalId :: Lens' UpdateAccess Text
-- | The response's http status code.
updateAccessResponse_httpStatus :: Lens' UpdateAccessResponse Int
-- | The identifier of the server that the user is attached to.
updateAccessResponse_serverId :: Lens' UpdateAccessResponse Text
-- | The external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Amazon Web ServicesTransfer Family.
updateAccessResponse_externalId :: Lens' UpdateAccessResponse Text
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
updateAgreement_accessRole :: Lens' UpdateAgreement (Maybe Text)
-- | To change the landing directory (folder) for files that are
-- transferred, provide the bucket folder that you want to use; for
-- example,
-- /DOC-EXAMPLE-BUCKET/home/mydirectory
-- .
updateAgreement_baseDirectory :: Lens' UpdateAgreement (Maybe Text)
-- | To replace the existing description, provide a short description for
-- the agreement.
updateAgreement_description :: Lens' UpdateAgreement (Maybe Text)
-- | A unique identifier for the AS2 local profile.
--
-- To change the local profile identifier, provide a new value here.
updateAgreement_localProfileId :: Lens' UpdateAgreement (Maybe Text)
-- | A unique identifier for the partner profile. To change the partner
-- profile identifier, provide a new value here.
updateAgreement_partnerProfileId :: Lens' UpdateAgreement (Maybe Text)
-- | You can update the status for the agreement, either activating an
-- inactive agreement or the reverse.
updateAgreement_status :: Lens' UpdateAgreement (Maybe AgreementStatusType)
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
updateAgreement_agreementId :: Lens' UpdateAgreement Text
-- | A system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
updateAgreement_serverId :: Lens' UpdateAgreement Text
-- | The response's http status code.
updateAgreementResponse_httpStatus :: Lens' UpdateAgreementResponse Int
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
updateAgreementResponse_agreementId :: Lens' UpdateAgreementResponse Text
-- | An optional date that specifies when the certificate becomes active.
updateCertificate_activeDate :: Lens' UpdateCertificate (Maybe UTCTime)
-- | A short description to help identify the certificate.
updateCertificate_description :: Lens' UpdateCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
updateCertificate_inactiveDate :: Lens' UpdateCertificate (Maybe UTCTime)
-- | The identifier of the certificate object that you are updating.
updateCertificate_certificateId :: Lens' UpdateCertificate Text
-- | The response's http status code.
updateCertificateResponse_httpStatus :: Lens' UpdateCertificateResponse Int
-- | Returns the identifier of the certificate object that you are
-- updating.
updateCertificateResponse_certificateId :: Lens' UpdateCertificateResponse Text
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
updateConnector_accessRole :: Lens' UpdateConnector (Maybe Text)
-- | A structure that contains the parameters for a connector object.
updateConnector_as2Config :: Lens' UpdateConnector (Maybe As2ConnectorConfig)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
updateConnector_loggingRole :: Lens' UpdateConnector (Maybe Text)
-- | The URL of the partner's AS2 endpoint.
updateConnector_url :: Lens' UpdateConnector (Maybe Text)
-- | The unique identifier for the connector.
updateConnector_connectorId :: Lens' UpdateConnector Text
-- | The response's http status code.
updateConnectorResponse_httpStatus :: Lens' UpdateConnectorResponse Int
-- | Returns the identifier of the connector object that you are updating.
updateConnectorResponse_connectorId :: Lens' UpdateConnectorResponse Text
-- | The identifier of the server that contains the host key that you are
-- updating.
updateHostKey_serverId :: Lens' UpdateHostKey Text
-- | The identifier of the host key that you are updating.
updateHostKey_hostKeyId :: Lens' UpdateHostKey Text
-- | An updated description for the host key.
updateHostKey_description :: Lens' UpdateHostKey Text
-- | The response's http status code.
updateHostKeyResponse_httpStatus :: Lens' UpdateHostKeyResponse Int
-- | Returns the server identifier for the server that contains the updated
-- host key.
updateHostKeyResponse_serverId :: Lens' UpdateHostKeyResponse Text
-- | Returns the host key identifier for the updated host key.
updateHostKeyResponse_hostKeyId :: Lens' UpdateHostKeyResponse Text
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
updateProfile_certificateIds :: Lens' UpdateProfile (Maybe [Text])
-- | The identifier of the profile object that you are updating.
updateProfile_profileId :: Lens' UpdateProfile Text
-- | The response's http status code.
updateProfileResponse_httpStatus :: Lens' UpdateProfileResponse Int
-- | Returns the identifier for the profile that's being updated.
updateProfileResponse_profileId :: Lens' UpdateProfileResponse Text
-- | The Amazon Resource Name (ARN) of the Amazon Web ServicesCertificate
-- Manager (ACM) certificate. Required when Protocols is set to
-- FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Amazon Web ServicesCertificate Manager User
-- Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Amazon Web ServicesCertificate
-- Manager User Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the Amazon
-- Web ServicesCertificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
updateServer_certificate :: Lens' UpdateServer (Maybe Text)
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
updateServer_endpointDetails :: Lens' UpdateServer (Maybe EndpointDetails)
-- | The type of endpoint that you want your server to use. You can choose
-- to make your server's endpoint publicly accessible (PUBLIC) or host it
-- inside your VPC. With an endpoint that is hosted in a VPC, you can
-- restrict access to your server and resources only within your VPC or
-- choose to make it internet facing by attaching Elastic IP addresses
-- directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Servicesaccount on or before May 19, 2021, you will
-- not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
updateServer_endpointType :: Lens' UpdateServer (Maybe EndpointType)
-- | The RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
updateServer_hostKey :: Lens' UpdateServer (Maybe Text)
-- | An array containing all of the information required to call a
-- customer's authentication API method.
updateServer_identityProviderDetails :: Lens' UpdateServer (Maybe IdentityProviderDetails)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
updateServer_loggingRole :: Lens' UpdateServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
updateServer_postAuthenticationLoginBanner :: Lens' UpdateServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
updateServer_preAuthenticationLoginBanner :: Lens' UpdateServer (Maybe Text)
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
updateServer_protocolDetails :: Lens' UpdateServer (Maybe ProtocolDetails)
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
updateServer_protocols :: Lens' UpdateServer (Maybe (NonEmpty Protocol))
-- | Specifies the name of the security policy that is attached to the
-- server.
updateServer_securityPolicyName :: Lens' UpdateServer (Maybe Text)
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
updateServer_workflowDetails :: Lens' UpdateServer (Maybe WorkflowDetails)
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
updateServer_serverId :: Lens' UpdateServer Text
-- | The response's http status code.
updateServerResponse_httpStatus :: Lens' UpdateServerResponse Int
-- | A system-assigned unique identifier for a server that the user account
-- is assigned to.
updateServerResponse_serverId :: Lens' UpdateServerResponse Text
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
updateUser_homeDirectory :: Lens' UpdateUser (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
updateUser_homeDirectoryMappings :: Lens' UpdateUser (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
updateUser_homeDirectoryType :: Lens' UpdateUser (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Creating a session
-- policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
updateUser_policy :: Lens' UpdateUser (Maybe Text)
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon Elastic File Systems (Amazon EFS). The POSIX permissions that
-- are set on files and directories in your file system determines the
-- level of access your users get when transferring files into and out of
-- your Amazon EFS file systems.
updateUser_posixProfile :: Lens' UpdateUser (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
updateUser_role :: Lens' UpdateUser (Maybe Text)
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
updateUser_serverId :: Lens' UpdateUser Text
-- | A unique string that identifies a user and is associated with a server
-- as specified by the ServerId. This user name must be a
-- minimum of 3 and a maximum of 100 characters long. The following are
-- valid characters: a-z, A-Z, 0-9, underscore '_', hyphen '-', period
-- '.', and at sign '@'. The user name can't start with a hyphen, period,
-- or at sign.
updateUser_userName :: Lens' UpdateUser Text
-- | The response's http status code.
updateUserResponse_httpStatus :: Lens' UpdateUserResponse Int
-- | A system-assigned unique identifier for a server instance that the
-- user account is assigned to.
updateUserResponse_serverId :: Lens' UpdateUserResponse Text
-- | The unique identifier for a user that is assigned to a server instance
-- that was specified in the request.
updateUserResponse_userName :: Lens' UpdateUserResponse Text
-- | Specifies whether the AS2 file is compressed.
as2ConnectorConfig_compression :: Lens' As2ConnectorConfig (Maybe CompressionEnum)
-- | The algorithm that is used to encrypt the file.
as2ConnectorConfig_encryptionAlgorithm :: Lens' As2ConnectorConfig (Maybe EncryptionAlg)
-- | A unique identifier for the AS2 local profile.
as2ConnectorConfig_localProfileId :: Lens' As2ConnectorConfig (Maybe Text)
-- | Used for outbound requests (from an Transfer Family server to a
-- partner AS2 server) to determine whether the partner response for
-- transfers is synchronous or asynchronous. Specify either of the
-- following values:
--
--
-- - SYNC: The system expects a synchronous MDN response,
-- confirming that the file was transferred successfully (or not).
-- - NONE: Specifies that no MDN response is required.
--
as2ConnectorConfig_mdnResponse :: Lens' As2ConnectorConfig (Maybe MdnResponse)
-- | The signing algorithm for the MDN response.
--
-- If set to DEFAULT (or not set at all), the value for
-- SigningAlogorithm is used.
as2ConnectorConfig_mdnSigningAlgorithm :: Lens' As2ConnectorConfig (Maybe MdnSigningAlg)
-- | Used as the Subject HTTP header attribute in AS2 messages
-- that are being sent with the connector.
as2ConnectorConfig_messageSubject :: Lens' As2ConnectorConfig (Maybe Text)
-- | A unique identifier for the partner profile for the connector.
as2ConnectorConfig_partnerProfileId :: Lens' As2ConnectorConfig (Maybe Text)
-- | The algorithm that is used to sign the AS2 messages sent with the
-- connector.
as2ConnectorConfig_signingAlgorithm :: Lens' As2ConnectorConfig (Maybe SigningAlg)
-- | Specifies the location for the file being copied. Only applicable for
-- Copy type workflow steps. Use ${Transfer:username} in this
-- field to parametrize the destination prefix by username.
copyStepDetails_destinationFileLocation :: Lens' CopyStepDetails (Maybe InputFileLocation)
-- | The name of the step, used as an identifier.
copyStepDetails_name :: Lens' CopyStepDetails (Maybe Text)
-- | A flag that indicates whether or not to overwrite an existing file of
-- the same name. The default is FALSE.
copyStepDetails_overwriteExisting :: Lens' CopyStepDetails (Maybe OverwriteExisting)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
copyStepDetails_sourceFileLocation :: Lens' CopyStepDetails (Maybe Text)
-- | The name of the step, used as an identifier.
customStepDetails_name :: Lens' CustomStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
customStepDetails_sourceFileLocation :: Lens' CustomStepDetails (Maybe Text)
-- | The ARN for the lambda function that is being called.
customStepDetails_target :: Lens' CustomStepDetails (Maybe Text)
-- | Timeout, in seconds, for the step.
customStepDetails_timeoutSeconds :: Lens' CustomStepDetails (Maybe Natural)
-- | Undocumented member.
decryptStepDetails_name :: Lens' DecryptStepDetails (Maybe Text)
-- | Undocumented member.
decryptStepDetails_overwriteExisting :: Lens' DecryptStepDetails (Maybe OverwriteExisting)
-- | Undocumented member.
decryptStepDetails_sourceFileLocation :: Lens' DecryptStepDetails (Maybe Text)
-- | Undocumented member.
decryptStepDetails_type :: Lens' DecryptStepDetails EncryptionType
-- | Undocumented member.
decryptStepDetails_destinationFileLocation :: Lens' DecryptStepDetails InputFileLocation
-- | The name of the step, used as an identifier.
deleteStepDetails_name :: Lens' DeleteStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
deleteStepDetails_sourceFileLocation :: Lens' DeleteStepDetails (Maybe Text)
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
describedAccess_externalId :: Lens' DescribedAccess (Maybe Text)
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
describedAccess_homeDirectory :: Lens' DescribedAccess (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock down the associated access to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
describedAccess_homeDirectoryMappings :: Lens' DescribedAccess (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
describedAccess_homeDirectoryType :: Lens' DescribedAccess (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
describedAccess_policy :: Lens' DescribedAccess (Maybe Text)
-- | Undocumented member.
describedAccess_posixProfile :: Lens' DescribedAccess (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
describedAccess_role :: Lens' DescribedAccess (Maybe Text)
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
describedAgreement_accessRole :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
describedAgreement_agreementId :: Lens' DescribedAgreement (Maybe Text)
-- | The landing directory (folder) for files that are transferred by using
-- the AS2 protocol.
describedAgreement_baseDirectory :: Lens' DescribedAgreement (Maybe Text)
-- | The name or short description that's used to identify the agreement.
describedAgreement_description :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the AS2 local profile.
describedAgreement_localProfileId :: Lens' DescribedAgreement (Maybe Text)
-- | A unique identifier for the partner profile used in the agreement.
describedAgreement_partnerProfileId :: Lens' DescribedAgreement (Maybe Text)
-- | A system-assigned unique identifier for a server instance. This
-- identifier indicates the specific server that the agreement uses.
describedAgreement_serverId :: Lens' DescribedAgreement (Maybe Text)
-- | The current status of the agreement, either ACTIVE or
-- INACTIVE.
describedAgreement_status :: Lens' DescribedAgreement (Maybe AgreementStatusType)
-- | Key-value pairs that can be used to group and search for agreements.
describedAgreement_tags :: Lens' DescribedAgreement (Maybe (NonEmpty Tag))
-- | The unique Amazon Resource Name (ARN) for the agreement.
describedAgreement_arn :: Lens' DescribedAgreement Text
-- | An optional date that specifies when the certificate becomes active.
describedCertificate_activeDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The file name for the certificate.
describedCertificate_certificate :: Lens' DescribedCertificate (Maybe Text)
-- | The list of certificates that make up the chain for the certificate.
describedCertificate_certificateChain :: Lens' DescribedCertificate (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
describedCertificate_certificateId :: Lens' DescribedCertificate (Maybe Text)
-- | The name or description that's used to identity the certificate.
describedCertificate_description :: Lens' DescribedCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
describedCertificate_inactiveDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The final date that the certificate is valid.
describedCertificate_notAfterDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The earliest date that the certificate is valid.
describedCertificate_notBeforeDate :: Lens' DescribedCertificate (Maybe UTCTime)
-- | The serial number for the certificate.
describedCertificate_serial :: Lens' DescribedCertificate (Maybe Text)
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
describedCertificate_status :: Lens' DescribedCertificate (Maybe CertificateStatusType)
-- | Key-value pairs that can be used to group and search for certificates.
describedCertificate_tags :: Lens' DescribedCertificate (Maybe (NonEmpty Tag))
-- | If a private key has been specified for the certificate, its type is
-- CERTIFICATE_WITH_PRIVATE_KEY. If there is no private key, the
-- type is CERTIFICATE.
describedCertificate_type :: Lens' DescribedCertificate (Maybe CertificateType)
-- | Specifies whether this certificate is used for signing or encryption.
describedCertificate_usage :: Lens' DescribedCertificate (Maybe CertificateUsageType)
-- | The unique Amazon Resource Name (ARN) for the certificate.
describedCertificate_arn :: Lens' DescribedCertificate Text
-- | With AS2, you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
describedConnector_accessRole :: Lens' DescribedConnector (Maybe Text)
-- | A structure that contains the parameters for a connector object.
describedConnector_as2Config :: Lens' DescribedConnector (Maybe As2ConnectorConfig)
-- | The unique identifier for the connector.
describedConnector_connectorId :: Lens' DescribedConnector (Maybe Text)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a connector to turn on CloudWatch logging for
-- Amazon S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
describedConnector_loggingRole :: Lens' DescribedConnector (Maybe Text)
-- | Key-value pairs that can be used to group and search for connectors.
describedConnector_tags :: Lens' DescribedConnector (Maybe (NonEmpty Tag))
-- | The URL of the partner's AS2 endpoint.
describedConnector_url :: Lens' DescribedConnector (Maybe Text)
-- | The unique Amazon Resource Name (ARN) for the connector.
describedConnector_arn :: Lens' DescribedConnector Text
-- | A unique identifier for the execution of a workflow.
describedExecution_executionId :: Lens' DescribedExecution (Maybe Text)
-- | The IAM role associated with the execution.
describedExecution_executionRole :: Lens' DescribedExecution (Maybe Text)
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
describedExecution_initialFileLocation :: Lens' DescribedExecution (Maybe FileLocation)
-- | The IAM logging role associated with the execution.
describedExecution_loggingConfiguration :: Lens' DescribedExecution (Maybe LoggingConfiguration)
-- | Undocumented member.
describedExecution_posixProfile :: Lens' DescribedExecution (Maybe PosixProfile)
-- | A structure that describes the execution results. This includes a list
-- of the steps along with the details of each step, error type and
-- message (if any), and the OnExceptionSteps structure.
describedExecution_results :: Lens' DescribedExecution (Maybe ExecutionResults)
-- | A container object for the session details that are associated with a
-- workflow.
describedExecution_serviceMetadata :: Lens' DescribedExecution (Maybe ServiceMetadata)
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
describedExecution_status :: Lens' DescribedExecution (Maybe ExecutionStatus)
-- | The date on which the host key was added to the server.
describedHostKey_dateImported :: Lens' DescribedHostKey (Maybe UTCTime)
-- | The text description for this host key.
describedHostKey_description :: Lens' DescribedHostKey (Maybe Text)
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
describedHostKey_hostKeyFingerprint :: Lens' DescribedHostKey (Maybe Text)
-- | A unique identifier for the host key.
describedHostKey_hostKeyId :: Lens' DescribedHostKey (Maybe Text)
-- | Key-value pairs that can be used to group and search for host keys.
describedHostKey_tags :: Lens' DescribedHostKey (Maybe (NonEmpty Tag))
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
describedHostKey_type :: Lens' DescribedHostKey (Maybe Text)
-- | The unique Amazon Resource Name (ARN) for the host key.
describedHostKey_arn :: Lens' DescribedHostKey Text
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
describedProfile_as2Id :: Lens' DescribedProfile (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
describedProfile_certificateIds :: Lens' DescribedProfile (Maybe [Text])
-- | A unique identifier for the local or partner AS2 profile.
describedProfile_profileId :: Lens' DescribedProfile (Maybe Text)
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
describedProfile_profileType :: Lens' DescribedProfile (Maybe ProfileType)
-- | Key-value pairs that can be used to group and search for profiles.
describedProfile_tags :: Lens' DescribedProfile (Maybe (NonEmpty Tag))
-- | The unique Amazon Resource Name (ARN) for the profile.
describedProfile_arn :: Lens' DescribedProfile Text
-- | Specifies whether this policy enables Federal Information Processing
-- Standards (FIPS).
describedSecurityPolicy_fips :: Lens' DescribedSecurityPolicy (Maybe Bool)
-- | Specifies the enabled Secure Shell (SSH) cipher encryption algorithms
-- in the security policy that is attached to the server.
describedSecurityPolicy_sshCiphers :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled SSH key exchange (KEX) encryption algorithms in
-- the security policy that is attached to the server.
describedSecurityPolicy_sshKexs :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled SSH message authentication code (MAC) encryption
-- algorithms in the security policy that is attached to the server.
describedSecurityPolicy_sshMacs :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the enabled Transport Layer Security (TLS) cipher encryption
-- algorithms in the security policy that is attached to the server.
describedSecurityPolicy_tlsCiphers :: Lens' DescribedSecurityPolicy (Maybe [Text])
-- | Specifies the name of the security policy that is attached to the
-- server.
describedSecurityPolicy_securityPolicyName :: Lens' DescribedSecurityPolicy Text
-- | Specifies the ARN of the Amazon Web ServicesCertificate Manager (ACM)
-- certificate. Required when Protocols is set to FTPS.
describedServer_certificate :: Lens' DescribedServer (Maybe Text)
-- | Specifies the domain of the storage system that is used for file
-- transfers.
describedServer_domain :: Lens' DescribedServer (Maybe Domain)
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your server. When you host your endpoint within your VPC, you can
-- make your endpoint accessible only to resources within your VPC, or
-- you can attach Elastic IP addresses and make your endpoint accessible
-- to clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
describedServer_endpointDetails :: Lens' DescribedServer (Maybe EndpointDetails)
-- | Defines the type of endpoint that your server is connected to. If your
-- server is connected to a VPC endpoint, your server isn't accessible
-- over the public internet.
describedServer_endpointType :: Lens' DescribedServer (Maybe EndpointType)
-- | Specifies the Base64-encoded SHA256 fingerprint of the server's host
-- key. This value is equivalent to the output of the ssh-keygen -l
-- -f my-new-server-key command.
describedServer_hostKeyFingerprint :: Lens' DescribedServer (Maybe Text)
-- | Specifies information to call a customer-supplied authentication API.
-- This field is not populated when the IdentityProviderType of
-- a server is AWS_DIRECTORY_SERVICE or
-- SERVICE_MANAGED.
describedServer_identityProviderDetails :: Lens' DescribedServer (Maybe IdentityProviderDetails)
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
describedServer_identityProviderType :: Lens' DescribedServer (Maybe IdentityProviderType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
describedServer_loggingRole :: Lens' DescribedServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
describedServer_postAuthenticationLoginBanner :: Lens' DescribedServer (Maybe Text)
-- | Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
describedServer_preAuthenticationLoginBanner :: Lens' DescribedServer (Maybe Text)
-- | The protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
describedServer_protocolDetails :: Lens' DescribedServer (Maybe ProtocolDetails)
-- | Specifies the file transfer protocol or protocols over which your file
-- transfer protocol client can connect to your server's endpoint. The
-- available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
describedServer_protocols :: Lens' DescribedServer (Maybe (NonEmpty Protocol))
-- | Specifies the name of the security policy that is attached to the
-- server.
describedServer_securityPolicyName :: Lens' DescribedServer (Maybe Text)
-- | Specifies the unique system-assigned identifier for a server that you
-- instantiate.
describedServer_serverId :: Lens' DescribedServer (Maybe Text)
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
describedServer_state :: Lens' DescribedServer (Maybe State)
-- | Specifies the key-value pairs that you can use to search for and group
-- servers that were assigned to the server that was described.
describedServer_tags :: Lens' DescribedServer (Maybe (NonEmpty Tag))
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
describedServer_userCount :: Lens' DescribedServer (Maybe Int)
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
describedServer_workflowDetails :: Lens' DescribedServer (Maybe WorkflowDetails)
-- | Specifies the unique Amazon Resource Name (ARN) of the server.
describedServer_arn :: Lens' DescribedServer Text
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
describedUser_homeDirectory :: Lens' DescribedUser (Maybe Text)
-- | Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
describedUser_homeDirectoryMappings :: Lens' DescribedUser (Maybe (NonEmpty HomeDirectoryMapEntry))
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
describedUser_homeDirectoryType :: Lens' DescribedUser (Maybe HomeDirectoryType)
-- | A session policy for your user so that you can use the same Identity
-- and Access Management (IAM) role across multiple users. This policy
-- scopes down a user's access to portions of their Amazon S3 bucket.
-- Variables that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
describedUser_policy :: Lens' DescribedUser (Maybe Text)
-- | Specifies the full POSIX identity, including user ID (Uid),
-- group ID (Gid), and any secondary groups IDs
-- (SecondaryGids), that controls your users' access to your
-- Amazon Elastic File System (Amazon EFS) file systems. The POSIX
-- permissions that are set on files and directories in your file system
-- determine the level of access your users get when transferring files
-- into and out of your Amazon EFS file systems.
describedUser_posixProfile :: Lens' DescribedUser (Maybe PosixProfile)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
describedUser_role :: Lens' DescribedUser (Maybe Text)
-- | Specifies the public key portion of the Secure Shell (SSH) keys stored
-- for the described user.
describedUser_sshPublicKeys :: Lens' DescribedUser (Maybe [SshPublicKey])
-- | Specifies the key-value pairs for the user requested. Tag can be used
-- to search for and group users for a variety of purposes.
describedUser_tags :: Lens' DescribedUser (Maybe (NonEmpty Tag))
-- | Specifies the name of the user that was requested to be described.
-- User names are used for authentication purposes. This is the string
-- that will be used by your user when they log in to your server.
describedUser_userName :: Lens' DescribedUser (Maybe Text)
-- | Specifies the unique Amazon Resource Name (ARN) for the user that was
-- requested to be described.
describedUser_arn :: Lens' DescribedUser Text
-- | Specifies the text description for the workflow.
describedWorkflow_description :: Lens' DescribedWorkflow (Maybe Text)
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
describedWorkflow_onExceptionSteps :: Lens' DescribedWorkflow (Maybe [WorkflowStep])
-- | Specifies the details for the steps that are in the specified
-- workflow.
describedWorkflow_steps :: Lens' DescribedWorkflow (Maybe [WorkflowStep])
-- | Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
describedWorkflow_tags :: Lens' DescribedWorkflow (Maybe (NonEmpty Tag))
-- | A unique identifier for the workflow.
describedWorkflow_workflowId :: Lens' DescribedWorkflow (Maybe Text)
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
describedWorkflow_arn :: Lens' DescribedWorkflow Text
-- | The identifier of the file system, assigned by Amazon EFS.
efsFileLocation_fileSystemId :: Lens' EfsFileLocation (Maybe Text)
-- | The pathname for the folder being used by a workflow.
efsFileLocation_path :: Lens' EfsFileLocation (Maybe Text)
-- | A list of address allocation IDs that are required to attach an
-- Elastic IP address to your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC and it is only valid in the UpdateServer API.
endpointDetails_addressAllocationIds :: Lens' EndpointDetails (Maybe [Text])
-- | A list of security groups IDs that are available to attach to your
-- server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- You can edit the SecurityGroupIds property in the
-- UpdateServer API only if you are changing the
-- EndpointType from PUBLIC or VPC_ENDPOINT to
-- VPC. To change security groups associated with your server's
-- VPC endpoint after creation, use the Amazon EC2
-- ModifyVpcEndpoint API.
endpointDetails_securityGroupIds :: Lens' EndpointDetails (Maybe [Text])
-- | A list of subnet IDs that are required to host your server endpoint in
-- your VPC.
--
-- This property can only be set when EndpointType is set to
-- VPC.
endpointDetails_subnetIds :: Lens' EndpointDetails (Maybe [Text])
-- | The identifier of the VPC endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC_ENDPOINT.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
endpointDetails_vpcEndpointId :: Lens' EndpointDetails (Maybe Text)
-- | The VPC identifier of the VPC in which a server's endpoint will be
-- hosted.
--
-- This property can only be set when EndpointType is set to
-- VPC.
endpointDetails_vpcId :: Lens' EndpointDetails (Maybe Text)
-- | Specifies the error type.
--
--
-- - ALREADY_EXISTS: occurs for a copy step, if the overwrite
-- option is not selected and a file with the same name already exists in
-- the target location.
-- - BAD_REQUEST: a general bad request: for example, a step
-- that attempts to tag an EFS file returns BAD_REQUEST, as only
-- S3 files can be tagged.
-- - CUSTOM_STEP_FAILED: occurs when the custom step provided
-- a callback that indicates failure.
-- - INTERNAL_SERVER_ERROR: a catch-all error that can occur
-- for a variety of reasons.
-- - NOT_FOUND: occurs when a requested entity, for example a
-- source file for a copy step, does not exist.
-- - PERMISSION_DENIED: occurs if your policy does not contain
-- the correct permissions to complete one or more of the steps in the
-- workflow.
-- - TIMEOUT: occurs when the execution times out.You can set
-- the TimeoutSeconds for a custom step, anywhere from 1 second
-- to 1800 seconds (30 minutes).
-- - THROTTLED: occurs if you exceed the new execution refill
-- rate of one workflow per second.
--
executionError_type :: Lens' ExecutionError ExecutionErrorType
-- | Specifies the descriptive message that corresponds to the
-- ErrorType.
executionError_message :: Lens' ExecutionError Text
-- | Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
executionResults_onExceptionSteps :: Lens' ExecutionResults (Maybe (NonEmpty ExecutionStepResult))
-- | Specifies the details for the steps that are in the specified
-- workflow.
executionResults_steps :: Lens' ExecutionResults (Maybe (NonEmpty ExecutionStepResult))
-- | Specifies the details for an error, if it occurred during execution of
-- the specified workflow step.
executionStepResult_error :: Lens' ExecutionStepResult (Maybe ExecutionError)
-- | The values for the key/value pair applied as a tag to the file. Only
-- applicable if the step type is TAG.
executionStepResult_outputs :: Lens' ExecutionStepResult (Maybe Text)
-- | One of the available step types.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
executionStepResult_stepType :: Lens' ExecutionStepResult (Maybe WorkflowStepType)
-- | Specifies the Amazon EFS identifier and the path for the file being
-- used.
fileLocation_efsFileLocation :: Lens' FileLocation (Maybe EfsFileLocation)
-- | Specifies the S3 details for the file being used, such as bucket,
-- ETag, and so forth.
fileLocation_s3FileLocation :: Lens' FileLocation (Maybe S3FileLocation)
-- | Represents an entry for HomeDirectoryMappings.
homeDirectoryMapEntry_entry :: Lens' HomeDirectoryMapEntry Text
-- | Represents the map target that is used in a
-- HomeDirectorymapEntry.
homeDirectoryMapEntry_target :: Lens' HomeDirectoryMapEntry Text
-- | The identifier of the Directory Service directory that you want to
-- stop sharing.
identityProviderDetails_directoryId :: Lens' IdentityProviderDetails (Maybe Text)
-- | The ARN for a lambda function to use for the Identity provider.
identityProviderDetails_function :: Lens' IdentityProviderDetails (Maybe Text)
-- | Provides the type of InvocationRole used to authenticate the
-- user account.
identityProviderDetails_invocationRole :: Lens' IdentityProviderDetails (Maybe Text)
-- | Provides the location of the service endpoint used to authenticate
-- users.
identityProviderDetails_url :: Lens' IdentityProviderDetails (Maybe Text)
-- | Reserved for future use.
inputFileLocation_efsFileLocation :: Lens' InputFileLocation (Maybe EfsFileLocation)
-- | Specifies the details for the S3 file being copied.
inputFileLocation_s3FileLocation :: Lens' InputFileLocation (Maybe S3InputFileLocation)
-- | A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
listedAccess_externalId :: Lens' ListedAccess (Maybe Text)
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
listedAccess_homeDirectory :: Lens' ListedAccess (Maybe Text)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
listedAccess_homeDirectoryType :: Lens' ListedAccess (Maybe HomeDirectoryType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
listedAccess_role :: Lens' ListedAccess (Maybe Text)
-- | A unique identifier for the agreement. This identifier is returned
-- when you create an agreement.
listedAgreement_agreementId :: Lens' ListedAgreement (Maybe Text)
-- | The Amazon Resource Name (ARN) of the specified agreement.
listedAgreement_arn :: Lens' ListedAgreement (Maybe Text)
-- | The current description for the agreement. You can change it by
-- calling the UpdateAgreement operation and providing a new
-- description.
listedAgreement_description :: Lens' ListedAgreement (Maybe Text)
-- | A unique identifier for the AS2 local profile.
listedAgreement_localProfileId :: Lens' ListedAgreement (Maybe Text)
-- | A unique identifier for the partner profile.
listedAgreement_partnerProfileId :: Lens' ListedAgreement (Maybe Text)
-- | The unique identifier for the agreement.
listedAgreement_serverId :: Lens' ListedAgreement (Maybe Text)
-- | The agreement can be either ACTIVE or INACTIVE.
listedAgreement_status :: Lens' ListedAgreement (Maybe AgreementStatusType)
-- | An optional date that specifies when the certificate becomes active.
listedCertificate_activeDate :: Lens' ListedCertificate (Maybe UTCTime)
-- | The Amazon Resource Name (ARN) of the specified certificate.
listedCertificate_arn :: Lens' ListedCertificate (Maybe Text)
-- | An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
listedCertificate_certificateId :: Lens' ListedCertificate (Maybe Text)
-- | The name or short description that's used to identify the certificate.
listedCertificate_description :: Lens' ListedCertificate (Maybe Text)
-- | An optional date that specifies when the certificate becomes inactive.
listedCertificate_inactiveDate :: Lens' ListedCertificate (Maybe UTCTime)
-- | The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
listedCertificate_status :: Lens' ListedCertificate (Maybe CertificateStatusType)
-- | The type for the certificate. If a private key has been specified for
-- the certificate, its type is CERTIFICATE_WITH_PRIVATE_KEY. If
-- there is no private key, the type is CERTIFICATE.
listedCertificate_type :: Lens' ListedCertificate (Maybe CertificateType)
-- | Specifies whether this certificate is used for signing or encryption.
listedCertificate_usage :: Lens' ListedCertificate (Maybe CertificateUsageType)
-- | The Amazon Resource Name (ARN) of the specified connector.
listedConnector_arn :: Lens' ListedConnector (Maybe Text)
-- | The unique identifier for the connector.
listedConnector_connectorId :: Lens' ListedConnector (Maybe Text)
-- | The URL of the partner's AS2 endpoint.
listedConnector_url :: Lens' ListedConnector (Maybe Text)
-- | A unique identifier for the execution of a workflow.
listedExecution_executionId :: Lens' ListedExecution (Maybe Text)
-- | A structure that describes the Amazon S3 or EFS file location. This is
-- the file location when the execution begins: if the file is being
-- copied, this is the initial (as opposed to destination) file location.
listedExecution_initialFileLocation :: Lens' ListedExecution (Maybe FileLocation)
-- | A container object for the session details that are associated with a
-- workflow.
listedExecution_serviceMetadata :: Lens' ListedExecution (Maybe ServiceMetadata)
-- | The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
listedExecution_status :: Lens' ListedExecution (Maybe ExecutionStatus)
-- | The date on which the host key was added to the server.
listedHostKey_dateImported :: Lens' ListedHostKey (Maybe UTCTime)
-- | The current description for the host key. You can change it by calling
-- the UpdateHostKey operation and providing a new description.
listedHostKey_description :: Lens' ListedHostKey (Maybe Text)
-- | The public key fingerprint, which is a short sequence of bytes used to
-- identify the longer public key.
listedHostKey_fingerprint :: Lens' ListedHostKey (Maybe Text)
-- | A unique identifier for the host key.
listedHostKey_hostKeyId :: Lens' ListedHostKey (Maybe Text)
-- | The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
listedHostKey_type :: Lens' ListedHostKey (Maybe Text)
-- | The unique Amazon Resource Name (ARN) of the host key.
listedHostKey_arn :: Lens' ListedHostKey Text
-- | The Amazon Resource Name (ARN) of the specified profile.
listedProfile_arn :: Lens' ListedProfile (Maybe Text)
-- | The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
listedProfile_as2Id :: Lens' ListedProfile (Maybe Text)
-- | A unique identifier for the local or partner AS2 profile.
listedProfile_profileId :: Lens' ListedProfile (Maybe Text)
-- | Indicates whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
listedProfile_profileType :: Lens' ListedProfile (Maybe ProfileType)
-- | Specifies the domain of the storage system that is used for file
-- transfers.
listedServer_domain :: Lens' ListedServer (Maybe Domain)
-- | Specifies the type of VPC endpoint that your server is connected to.
-- If your server is connected to a VPC endpoint, your server isn't
-- accessible over the public internet.
listedServer_endpointType :: Lens' ListedServer (Maybe EndpointType)
-- | The mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
listedServer_identityProviderType :: Lens' ListedServer (Maybe IdentityProviderType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
listedServer_loggingRole :: Lens' ListedServer (Maybe Text)
-- | Specifies the unique system assigned identifier for the servers that
-- were listed.
listedServer_serverId :: Lens' ListedServer (Maybe Text)
-- | The condition of the server that was described. A value of
-- ONLINE indicates that the server can accept jobs and transfer
-- files. A State value of OFFLINE means that the
-- server cannot perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
listedServer_state :: Lens' ListedServer (Maybe State)
-- | Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
listedServer_userCount :: Lens' ListedServer (Maybe Int)
-- | Specifies the unique Amazon Resource Name (ARN) for a server to be
-- listed.
listedServer_arn :: Lens' ListedServer Text
-- | The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
listedUser_homeDirectory :: Lens' ListedUser (Maybe Text)
-- | The type of landing directory (folder) that you want your users' home
-- directory to be when they log in to the server. If you set it to
-- PATH, the user will see the absolute Amazon S3 bucket or EFS
-- paths as is in their file transfer protocol clients. If you set it
-- LOGICAL, you need to provide mappings in the
-- HomeDirectoryMappings for how you want to make Amazon S3 or
-- Amazon EFS paths visible to your users.
listedUser_homeDirectoryType :: Lens' ListedUser (Maybe HomeDirectoryType)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that controls your users' access to your Amazon S3 bucket
-- or Amazon EFS file system. The policies attached to this role
-- determine the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
--
-- The IAM role that controls your users' access to your Amazon S3 bucket
-- for servers with Domain=S3, or your EFS file system for
-- servers with Domain=EFS.
--
-- The policies attached to this role determine the level of access you
-- want to provide your users when transferring files into and out of
-- your S3 buckets or EFS file systems.
listedUser_role :: Lens' ListedUser (Maybe Text)
-- | Specifies the number of SSH public keys stored for the user you
-- specified.
listedUser_sshPublicKeyCount :: Lens' ListedUser (Maybe Int)
-- | Specifies the name of the user whose ARN was specified. User names are
-- used for authentication purposes.
listedUser_userName :: Lens' ListedUser (Maybe Text)
-- | Provides the unique Amazon Resource Name (ARN) for the user that you
-- want to learn about.
listedUser_arn :: Lens' ListedUser Text
-- | Specifies the unique Amazon Resource Name (ARN) for the workflow.
listedWorkflow_arn :: Lens' ListedWorkflow (Maybe Text)
-- | Specifies the text description for the workflow.
listedWorkflow_description :: Lens' ListedWorkflow (Maybe Text)
-- | A unique identifier for the workflow.
listedWorkflow_workflowId :: Lens' ListedWorkflow (Maybe Text)
-- | The name of the CloudWatch logging group for the Transfer Family
-- server to which this workflow belongs.
loggingConfiguration_logGroupName :: Lens' LoggingConfiguration (Maybe Text)
-- | The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
loggingConfiguration_loggingRole :: Lens' LoggingConfiguration (Maybe Text)
-- | The secondary POSIX group IDs used for all EFS operations by this
-- user.
posixProfile_secondaryGids :: Lens' PosixProfile (Maybe [Natural])
-- | The POSIX user ID used for all EFS operations by this user.
posixProfile_uid :: Lens' PosixProfile Natural
-- | The POSIX group ID used for all EFS operations by this user.
posixProfile_gid :: Lens' PosixProfile Natural
-- | Indicates the transport method for the AS2 messages. Currently, only
-- HTTP is supported.
protocolDetails_as2Transports :: Lens' ProtocolDetails (Maybe (NonEmpty As2Transport))
-- | Indicates passive mode, for FTP and FTPS protocols. Enter a single
-- IPv4 address, such as the public IP address of a firewall, router, or
-- load balancer. For example:
--
--
-- aws transfer update-server --protocol-details PassiveIp=0.0.0.0
--
--
-- Replace 0.0.0.0 in the example above with the actual IP
-- address you want to use.
--
-- If you change the PassiveIp value, you must stop and then
-- restart your Transfer Family server for the change to take effect. For
-- details on using passive mode (PASV) in a NAT environment, see
-- Configuring your FTPS server behind a firewall or NAT with Transfer
-- Family.
--
-- Special values
--
-- The AUTO and 0.0.0.0 are special values for the
-- PassiveIp parameter. The value PassiveIp=AUTO is
-- assigned by default to FTP and FTPS type servers. In this case, the
-- server automatically responds with one of the endpoint IPs within the
-- PASV response. PassiveIp=0.0.0.0 has a more unique
-- application for its usage. For example, if you have a High
-- Availability (HA) Network Load Balancer (NLB) environment, where you
-- have 3 subnets, you can only specify a single IP address using the
-- PassiveIp parameter. This reduces the effectiveness of having
-- High Availability. In this case, you can specify
-- PassiveIp=0.0.0.0. This tells the client to use the same IP
-- address as the Control connection and utilize all AZs for their
-- connections. Note, however, that not all FTP clients support the
-- PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support
-- it. If you are using other clients, check to see if your client
-- supports the PassiveIp=0.0.0.0 response.
protocolDetails_passiveIp :: Lens' ProtocolDetails (Maybe Text)
-- | Use the SetStatOption to ignore the error that is generated
-- when the client attempts to use SETSTAT on a file you are
-- uploading to an S3 bucket.
--
-- Some SFTP file transfer clients can attempt to change the attributes
-- of remote files, including timestamp and permissions, using commands,
-- such as SETSTAT when uploading the file. However, these
-- commands are not compatible with object storage systems, such as
-- Amazon S3. Due to this incompatibility, file uploads from these
-- clients can result in errors even when the file is otherwise
-- successfully uploaded.
--
-- Set the value to ENABLE_NO_OP to have the Transfer Family
-- server ignore the SETSTAT command, and upload files without
-- needing to make any changes to your SFTP client. While the
-- SetStatOption ENABLE_NO_OP setting ignores the
-- error, it does generate a log entry in Amazon CloudWatch Logs, so you
-- can determine when the client is making a SETSTAT call.
--
-- If you want to preserve the original timestamp for your file, and
-- modify other file attributes using SETSTAT, you can use
-- Amazon EFS as backend storage with Transfer Family.
protocolDetails_setStatOption :: Lens' ProtocolDetails (Maybe SetStatOption)
-- | A property used with Transfer Family servers that use the FTPS
-- protocol. TLS Session Resumption provides a mechanism to resume or
-- share a negotiated secret key between the control and data connection
-- for an FTPS session. TlsSessionResumptionMode determines
-- whether or not the server resumes recent, negotiated sessions through
-- a unique session ID. This property is available during
-- CreateServer and UpdateServer calls. If a
-- TlsSessionResumptionMode value is not specified during
-- CreateServer, it is set to ENFORCED by default.
--
--
-- - DISABLED: the server does not process TLS session
-- resumption client requests and creates a new TLS session for each
-- request.
-- - ENABLED: the server processes and accepts clients that
-- are performing TLS session resumption. The server doesn't reject
-- client data connections that do not perform the TLS session resumption
-- client processing.
-- - ENFORCED: the server processes and accepts clients that
-- are performing TLS session resumption. The server rejects client data
-- connections that do not perform the TLS session resumption client
-- processing. Before you set the value to ENFORCED, test your
-- clients.Not all FTPS clients perform TLS session resumption. So, if
-- you choose to enforce TLS session resumption, you prevent any
-- connections from FTPS clients that don't perform the protocol
-- negotiation. To determine whether or not you can use the
-- ENFORCED value, you need to test your clients.
--
protocolDetails_tlsSessionResumptionMode :: Lens' ProtocolDetails (Maybe TlsSessionResumptionMode)
-- | Specifies the S3 bucket that contains the file being used.
s3FileLocation_bucket :: Lens' S3FileLocation (Maybe Text)
-- | The entity tag is a hash of the object. The ETag reflects changes only
-- to the contents of an object, not its metadata.
s3FileLocation_etag :: Lens' S3FileLocation (Maybe Text)
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
s3FileLocation_key :: Lens' S3FileLocation (Maybe Text)
-- | Specifies the file version.
s3FileLocation_versionId :: Lens' S3FileLocation (Maybe Text)
-- | Specifies the S3 bucket for the customer input file.
s3InputFileLocation_bucket :: Lens' S3InputFileLocation (Maybe Text)
-- | The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
s3InputFileLocation_key :: Lens' S3InputFileLocation (Maybe Text)
-- | The name assigned to the tag that you create.
s3Tag_key :: Lens' S3Tag Text
-- | The value that corresponds to the key.
s3Tag_value :: Lens' S3Tag Text
-- | The Server ID (ServerId), Session ID (SessionId) and
-- user (UserName) make up the UserDetails.
serviceMetadata_userDetails :: Lens' ServiceMetadata UserDetails
-- | Specifies the date that the public key was added to the user account.
sshPublicKey_dateImported :: Lens' SshPublicKey UTCTime
-- | Specifies the content of the SSH public key as specified by the
-- PublicKeyId.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
sshPublicKey_sshPublicKeyBody :: Lens' SshPublicKey Text
-- | Specifies the SshPublicKeyId parameter contains the
-- identifier of the public key.
sshPublicKey_sshPublicKeyId :: Lens' SshPublicKey Text
-- | The name assigned to the tag that you create.
tag_key :: Lens' Tag Text
-- | Contains one or more values that you assigned to the key name you
-- create.
tag_value :: Lens' Tag Text
-- | The name of the step, used as an identifier.
tagStepDetails_name :: Lens' TagStepDetails (Maybe Text)
-- | Specifies which file to use as input to the workflow step: either the
-- output from the previous step, or the originally uploaded file for the
-- workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
tagStepDetails_sourceFileLocation :: Lens' TagStepDetails (Maybe Text)
-- | Array that contains from 1 to 10 key/value pairs.
tagStepDetails_tags :: Lens' TagStepDetails (Maybe (NonEmpty S3Tag))
-- | The system-assigned unique identifier for a session that corresponds
-- to the workflow.
userDetails_sessionId :: Lens' UserDetails (Maybe Text)
-- | A unique string that identifies a user account associated with a
-- server.
userDetails_userName :: Lens' UserDetails Text
-- | The system-assigned unique identifier for a Transfer server instance.
userDetails_serverId :: Lens' UserDetails Text
-- | A unique identifier for the workflow.
workflowDetail_workflowId :: Lens' WorkflowDetail Text
-- | Includes the necessary permissions for S3, EFS, and Lambda operations
-- that Transfer can assume, so that all workflow steps can operate on
-- the required resources
workflowDetail_executionRole :: Lens' WorkflowDetail Text
-- | A trigger that starts a workflow if a file is only partially uploaded.
-- You can attach a workflow to a server that executes whenever there is
-- a partial upload.
--
-- A partial upload occurs when a file is open when the session
-- disconnects.
workflowDetails_onPartialUpload :: Lens' WorkflowDetails (Maybe [WorkflowDetail])
-- | A trigger that starts a workflow: the workflow begins to execute after
-- a file is uploaded.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
workflowDetails_onUpload :: Lens' WorkflowDetails (Maybe [WorkflowDetail])
-- | Details for a step that performs a file copy.
--
-- Consists of the following values:
--
--
-- - A description
-- - An S3 location for the destination of the file copy.
-- - A flag that indicates whether or not to overwrite an existing file
-- of the same name. The default is FALSE.
--
workflowStep_copyStepDetails :: Lens' WorkflowStep (Maybe CopyStepDetails)
-- | Details for a step that invokes a lambda function.
--
-- Consists of the lambda function name, target, and timeout (in
-- seconds).
workflowStep_customStepDetails :: Lens' WorkflowStep (Maybe CustomStepDetails)
-- | Undocumented member.
workflowStep_decryptStepDetails :: Lens' WorkflowStep (Maybe DecryptStepDetails)
-- | Details for a step that deletes the file.
workflowStep_deleteStepDetails :: Lens' WorkflowStep (Maybe DeleteStepDetails)
-- | Details for a step that creates one or more tags.
--
-- You specify one or more tags: each tag contains a key/value pair.
workflowStep_tagStepDetails :: Lens' WorkflowStep (Maybe TagStepDetails)
-- | Currently, the following step types are supported.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
workflowStep_type :: Lens' WorkflowStep (Maybe WorkflowStepType)
module Amazonka.Transfer.Waiters
-- | Polls DescribeServer every 30 seconds until a successful state
-- is reached. An error is returned after 120 failed checks.
newServerOffline :: Wait DescribeServer
-- | Polls DescribeServer every 30 seconds until a successful state
-- is reached. An error is returned after 120 failed checks.
newServerOnline :: Wait DescribeServer
-- | Derived from API version 2018-11-05 of the AWS service
-- descriptions, licensed under Apache 2.0.
--
-- Transfer Family is a fully managed service that enables the transfer
-- of files over the File Transfer Protocol (FTP), File Transfer Protocol
-- over SSL (FTPS), or Secure Shell (SSH) File Transfer Protocol (SFTP)
-- directly into and out of Amazon Simple Storage Service (Amazon S3) or
-- Amazon EFS. Additionally, you can use Applicability Statement 2 (AS2)
-- to transfer files into and out of Amazon S3. Amazon Web Services helps
-- you seamlessly migrate your file transfer workflows to Transfer Family
-- by integrating with existing authentication systems, and providing DNS
-- routing with Amazon Route 53 so nothing changes for your customers and
-- partners, or their applications. With your data in Amazon S3, you can
-- use it with Amazon Web Services for processing, analytics, machine
-- learning, and archiving. Getting started with Transfer Family is easy
-- since there is no infrastructure to buy and set up.
module Amazonka.Transfer
-- | API version 2018-11-05 of the Amazon Transfer Family SDK
-- configuration.
defaultService :: Service
-- | You do not have sufficient access to perform this action.
_AccessDeniedException :: AsError a => Fold a ServiceError
-- | This exception is thrown when the UpdateServer is called for
-- a file transfer protocol-enabled server that has VPC as the endpoint
-- type and the server's VpcEndpointID is not in the available
-- state.
_ConflictException :: AsError a => Fold a ServiceError
-- | This exception is thrown when an error occurs in the Amazon Web
-- ServicesTransfer Family service.
_InternalServiceError :: AsError a => Fold a ServiceError
-- | The NextToken parameter that was passed is invalid.
_InvalidNextTokenException :: AsError a => Fold a ServiceError
-- | This exception is thrown when the client submits a malformed request.
_InvalidRequestException :: AsError a => Fold a ServiceError
-- | The requested resource does not exist.
_ResourceExistsException :: AsError a => Fold a ServiceError
-- | This exception is thrown when a resource is not found by the Amazon
-- Web ServicesTransfer Family service.
_ResourceNotFoundException :: AsError a => Fold a ServiceError
-- | The request has failed because the Amazon Web ServicesTransfer Family
-- service is not available.
_ServiceUnavailableException :: AsError a => Fold a ServiceError
-- | The request was denied due to request throttling.
_ThrottlingException :: AsError a => Fold a ServiceError
-- | Polls DescribeServer every 30 seconds until a successful state
-- is reached. An error is returned after 120 failed checks.
newServerOffline :: Wait DescribeServer
-- | Polls DescribeServer every 30 seconds until a successful state
-- is reached. An error is returned after 120 failed checks.
newServerOnline :: Wait DescribeServer
-- | See: newCreateAccess smart constructor.
data CreateAccess
CreateAccess' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Text -> Text -> Text -> CreateAccess
-- | Create a value of CreateAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateAccess, createAccess_homeDirectory - The landing
-- directory (folder) for a user when they log in to the server using the
-- client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- CreateAccess, createAccess_homeDirectoryMappings -
-- Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- CreateAccess, createAccess_homeDirectoryType - The type
-- of landing directory (folder) that you want your users' home directory
-- to be when they log in to the server. If you set it to PATH,
-- the user will see the absolute Amazon S3 bucket or EFS paths as is in
-- their file transfer protocol clients. If you set it LOGICAL,
-- you need to provide mappings in the HomeDirectoryMappings for
-- how you want to make Amazon S3 or Amazon EFS paths visible to your
-- users.
--
-- CreateAccess, createAccess_policy - A session policy for
-- your user so that you can use the same Identity and Access Management
-- (IAM) role across multiple users. This policy scopes down a user's
-- access to portions of their Amazon S3 bucket. Variables that you can
-- use inside this policy include ${Transfer:UserName},
-- ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Security Token
-- Service API Reference.
--
-- CreateAccess, createAccess_posixProfile - Undocumented
-- member.
--
-- CreateAccess, createAccess_role - The Amazon Resource
-- Name (ARN) of the Identity and Access Management (IAM) role that
-- controls your users' access to your Amazon S3 bucket or Amazon EFS
-- file system. The policies attached to this role determine the level of
-- access that you want to provide your users when transferring files
-- into and out of your Amazon S3 bucket or Amazon EFS file system. The
-- IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
--
-- CreateAccess, createAccess_serverId - A system-assigned
-- unique identifier for a server instance. This is the specific server
-- that you added your user to.
--
-- CreateAccess, createAccess_externalId - A unique
-- identifier that is required to identify specific groups within your
-- directory. The users of the group that you associate have access to
-- your Amazon S3 or Amazon EFS resources over the enabled protocols
-- using Transfer Family. If you know the group name, you can view the
-- SID values by running the following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
newCreateAccess :: Text -> Text -> Text -> CreateAccess
-- | See: newCreateAccessResponse smart constructor.
data CreateAccessResponse
CreateAccessResponse' :: Int -> Text -> Text -> CreateAccessResponse
-- | Create a value of CreateAccessResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateAccessResponse',
-- createAccessResponse_httpStatus - The response's http status
-- code.
--
-- CreateAccess, createAccessResponse_serverId - The
-- identifier of the server that the user is attached to.
--
-- CreateAccess, createAccessResponse_externalId - The
-- external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Transfer Family.
newCreateAccessResponse :: Int -> Text -> Text -> CreateAccessResponse
-- | See: newCreateAgreement smart constructor.
data CreateAgreement
CreateAgreement' :: Maybe Text -> Maybe AgreementStatusType -> Maybe (NonEmpty Tag) -> Text -> Text -> Text -> Text -> Text -> CreateAgreement
-- | Create a value of CreateAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateAgreement, createAgreement_description - A name or
-- short description to identify the agreement.
--
-- CreateAgreement, createAgreement_status - The status of
-- the agreement. The agreement can be either ACTIVE or
-- INACTIVE.
--
-- CreateAgreement, createAgreement_tags - Key-value pairs
-- that can be used to group and search for agreements.
--
-- CreateAgreement, createAgreement_serverId - A
-- system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
--
-- CreateAgreement, createAgreement_localProfileId - A
-- unique identifier for the AS2 local profile.
--
-- CreateAgreement, createAgreement_partnerProfileId - A
-- unique identifier for the partner profile used in the agreement.
--
-- CreateAgreement, createAgreement_baseDirectory - The
-- landing directory (folder) for files transferred by using the AS2
-- protocol.
--
-- A BaseDirectory example is
-- DOC-EXAMPLE-BUCKET/home/mydirectory.
--
-- CreateAgreement, createAgreement_accessRole - With AS2,
-- you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
newCreateAgreement :: Text -> Text -> Text -> Text -> Text -> CreateAgreement
-- | See: newCreateAgreementResponse smart constructor.
data CreateAgreementResponse
CreateAgreementResponse' :: Int -> Text -> CreateAgreementResponse
-- | Create a value of CreateAgreementResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateAgreementResponse',
-- createAgreementResponse_httpStatus - The response's http status
-- code.
--
-- CreateAgreementResponse,
-- createAgreementResponse_agreementId - The unique identifier for
-- the agreement. Use this ID for deleting, or updating an agreement, as
-- well as in any other API calls that require that you specify the
-- agreement ID.
newCreateAgreementResponse :: Int -> Text -> CreateAgreementResponse
-- | See: newCreateConnector smart constructor.
data CreateConnector
CreateConnector' :: Maybe Text -> Maybe (NonEmpty Tag) -> Text -> As2ConnectorConfig -> Text -> CreateConnector
-- | Create a value of CreateConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateConnector, createConnector_loggingRole - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that allows a connector to turn on CloudWatch logging for Amazon
-- S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
--
-- CreateConnector, createConnector_tags - Key-value pairs
-- that can be used to group and search for connectors. Tags are metadata
-- attached to connectors for any purpose.
--
-- CreateConnector, createConnector_url - The URL of the
-- partner's AS2 endpoint.
--
-- CreateConnector, createConnector_as2Config - A structure
-- that contains the parameters for a connector object.
--
-- CreateConnector, createConnector_accessRole - With AS2,
-- you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
newCreateConnector :: Text -> As2ConnectorConfig -> Text -> CreateConnector
-- | See: newCreateConnectorResponse smart constructor.
data CreateConnectorResponse
CreateConnectorResponse' :: Int -> Text -> CreateConnectorResponse
-- | Create a value of CreateConnectorResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateConnectorResponse',
-- createConnectorResponse_httpStatus - The response's http status
-- code.
--
-- CreateConnectorResponse,
-- createConnectorResponse_connectorId - The unique identifier for
-- the connector, returned after the API call succeeds.
newCreateConnectorResponse :: Int -> Text -> CreateConnectorResponse
-- | See: newCreateProfile smart constructor.
data CreateProfile
CreateProfile' :: Maybe [Text] -> Maybe (NonEmpty Tag) -> Text -> ProfileType -> CreateProfile
-- | Create a value of CreateProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateProfile, createProfile_certificateIds - An array
-- of identifiers for the imported certificates. You use this identifier
-- for working with profiles and partner profiles.
--
-- CreateProfile, createProfile_tags - Key-value pairs that
-- can be used to group and search for AS2 profiles.
--
-- CreateProfile, createProfile_as2Id - The As2Id
-- is the AS2-name, as defined in the RFC 4130. For inbound
-- transfers, this is the AS2-From header for the AS2 messages
-- sent from the partner. For outbound connectors, this is the
-- AS2-To header for the AS2 messages sent to the partner using
-- the StartFileTransfer API operation. This ID cannot include
-- spaces.
--
-- CreateProfile, createProfile_profileType - Determines
-- the type of profile to create:
--
--
-- - Specify LOCAL to create a local profile. A local profile
-- represents the AS2-enabled Transfer Family server organization or
-- party.
-- - Specify PARTNER to create a partner profile. A partner
-- profile represents a remote organization, external to Transfer
-- Family.
--
newCreateProfile :: Text -> ProfileType -> CreateProfile
-- | See: newCreateProfileResponse smart constructor.
data CreateProfileResponse
CreateProfileResponse' :: Int -> Text -> CreateProfileResponse
-- | Create a value of CreateProfileResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateProfileResponse',
-- createProfileResponse_httpStatus - The response's http status
-- code.
--
-- CreateProfileResponse, createProfileResponse_profileId -
-- The unique identifier for the AS2 profile, returned after the API call
-- succeeds.
newCreateProfileResponse :: Int -> Text -> CreateProfileResponse
-- | See: newCreateServer smart constructor.
data CreateServer
CreateServer' :: Maybe Text -> Maybe Domain -> Maybe EndpointDetails -> Maybe EndpointType -> Maybe (Sensitive Text) -> Maybe IdentityProviderDetails -> Maybe IdentityProviderType -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProtocolDetails -> Maybe (NonEmpty Protocol) -> Maybe Text -> Maybe (NonEmpty Tag) -> Maybe WorkflowDetails -> CreateServer
-- | Create a value of CreateServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateServer, createServer_certificate - The Amazon
-- Resource Name (ARN) of the Certificate Manager (ACM) certificate.
-- Required when Protocols is set to FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Certificate Manager User Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Certificate Manager User
-- Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the
-- Certificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
--
-- CreateServer, createServer_domain - The domain of the
-- storage system that is used for file transfers. There are two domains
-- available: Amazon Simple Storage Service (Amazon S3) and Amazon
-- Elastic File System (Amazon EFS). The default value is S3.
--
-- After the server is created, the domain cannot be changed.
--
-- CreateServer, createServer_endpointDetails - The virtual
-- private cloud (VPC) endpoint settings that are configured for your
-- server. When you host your endpoint within your VPC, you can make your
-- endpoint accessible only to resources within your VPC, or you can
-- attach Elastic IP addresses and make your endpoint accessible to
-- clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
--
-- CreateServer, createServer_endpointType - The type of
-- endpoint that you want your server to use. You can choose to make your
-- server's endpoint publicly accessible (PUBLIC) or host it inside your
-- VPC. With an endpoint that is hosted in a VPC, you can restrict access
-- to your server and resources only within your VPC or choose to make it
-- internet facing by attaching Elastic IP addresses directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Services account
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Services account on or before May 19, 2021, you
-- will not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
--
-- $sel:hostKey:CreateServer', createServer_hostKey - The
-- RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
--
-- CreateServer, createServer_identityProviderDetails -
-- Required when IdentityProviderType is set to
-- AWS_DIRECTORY_SERVICE or API_GATEWAY. Accepts an
-- array containing all of the information required to use a directory in
-- AWS_DIRECTORY_SERVICE or invoke a customer-supplied
-- authentication API, including the API Gateway URL. Not required when
-- IdentityProviderType is set to SERVICE_MANAGED.
--
-- CreateServer, createServer_identityProviderType - The
-- mode of authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
--
-- CreateServer, createServer_loggingRole - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that allows a server to turn on Amazon CloudWatch logging for Amazon
-- S3 or Amazon EFSevents. When set, you can view user activity in your
-- CloudWatch logs.
--
-- CreateServer, createServer_postAuthenticationLoginBanner
-- - Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
--
-- CreateServer, createServer_preAuthenticationLoginBanner
-- - Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
--
-- CreateServer, createServer_protocolDetails - The
-- protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
--
-- CreateServer, createServer_protocols - Specifies the
-- file transfer protocol or protocols over which your file transfer
-- protocol client can connect to your server's endpoint. The available
-- protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
--
-- CreateServer, createServer_securityPolicyName -
-- Specifies the name of the security policy that is attached to the
-- server.
--
-- CreateServer, createServer_tags - Key-value pairs that
-- can be used to group and search for servers.
--
-- CreateServer, createServer_workflowDetails - Specifies
-- the workflow ID for the workflow to assign and the execution role
-- that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
newCreateServer :: CreateServer
-- | See: newCreateServerResponse smart constructor.
data CreateServerResponse
CreateServerResponse' :: Int -> Text -> CreateServerResponse
-- | Create a value of CreateServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateServerResponse',
-- createServerResponse_httpStatus - The response's http status
-- code.
--
-- CreateServerResponse, createServerResponse_serverId -
-- The service-assigned identifier of the server that is created.
newCreateServerResponse :: Int -> Text -> CreateServerResponse
-- | See: newCreateUser smart constructor.
data CreateUser
CreateUser' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Maybe (NonEmpty Tag) -> Text -> Text -> Text -> CreateUser
-- | Create a value of CreateUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateUser, createUser_homeDirectory - The landing
-- directory (folder) for a user when they log in to the server using the
-- client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- CreateUser, createUser_homeDirectoryMappings - Logical
-- directory mappings that specify what Amazon S3 or Amazon EFS paths and
-- keys should be visible to your user and how you want to make them
-- visible. You must specify the Entry and Target pair,
-- where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory parameter
-- value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- CreateUser, createUser_homeDirectoryType - The type of
-- landing directory (folder) that you want your users' home directory to
-- be when they log in to the server. If you set it to PATH, the
-- user will see the absolute Amazon S3 bucket or EFS paths as is in
-- their file transfer protocol clients. If you set it LOGICAL,
-- you need to provide mappings in the HomeDirectoryMappings for
-- how you want to make Amazon S3 or Amazon EFS paths visible to your
-- users.
--
-- CreateUser, createUser_policy - A session policy for
-- your user so that you can use the same Identity and Access Management
-- (IAM) role across multiple users. This policy scopes down a user's
-- access to portions of their Amazon S3 bucket. Variables that you can
-- use inside this policy include ${Transfer:UserName},
-- ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
--
-- CreateUser, createUser_posixProfile - Specifies the full
-- POSIX identity, including user ID (Uid), group ID
-- (Gid), and any secondary groups IDs (SecondaryGids),
-- that controls your users' access to your Amazon EFS file systems. The
-- POSIX permissions that are set on files and directories in Amazon EFS
-- determine the level of access your users get when transferring files
-- into and out of your Amazon EFS file systems.
--
-- CreateUser, createUser_sshPublicKeyBody - The public
-- portion of the Secure Shell (SSH) key used to authenticate the user to
-- the server.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
--
-- CreateUser, createUser_tags - Key-value pairs that can
-- be used to group and search for users. Tags are metadata attached to
-- users for any purpose.
--
-- CreateUser, createUser_role - The Amazon Resource Name
-- (ARN) of the Identity and Access Management (IAM) role that controls
-- your users' access to your Amazon S3 bucket or Amazon EFS file system.
-- The policies attached to this role determine the level of access that
-- you want to provide your users when transferring files into and out of
-- your Amazon S3 bucket or Amazon EFS file system. The IAM role should
-- also contain a trust relationship that allows the server to access
-- your resources when servicing your users' transfer requests.
--
-- CreateUser, createUser_serverId - A system-assigned
-- unique identifier for a server instance. This is the specific server
-- that you added your user to.
--
-- CreateUser, createUser_userName - A unique string that
-- identifies a user and is associated with a ServerId. This
-- user name must be a minimum of 3 and a maximum of 100 characters long.
-- The following are valid characters: a-z, A-Z, 0-9, underscore '_',
-- hyphen '-', period '.', and at sign '@'. The user name can't start
-- with a hyphen, period, or at sign.
newCreateUser :: Text -> Text -> Text -> CreateUser
-- | See: newCreateUserResponse smart constructor.
data CreateUserResponse
CreateUserResponse' :: Int -> Text -> Text -> CreateUserResponse
-- | Create a value of CreateUserResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateUserResponse',
-- createUserResponse_httpStatus - The response's http status
-- code.
--
-- CreateUser, createUserResponse_serverId - The identifier
-- of the server that the user is attached to.
--
-- CreateUser, createUserResponse_userName - A unique
-- string that identifies a user account associated with a server.
newCreateUserResponse :: Int -> Text -> Text -> CreateUserResponse
-- | See: newCreateWorkflow smart constructor.
data CreateWorkflow
CreateWorkflow' :: Maybe Text -> Maybe [WorkflowStep] -> Maybe (NonEmpty Tag) -> [WorkflowStep] -> CreateWorkflow
-- | Create a value of CreateWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- CreateWorkflow, createWorkflow_description - A textual
-- description for the workflow.
--
-- CreateWorkflow, createWorkflow_onExceptionSteps -
-- Specifies the steps (actions) to take if errors are encountered during
-- execution of the workflow.
--
-- For custom steps, the lambda function needs to send FAILURE
-- to the call back API to kick off the exception steps. Additionally, if
-- the lambda does not send SUCCESS before it times out, the
-- exception steps are executed.
--
-- CreateWorkflow, createWorkflow_tags - Key-value pairs
-- that can be used to group and search for workflows. Tags are metadata
-- attached to workflows for any purpose.
--
-- CreateWorkflow, createWorkflow_steps - Specifies the
-- details for the steps that are in the specified workflow.
--
-- The TYPE specifies which of the following actions is being
-- taken for this step.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
--
-- Currently, copying and tagging are supported only on S3.
--
-- For file location, you specify either the S3 bucket and key, or the
-- EFS file system ID and path.
newCreateWorkflow :: CreateWorkflow
-- | See: newCreateWorkflowResponse smart constructor.
data CreateWorkflowResponse
CreateWorkflowResponse' :: Int -> Text -> CreateWorkflowResponse
-- | Create a value of CreateWorkflowResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:CreateWorkflowResponse',
-- createWorkflowResponse_httpStatus - The response's http status
-- code.
--
-- CreateWorkflowResponse,
-- createWorkflowResponse_workflowId - A unique identifier for the
-- workflow.
newCreateWorkflowResponse :: Int -> Text -> CreateWorkflowResponse
-- | See: newDeleteAccess smart constructor.
data DeleteAccess
DeleteAccess' :: Text -> Text -> DeleteAccess
-- | Create a value of DeleteAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteAccess, deleteAccess_serverId - A system-assigned
-- unique identifier for a server that has this user assigned.
--
-- DeleteAccess, deleteAccess_externalId - A unique
-- identifier that is required to identify specific groups within your
-- directory. The users of the group that you associate have access to
-- your Amazon S3 or Amazon EFS resources over the enabled protocols
-- using Transfer Family. If you know the group name, you can view the
-- SID values by running the following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
newDeleteAccess :: Text -> Text -> DeleteAccess
-- | See: newDeleteAccessResponse smart constructor.
data DeleteAccessResponse
DeleteAccessResponse' :: DeleteAccessResponse
-- | Create a value of DeleteAccessResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteAccessResponse :: DeleteAccessResponse
-- | See: newDeleteAgreement smart constructor.
data DeleteAgreement
DeleteAgreement' :: Text -> Text -> DeleteAgreement
-- | Create a value of DeleteAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteAgreement, deleteAgreement_agreementId - A unique
-- identifier for the agreement. This identifier is returned when you
-- create an agreement.
--
-- DeleteAgreement, deleteAgreement_serverId - The server
-- identifier associated with the agreement that you are deleting.
newDeleteAgreement :: Text -> Text -> DeleteAgreement
-- | See: newDeleteAgreementResponse smart constructor.
data DeleteAgreementResponse
DeleteAgreementResponse' :: DeleteAgreementResponse
-- | Create a value of DeleteAgreementResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteAgreementResponse :: DeleteAgreementResponse
-- | See: newDeleteCertificate smart constructor.
data DeleteCertificate
DeleteCertificate' :: Text -> DeleteCertificate
-- | Create a value of DeleteCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteCertificate, deleteCertificate_certificateId - The
-- identifier of the certificate object that you are deleting.
newDeleteCertificate :: Text -> DeleteCertificate
-- | See: newDeleteCertificateResponse smart constructor.
data DeleteCertificateResponse
DeleteCertificateResponse' :: DeleteCertificateResponse
-- | Create a value of DeleteCertificateResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteCertificateResponse :: DeleteCertificateResponse
-- | See: newDeleteConnector smart constructor.
data DeleteConnector
DeleteConnector' :: Text -> DeleteConnector
-- | Create a value of DeleteConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteConnector, deleteConnector_connectorId - The
-- unique identifier for the connector.
newDeleteConnector :: Text -> DeleteConnector
-- | See: newDeleteConnectorResponse smart constructor.
data DeleteConnectorResponse
DeleteConnectorResponse' :: DeleteConnectorResponse
-- | Create a value of DeleteConnectorResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteConnectorResponse :: DeleteConnectorResponse
-- | See: newDeleteHostKey smart constructor.
data DeleteHostKey
DeleteHostKey' :: Text -> Text -> DeleteHostKey
-- | Create a value of DeleteHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteHostKey, deleteHostKey_serverId - The identifier
-- of the server that contains the host key that you are deleting.
--
-- DeleteHostKey, deleteHostKey_hostKeyId - The identifier
-- of the host key that you are deleting.
newDeleteHostKey :: Text -> Text -> DeleteHostKey
-- | See: newDeleteHostKeyResponse smart constructor.
data DeleteHostKeyResponse
DeleteHostKeyResponse' :: DeleteHostKeyResponse
-- | Create a value of DeleteHostKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteHostKeyResponse :: DeleteHostKeyResponse
-- | See: newDeleteProfile smart constructor.
data DeleteProfile
DeleteProfile' :: Text -> DeleteProfile
-- | Create a value of DeleteProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteProfile, deleteProfile_profileId - The identifier
-- of the profile that you are deleting.
newDeleteProfile :: Text -> DeleteProfile
-- | See: newDeleteProfileResponse smart constructor.
data DeleteProfileResponse
DeleteProfileResponse' :: DeleteProfileResponse
-- | Create a value of DeleteProfileResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteProfileResponse :: DeleteProfileResponse
-- | See: newDeleteServer smart constructor.
data DeleteServer
DeleteServer' :: Text -> DeleteServer
-- | Create a value of DeleteServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteServer, deleteServer_serverId - A unique
-- system-assigned identifier for a server instance.
newDeleteServer :: Text -> DeleteServer
-- | See: newDeleteServerResponse smart constructor.
data DeleteServerResponse
DeleteServerResponse' :: DeleteServerResponse
-- | Create a value of DeleteServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteServerResponse :: DeleteServerResponse
-- | See: newDeleteSshPublicKey smart constructor.
data DeleteSshPublicKey
DeleteSshPublicKey' :: Text -> Text -> Text -> DeleteSshPublicKey
-- | Create a value of DeleteSshPublicKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteSshPublicKey, deleteSshPublicKey_serverId - A
-- system-assigned unique identifier for a file transfer protocol-enabled
-- server instance that has the user assigned to it.
--
-- DeleteSshPublicKey, deleteSshPublicKey_sshPublicKeyId -
-- A unique identifier used to reference your user's specific SSH key.
--
-- DeleteSshPublicKey, deleteSshPublicKey_userName - A
-- unique string that identifies a user whose public key is being
-- deleted.
newDeleteSshPublicKey :: Text -> Text -> Text -> DeleteSshPublicKey
-- | See: newDeleteSshPublicKeyResponse smart constructor.
data DeleteSshPublicKeyResponse
DeleteSshPublicKeyResponse' :: DeleteSshPublicKeyResponse
-- | Create a value of DeleteSshPublicKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteSshPublicKeyResponse :: DeleteSshPublicKeyResponse
-- | See: newDeleteUser smart constructor.
data DeleteUser
DeleteUser' :: Text -> Text -> DeleteUser
-- | Create a value of DeleteUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteUser, deleteUser_serverId - A system-assigned
-- unique identifier for a server instance that has the user assigned to
-- it.
--
-- DeleteUser, deleteUser_userName - A unique string that
-- identifies a user that is being deleted from a server.
newDeleteUser :: Text -> Text -> DeleteUser
-- | See: newDeleteUserResponse smart constructor.
data DeleteUserResponse
DeleteUserResponse' :: DeleteUserResponse
-- | Create a value of DeleteUserResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteUserResponse :: DeleteUserResponse
-- | See: newDeleteWorkflow smart constructor.
data DeleteWorkflow
DeleteWorkflow' :: Text -> DeleteWorkflow
-- | Create a value of DeleteWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DeleteWorkflow, deleteWorkflow_workflowId - A unique
-- identifier for the workflow.
newDeleteWorkflow :: Text -> DeleteWorkflow
-- | See: newDeleteWorkflowResponse smart constructor.
data DeleteWorkflowResponse
DeleteWorkflowResponse' :: DeleteWorkflowResponse
-- | Create a value of DeleteWorkflowResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newDeleteWorkflowResponse :: DeleteWorkflowResponse
-- | See: newDescribeAccess smart constructor.
data DescribeAccess
DescribeAccess' :: Text -> Text -> DescribeAccess
-- | Create a value of DescribeAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeAccess, describeAccess_serverId - A
-- system-assigned unique identifier for a server that has this access
-- assigned.
--
-- DescribeAccess, describeAccess_externalId - A unique
-- identifier that is required to identify specific groups within your
-- directory. The users of the group that you associate have access to
-- your Amazon S3 or Amazon EFS resources over the enabled protocols
-- using Transfer Family. If you know the group name, you can view the
-- SID values by running the following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
newDescribeAccess :: Text -> Text -> DescribeAccess
-- | See: newDescribeAccessResponse smart constructor.
data DescribeAccessResponse
DescribeAccessResponse' :: Int -> Text -> DescribedAccess -> DescribeAccessResponse
-- | Create a value of DescribeAccessResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeAccessResponse',
-- describeAccessResponse_httpStatus - The response's http status
-- code.
--
-- DescribeAccess, describeAccessResponse_serverId - A
-- system-assigned unique identifier for a server that has this access
-- assigned.
--
-- $sel:access:DescribeAccessResponse',
-- describeAccessResponse_access - The external identifier of the
-- server that the access is attached to.
newDescribeAccessResponse :: Int -> Text -> DescribedAccess -> DescribeAccessResponse
-- | See: newDescribeAgreement smart constructor.
data DescribeAgreement
DescribeAgreement' :: Text -> Text -> DescribeAgreement
-- | Create a value of DescribeAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeAgreement, describeAgreement_agreementId - A
-- unique identifier for the agreement. This identifier is returned when
-- you create an agreement.
--
-- DescribeAgreement, describeAgreement_serverId - The
-- server identifier that's associated with the agreement.
newDescribeAgreement :: Text -> Text -> DescribeAgreement
-- | See: newDescribeAgreementResponse smart constructor.
data DescribeAgreementResponse
DescribeAgreementResponse' :: Int -> DescribedAgreement -> DescribeAgreementResponse
-- | Create a value of DescribeAgreementResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeAgreementResponse',
-- describeAgreementResponse_httpStatus - The response's http
-- status code.
--
-- $sel:agreement:DescribeAgreementResponse',
-- describeAgreementResponse_agreement - The details for the
-- specified agreement, returned as a DescribedAgreement object.
newDescribeAgreementResponse :: Int -> DescribedAgreement -> DescribeAgreementResponse
-- | See: newDescribeCertificate smart constructor.
data DescribeCertificate
DescribeCertificate' :: Text -> DescribeCertificate
-- | Create a value of DescribeCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeCertificate, describeCertificate_certificateId -
-- An array of identifiers for the imported certificates. You use this
-- identifier for working with profiles and partner profiles.
newDescribeCertificate :: Text -> DescribeCertificate
-- | See: newDescribeCertificateResponse smart constructor.
data DescribeCertificateResponse
DescribeCertificateResponse' :: Int -> DescribedCertificate -> DescribeCertificateResponse
-- | Create a value of DescribeCertificateResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeCertificateResponse',
-- describeCertificateResponse_httpStatus - The response's http
-- status code.
--
-- DescribeCertificateResponse,
-- describeCertificateResponse_certificate - The details for the
-- specified certificate, returned as an object.
newDescribeCertificateResponse :: Int -> DescribedCertificate -> DescribeCertificateResponse
-- | See: newDescribeConnector smart constructor.
data DescribeConnector
DescribeConnector' :: Text -> DescribeConnector
-- | Create a value of DescribeConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeConnector, describeConnector_connectorId - The
-- unique identifier for the connector.
newDescribeConnector :: Text -> DescribeConnector
-- | See: newDescribeConnectorResponse smart constructor.
data DescribeConnectorResponse
DescribeConnectorResponse' :: Int -> DescribedConnector -> DescribeConnectorResponse
-- | Create a value of DescribeConnectorResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeConnectorResponse',
-- describeConnectorResponse_httpStatus - The response's http
-- status code.
--
-- $sel:connector:DescribeConnectorResponse',
-- describeConnectorResponse_connector - The structure that
-- contains the details of the connector.
newDescribeConnectorResponse :: Int -> DescribedConnector -> DescribeConnectorResponse
-- | See: newDescribeExecution smart constructor.
data DescribeExecution
DescribeExecution' :: Text -> Text -> DescribeExecution
-- | Create a value of DescribeExecution with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeExecution, describeExecution_executionId - A
-- unique identifier for the execution of a workflow.
--
-- DescribeExecution, describeExecution_workflowId - A
-- unique identifier for the workflow.
newDescribeExecution :: Text -> Text -> DescribeExecution
-- | See: newDescribeExecutionResponse smart constructor.
data DescribeExecutionResponse
DescribeExecutionResponse' :: Int -> Text -> DescribedExecution -> DescribeExecutionResponse
-- | Create a value of DescribeExecutionResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeExecutionResponse',
-- describeExecutionResponse_httpStatus - The response's http
-- status code.
--
-- DescribeExecution, describeExecutionResponse_workflowId
-- - A unique identifier for the workflow.
--
-- $sel:execution:DescribeExecutionResponse',
-- describeExecutionResponse_execution - The structure that
-- contains the details of the workflow' execution.
newDescribeExecutionResponse :: Int -> Text -> DescribedExecution -> DescribeExecutionResponse
-- | See: newDescribeHostKey smart constructor.
data DescribeHostKey
DescribeHostKey' :: Text -> Text -> DescribeHostKey
-- | Create a value of DescribeHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeHostKey, describeHostKey_serverId - The
-- identifier of the server that contains the host key that you want
-- described.
--
-- DescribeHostKey, describeHostKey_hostKeyId - The
-- identifier of the host key that you want described.
newDescribeHostKey :: Text -> Text -> DescribeHostKey
-- | See: newDescribeHostKeyResponse smart constructor.
data DescribeHostKeyResponse
DescribeHostKeyResponse' :: Int -> DescribedHostKey -> DescribeHostKeyResponse
-- | Create a value of DescribeHostKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeHostKeyResponse',
-- describeHostKeyResponse_httpStatus - The response's http status
-- code.
--
-- $sel:hostKey:DescribeHostKeyResponse',
-- describeHostKeyResponse_hostKey - Returns the details for the
-- specified host key.
newDescribeHostKeyResponse :: Int -> DescribedHostKey -> DescribeHostKeyResponse
-- | See: newDescribeProfile smart constructor.
data DescribeProfile
DescribeProfile' :: Text -> DescribeProfile
-- | Create a value of DescribeProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeProfile, describeProfile_profileId - The
-- identifier of the profile that you want described.
newDescribeProfile :: Text -> DescribeProfile
-- | See: newDescribeProfileResponse smart constructor.
data DescribeProfileResponse
DescribeProfileResponse' :: Int -> DescribedProfile -> DescribeProfileResponse
-- | Create a value of DescribeProfileResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeProfileResponse',
-- describeProfileResponse_httpStatus - The response's http status
-- code.
--
-- $sel:profile:DescribeProfileResponse',
-- describeProfileResponse_profile - The details of the specified
-- profile, returned as an object.
newDescribeProfileResponse :: Int -> DescribedProfile -> DescribeProfileResponse
-- | See: newDescribeSecurityPolicy smart constructor.
data DescribeSecurityPolicy
DescribeSecurityPolicy' :: Text -> DescribeSecurityPolicy
-- | Create a value of DescribeSecurityPolicy with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeSecurityPolicy,
-- describeSecurityPolicy_securityPolicyName - Specifies the name
-- of the security policy that is attached to the server.
newDescribeSecurityPolicy :: Text -> DescribeSecurityPolicy
-- | See: newDescribeSecurityPolicyResponse smart
-- constructor.
data DescribeSecurityPolicyResponse
DescribeSecurityPolicyResponse' :: Int -> DescribedSecurityPolicy -> DescribeSecurityPolicyResponse
-- | Create a value of DescribeSecurityPolicyResponse with all
-- optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeSecurityPolicyResponse',
-- describeSecurityPolicyResponse_httpStatus - The response's http
-- status code.
--
-- $sel:securityPolicy:DescribeSecurityPolicyResponse',
-- describeSecurityPolicyResponse_securityPolicy - An array
-- containing the properties of the security policy.
newDescribeSecurityPolicyResponse :: Int -> DescribedSecurityPolicy -> DescribeSecurityPolicyResponse
-- | See: newDescribeServer smart constructor.
data DescribeServer
DescribeServer' :: Text -> DescribeServer
-- | Create a value of DescribeServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeServer, describeServer_serverId - A
-- system-assigned unique identifier for a server.
newDescribeServer :: Text -> DescribeServer
-- | See: newDescribeServerResponse smart constructor.
data DescribeServerResponse
DescribeServerResponse' :: Int -> DescribedServer -> DescribeServerResponse
-- | Create a value of DescribeServerResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeServerResponse',
-- describeServerResponse_httpStatus - The response's http status
-- code.
--
-- $sel:server:DescribeServerResponse',
-- describeServerResponse_server - An array containing the
-- properties of a server with the ServerID you specified.
newDescribeServerResponse :: Int -> DescribedServer -> DescribeServerResponse
-- | See: newDescribeUser smart constructor.
data DescribeUser
DescribeUser' :: Text -> Text -> DescribeUser
-- | Create a value of DescribeUser with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeUser, describeUser_serverId - A system-assigned
-- unique identifier for a server that has this user assigned.
--
-- DescribeUser, describeUser_userName - The name of the
-- user assigned to one or more servers. User names are part of the
-- sign-in credentials to use the Transfer Family service and perform
-- file transfer tasks.
newDescribeUser :: Text -> Text -> DescribeUser
-- | See: newDescribeUserResponse smart constructor.
data DescribeUserResponse
DescribeUserResponse' :: Int -> Text -> DescribedUser -> DescribeUserResponse
-- | Create a value of DescribeUserResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeUserResponse',
-- describeUserResponse_httpStatus - The response's http status
-- code.
--
-- DescribeUser, describeUserResponse_serverId - A
-- system-assigned unique identifier for a server that has this user
-- assigned.
--
-- $sel:user:DescribeUserResponse',
-- describeUserResponse_user - An array containing the properties
-- of the user account for the ServerID value that you
-- specified.
newDescribeUserResponse :: Int -> Text -> DescribedUser -> DescribeUserResponse
-- | See: newDescribeWorkflow smart constructor.
data DescribeWorkflow
DescribeWorkflow' :: Text -> DescribeWorkflow
-- | Create a value of DescribeWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- DescribeWorkflow, describeWorkflow_workflowId - A unique
-- identifier for the workflow.
newDescribeWorkflow :: Text -> DescribeWorkflow
-- | See: newDescribeWorkflowResponse smart constructor.
data DescribeWorkflowResponse
DescribeWorkflowResponse' :: Int -> DescribedWorkflow -> DescribeWorkflowResponse
-- | Create a value of DescribeWorkflowResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:DescribeWorkflowResponse',
-- describeWorkflowResponse_httpStatus - The response's http
-- status code.
--
-- $sel:workflow:DescribeWorkflowResponse',
-- describeWorkflowResponse_workflow - The structure that contains
-- the details of the workflow.
newDescribeWorkflowResponse :: Int -> DescribedWorkflow -> DescribeWorkflowResponse
-- | See: newImportCertificate smart constructor.
data ImportCertificate
ImportCertificate' :: Maybe POSIX -> Maybe (Sensitive Text) -> Maybe Text -> Maybe POSIX -> Maybe (Sensitive Text) -> Maybe (NonEmpty Tag) -> CertificateUsageType -> Sensitive Text -> ImportCertificate
-- | Create a value of ImportCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ImportCertificate, importCertificate_activeDate - An
-- optional date that specifies when the certificate becomes active.
--
-- ImportCertificate, importCertificate_certificateChain -
-- An optional list of certificates that make up the chain for the
-- certificate that's being imported.
--
-- ImportCertificate, importCertificate_description - A
-- short description that helps identify the certificate.
--
-- ImportCertificate, importCertificate_inactiveDate - An
-- optional date that specifies when the certificate becomes inactive.
--
-- $sel:privateKey:ImportCertificate',
-- importCertificate_privateKey - The file that contains the
-- private key for the certificate that's being imported.
--
-- ImportCertificate, importCertificate_tags - Key-value
-- pairs that can be used to group and search for certificates.
--
-- ImportCertificate, importCertificate_usage - Specifies
-- whether this certificate is used for signing or encryption.
--
-- ImportCertificate, importCertificate_certificate - The
-- file that contains the certificate to import.
newImportCertificate :: CertificateUsageType -> Text -> ImportCertificate
-- | See: newImportCertificateResponse smart constructor.
data ImportCertificateResponse
ImportCertificateResponse' :: Int -> Text -> ImportCertificateResponse
-- | Create a value of ImportCertificateResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:ImportCertificateResponse',
-- importCertificateResponse_httpStatus - The response's http
-- status code.
--
-- ImportCertificateResponse,
-- importCertificateResponse_certificateId - An array of
-- identifiers for the imported certificates. You use this identifier for
-- working with profiles and partner profiles.
newImportCertificateResponse :: Int -> Text -> ImportCertificateResponse
-- | See: newImportHostKey smart constructor.
data ImportHostKey
ImportHostKey' :: Maybe Text -> Maybe (NonEmpty Tag) -> Text -> Sensitive Text -> ImportHostKey
-- | Create a value of ImportHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ImportHostKey, importHostKey_description - The text
-- description that identifies this host key.
--
-- ImportHostKey, importHostKey_tags - Key-value pairs that
-- can be used to group and search for host keys.
--
-- ImportHostKey, importHostKey_serverId - The identifier
-- of the server that contains the host key that you are importing.
--
-- $sel:hostKeyBody:ImportHostKey',
-- importHostKey_hostKeyBody - The public key portion of an SSH
-- key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
newImportHostKey :: Text -> Text -> ImportHostKey
-- | See: newImportHostKeyResponse smart constructor.
data ImportHostKeyResponse
ImportHostKeyResponse' :: Int -> Text -> Text -> ImportHostKeyResponse
-- | Create a value of ImportHostKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:ImportHostKeyResponse',
-- importHostKeyResponse_httpStatus - The response's http status
-- code.
--
-- ImportHostKey, importHostKeyResponse_serverId - Returns
-- the server identifier that contains the imported key.
--
-- ImportHostKeyResponse, importHostKeyResponse_hostKeyId -
-- Returns the host key identifier for the imported key.
newImportHostKeyResponse :: Int -> Text -> Text -> ImportHostKeyResponse
-- | See: newImportSshPublicKey smart constructor.
data ImportSshPublicKey
ImportSshPublicKey' :: Text -> Text -> Text -> ImportSshPublicKey
-- | Create a value of ImportSshPublicKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ImportSshPublicKey, importSshPublicKey_serverId - A
-- system-assigned unique identifier for a server.
--
-- ImportSshPublicKey, importSshPublicKey_sshPublicKeyBody
-- - The public key portion of an SSH key pair.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
--
-- ImportSshPublicKey, importSshPublicKey_userName - The
-- name of the user account that is assigned to one or more servers.
newImportSshPublicKey :: Text -> Text -> Text -> ImportSshPublicKey
-- | Identifies the user, the server they belong to, and the identifier of
-- the SSH public key associated with that user. A user can have more
-- than one key on each server that they are associated with.
--
-- See: newImportSshPublicKeyResponse smart constructor.
data ImportSshPublicKeyResponse
ImportSshPublicKeyResponse' :: Int -> Text -> Text -> Text -> ImportSshPublicKeyResponse
-- | Create a value of ImportSshPublicKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:ImportSshPublicKeyResponse',
-- importSshPublicKeyResponse_httpStatus - The response's http
-- status code.
--
-- ImportSshPublicKey, importSshPublicKeyResponse_serverId
-- - A system-assigned unique identifier for a server.
--
-- ImportSshPublicKeyResponse,
-- importSshPublicKeyResponse_sshPublicKeyId - The name given to a
-- public key by the system that was imported.
--
-- ImportSshPublicKey, importSshPublicKeyResponse_userName
-- - A user name assigned to the ServerID value that you
-- specified.
newImportSshPublicKeyResponse :: Int -> Text -> Text -> Text -> ImportSshPublicKeyResponse
-- | See: newListAccesses smart constructor.
data ListAccesses
ListAccesses' :: Maybe Natural -> Maybe Text -> Text -> ListAccesses
-- | Create a value of ListAccesses with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListAccesses', listAccesses_maxResults -
-- Specifies the maximum number of access SIDs to return.
--
-- ListAccesses, listAccesses_nextToken - When you can get
-- additional results from the ListAccesses call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional accesses.
--
-- ListAccesses, listAccesses_serverId - A system-assigned
-- unique identifier for a server that has users assigned to it.
newListAccesses :: Text -> ListAccesses
-- | See: newListAccessesResponse smart constructor.
data ListAccessesResponse
ListAccessesResponse' :: Maybe Text -> Int -> Text -> [ListedAccess] -> ListAccessesResponse
-- | Create a value of ListAccessesResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListAccesses, listAccessesResponse_nextToken - When you
-- can get additional results from the ListAccesses call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional accesses.
--
-- $sel:httpStatus:ListAccessesResponse',
-- listAccessesResponse_httpStatus - The response's http status
-- code.
--
-- ListAccesses, listAccessesResponse_serverId - A
-- system-assigned unique identifier for a server that has users assigned
-- to it.
--
-- $sel:accesses:ListAccessesResponse',
-- listAccessesResponse_accesses - Returns the accesses and their
-- properties for the ServerId value that you specify.
newListAccessesResponse :: Int -> Text -> ListAccessesResponse
-- | See: newListAgreements smart constructor.
data ListAgreements
ListAgreements' :: Maybe Natural -> Maybe Text -> Text -> ListAgreements
-- | Create a value of ListAgreements with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListAgreements',
-- listAgreements_maxResults - The maximum number of agreements to
-- return.
--
-- ListAgreements, listAgreements_nextToken - When you can
-- get additional results from the ListAgreements call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional agreements.
--
-- ListAgreements, listAgreements_serverId - The identifier
-- of the server for which you want a list of agreements.
newListAgreements :: Text -> ListAgreements
-- | See: newListAgreementsResponse smart constructor.
data ListAgreementsResponse
ListAgreementsResponse' :: Maybe Text -> Int -> [ListedAgreement] -> ListAgreementsResponse
-- | Create a value of ListAgreementsResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListAgreements, listAgreementsResponse_nextToken -
-- Returns a token that you can use to call ListAgreements again
-- and receive additional results, if there are any.
--
-- $sel:httpStatus:ListAgreementsResponse',
-- listAgreementsResponse_httpStatus - The response's http status
-- code.
--
-- $sel:agreements:ListAgreementsResponse',
-- listAgreementsResponse_agreements - Returns an array, where
-- each item contains the details of an agreement.
newListAgreementsResponse :: Int -> ListAgreementsResponse
-- | See: newListCertificates smart constructor.
data ListCertificates
ListCertificates' :: Maybe Natural -> Maybe Text -> ListCertificates
-- | Create a value of ListCertificates with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListCertificates',
-- listCertificates_maxResults - The maximum number of
-- certificates to return.
--
-- ListCertificates, listCertificates_nextToken - When you
-- can get additional results from the ListCertificates call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional certificates.
newListCertificates :: ListCertificates
-- | See: newListCertificatesResponse smart constructor.
data ListCertificatesResponse
ListCertificatesResponse' :: Maybe Text -> Int -> [ListedCertificate] -> ListCertificatesResponse
-- | Create a value of ListCertificatesResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListCertificates, listCertificatesResponse_nextToken -
-- Returns the next token, which you can use to list the next
-- certificate.
--
-- $sel:httpStatus:ListCertificatesResponse',
-- listCertificatesResponse_httpStatus - The response's http
-- status code.
--
-- $sel:certificates:ListCertificatesResponse',
-- listCertificatesResponse_certificates - Returns an array of the
-- certificates that are specified in the ListCertificates call.
newListCertificatesResponse :: Int -> ListCertificatesResponse
-- | See: newListConnectors smart constructor.
data ListConnectors
ListConnectors' :: Maybe Natural -> Maybe Text -> ListConnectors
-- | Create a value of ListConnectors with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListConnectors',
-- listConnectors_maxResults - The maximum number of connectors to
-- return.
--
-- ListConnectors, listConnectors_nextToken - When you can
-- get additional results from the ListConnectors call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional connectors.
newListConnectors :: ListConnectors
-- | See: newListConnectorsResponse smart constructor.
data ListConnectorsResponse
ListConnectorsResponse' :: Maybe Text -> Int -> [ListedConnector] -> ListConnectorsResponse
-- | Create a value of ListConnectorsResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListConnectors, listConnectorsResponse_nextToken -
-- Returns a token that you can use to call ListConnectors again
-- and receive additional results, if there are any.
--
-- $sel:httpStatus:ListConnectorsResponse',
-- listConnectorsResponse_httpStatus - The response's http status
-- code.
--
-- $sel:connectors:ListConnectorsResponse',
-- listConnectorsResponse_connectors - Returns an array, where
-- each item contains the details of a connector.
newListConnectorsResponse :: Int -> ListConnectorsResponse
-- | See: newListExecutions smart constructor.
data ListExecutions
ListExecutions' :: Maybe Natural -> Maybe Text -> Text -> ListExecutions
-- | Create a value of ListExecutions with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListExecutions',
-- listExecutions_maxResults - Specifies the maximum number of
-- executions to return.
--
-- ListExecutions, listExecutions_nextToken -
-- ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
--
-- This is useful for pagination, for instance. If you have 100
-- executions for a workflow, you might only want to list first 10. If
-- so, call the API by specifying the max-results:
--
--
-- aws transfer list-executions --max-results 10
--
--
-- This returns details for the first 10 executions, as well as the
-- pointer (NextToken) to the eleventh execution. You can now
-- call the API again, supplying the NextToken value you
-- received:
--
--
-- aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult
--
--
-- This call returns the next 10 executions, the 11th through the 20th.
-- You can then repeat the call until the details for all 100 executions
-- have been returned.
--
-- ListExecutions, listExecutions_workflowId - A unique
-- identifier for the workflow.
newListExecutions :: Text -> ListExecutions
-- | See: newListExecutionsResponse smart constructor.
data ListExecutionsResponse
ListExecutionsResponse' :: Maybe Text -> Int -> Text -> [ListedExecution] -> ListExecutionsResponse
-- | Create a value of ListExecutionsResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListExecutions, listExecutionsResponse_nextToken -
-- ListExecutions returns the NextToken parameter in
-- the output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional executions.
--
-- $sel:httpStatus:ListExecutionsResponse',
-- listExecutionsResponse_httpStatus - The response's http status
-- code.
--
-- ListExecutions, listExecutionsResponse_workflowId - A
-- unique identifier for the workflow.
--
-- $sel:executions:ListExecutionsResponse',
-- listExecutionsResponse_executions - Returns the details for
-- each execution.
--
--
-- - NextToken: returned from a call to several APIs, you can
-- use pass it to a subsequent command to continue listing additional
-- executions.
-- - StartTime: timestamp indicating when the execution
-- began.
-- - Executions: details of the execution, including the
-- execution ID, initial file location, and Service metadata.
-- - Status: one of the following values: IN_PROGRESS,
-- COMPLETED, EXCEPTION,
-- HANDLING_EXEPTION.
--
newListExecutionsResponse :: Int -> Text -> ListExecutionsResponse
-- | See: newListHostKeys smart constructor.
data ListHostKeys
ListHostKeys' :: Maybe Natural -> Maybe Text -> Text -> ListHostKeys
-- | Create a value of ListHostKeys with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListHostKeys', listHostKeys_maxResults -
-- The maximum number of host keys to return.
--
-- ListHostKeys, listHostKeys_nextToken - When there are
-- additional results that were not returned, a NextToken
-- parameter is returned. You can use that value for a subsequent call to
-- ListHostKeys to continue listing results.
--
-- ListHostKeys, listHostKeys_serverId - The identifier of
-- the server that contains the host keys that you want to view.
newListHostKeys :: Text -> ListHostKeys
-- | See: newListHostKeysResponse smart constructor.
data ListHostKeysResponse
ListHostKeysResponse' :: Maybe Text -> Int -> Text -> [ListedHostKey] -> ListHostKeysResponse
-- | Create a value of ListHostKeysResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListHostKeys, listHostKeysResponse_nextToken - Returns a
-- token that you can use to call ListHostKeys again and receive
-- additional results, if there are any.
--
-- $sel:httpStatus:ListHostKeysResponse',
-- listHostKeysResponse_httpStatus - The response's http status
-- code.
--
-- ListHostKeys, listHostKeysResponse_serverId - Returns
-- the server identifier that contains the listed host keys.
--
-- $sel:hostKeys:ListHostKeysResponse',
-- listHostKeysResponse_hostKeys - Returns an array, where each
-- item contains the details of a host key.
newListHostKeysResponse :: Int -> Text -> ListHostKeysResponse
-- | See: newListProfiles smart constructor.
data ListProfiles
ListProfiles' :: Maybe Natural -> Maybe Text -> Maybe ProfileType -> ListProfiles
-- | Create a value of ListProfiles with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListProfiles', listProfiles_maxResults -
-- The maximum number of profiles to return.
--
-- ListProfiles, listProfiles_nextToken - When there are
-- additional results that were not returned, a NextToken
-- parameter is returned. You can use that value for a subsequent call to
-- ListProfiles to continue listing results.
--
-- ListProfiles, listProfiles_profileType - Indicates
-- whether to list only LOCAL type profiles or only
-- PARTNER type profiles. If not supplied in the request, the
-- command lists all types of profiles.
newListProfiles :: ListProfiles
-- | See: newListProfilesResponse smart constructor.
data ListProfilesResponse
ListProfilesResponse' :: Maybe Text -> Int -> [ListedProfile] -> ListProfilesResponse
-- | Create a value of ListProfilesResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListProfiles, listProfilesResponse_nextToken - Returns a
-- token that you can use to call ListProfiles again and receive
-- additional results, if there are any.
--
-- $sel:httpStatus:ListProfilesResponse',
-- listProfilesResponse_httpStatus - The response's http status
-- code.
--
-- $sel:profiles:ListProfilesResponse',
-- listProfilesResponse_profiles - Returns an array, where each
-- item contains the details of a profile.
newListProfilesResponse :: Int -> ListProfilesResponse
-- | See: newListSecurityPolicies smart constructor.
data ListSecurityPolicies
ListSecurityPolicies' :: Maybe Natural -> Maybe Text -> ListSecurityPolicies
-- | Create a value of ListSecurityPolicies with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListSecurityPolicies',
-- listSecurityPolicies_maxResults - Specifies the number of
-- security policies to return as a response to the
-- ListSecurityPolicies query.
--
-- ListSecurityPolicies, listSecurityPolicies_nextToken -
-- When additional results are obtained from the
-- ListSecurityPolicies command, a NextToken parameter
-- is returned in the output. You can then pass the NextToken
-- parameter in a subsequent command to continue listing additional
-- security policies.
newListSecurityPolicies :: ListSecurityPolicies
-- | See: newListSecurityPoliciesResponse smart constructor.
data ListSecurityPoliciesResponse
ListSecurityPoliciesResponse' :: Maybe Text -> Int -> [Text] -> ListSecurityPoliciesResponse
-- | Create a value of ListSecurityPoliciesResponse with all
-- optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListSecurityPolicies,
-- listSecurityPoliciesResponse_nextToken - When you can get
-- additional results from the ListSecurityPolicies operation, a
-- NextToken parameter is returned in the output. In a following
-- command, you can pass in the NextToken parameter to continue
-- listing security policies.
--
-- $sel:httpStatus:ListSecurityPoliciesResponse',
-- listSecurityPoliciesResponse_httpStatus - The response's http
-- status code.
--
-- $sel:securityPolicyNames:ListSecurityPoliciesResponse',
-- listSecurityPoliciesResponse_securityPolicyNames - An array of
-- security policies that were listed.
newListSecurityPoliciesResponse :: Int -> ListSecurityPoliciesResponse
-- | See: newListServers smart constructor.
data ListServers
ListServers' :: Maybe Natural -> Maybe Text -> ListServers
-- | Create a value of ListServers with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListServers', listServers_maxResults -
-- Specifies the number of servers to return as a response to the
-- ListServers query.
--
-- ListServers, listServers_nextToken - When additional
-- results are obtained from the ListServers command, a
-- NextToken parameter is returned in the output. You can then
-- pass the NextToken parameter in a subsequent command to
-- continue listing additional servers.
newListServers :: ListServers
-- | See: newListServersResponse smart constructor.
data ListServersResponse
ListServersResponse' :: Maybe Text -> Int -> [ListedServer] -> ListServersResponse
-- | Create a value of ListServersResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListServers, listServersResponse_nextToken - When you
-- can get additional results from the ListServers operation, a
-- NextToken parameter is returned in the output. In a following
-- command, you can pass in the NextToken parameter to continue
-- listing additional servers.
--
-- $sel:httpStatus:ListServersResponse',
-- listServersResponse_httpStatus - The response's http status
-- code.
--
-- $sel:servers:ListServersResponse',
-- listServersResponse_servers - An array of servers that were
-- listed.
newListServersResponse :: Int -> ListServersResponse
-- | See: newListTagsForResource smart constructor.
data ListTagsForResource
ListTagsForResource' :: Maybe Natural -> Maybe Text -> Text -> ListTagsForResource
-- | Create a value of ListTagsForResource with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListTagsForResource',
-- listTagsForResource_maxResults - Specifies the number of tags
-- to return as a response to the ListTagsForResource request.
--
-- ListTagsForResource, listTagsForResource_nextToken -
-- When you request additional results from the
-- ListTagsForResource operation, a NextToken parameter
-- is returned in the input. You can then pass in a subsequent command to
-- the NextToken parameter to continue listing additional tags.
--
-- ListTagsForResource, listTagsForResource_arn - Requests
-- the tags associated with a particular Amazon Resource Name (ARN). An
-- ARN is an identifier for a specific Amazon Web Services resource, such
-- as a server, user, or role.
newListTagsForResource :: Text -> ListTagsForResource
-- | See: newListTagsForResourceResponse smart constructor.
data ListTagsForResourceResponse
ListTagsForResourceResponse' :: Maybe Text -> Maybe Text -> Maybe (NonEmpty Tag) -> Int -> ListTagsForResourceResponse
-- | Create a value of ListTagsForResourceResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListTagsForResource, listTagsForResourceResponse_arn -
-- The ARN you specified to list the tags of.
--
-- ListTagsForResource,
-- listTagsForResourceResponse_nextToken - When you can get
-- additional results from the ListTagsForResource call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional tags.
--
-- ListTagsForResourceResponse,
-- listTagsForResourceResponse_tags - Key-value pairs that are
-- assigned to a resource, usually for the purpose of grouping and
-- searching for items. Tags are metadata that you define.
--
-- $sel:httpStatus:ListTagsForResourceResponse',
-- listTagsForResourceResponse_httpStatus - The response's http
-- status code.
newListTagsForResourceResponse :: Int -> ListTagsForResourceResponse
-- | See: newListUsers smart constructor.
data ListUsers
ListUsers' :: Maybe Natural -> Maybe Text -> Text -> ListUsers
-- | Create a value of ListUsers with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListUsers', listUsers_maxResults -
-- Specifies the number of users to return as a response to the
-- ListUsers request.
--
-- ListUsers, listUsers_nextToken - When you can get
-- additional results from the ListUsers call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
--
-- ListUsers, listUsers_serverId - A system-assigned unique
-- identifier for a server that has users assigned to it.
newListUsers :: Text -> ListUsers
-- | See: newListUsersResponse smart constructor.
data ListUsersResponse
ListUsersResponse' :: Maybe Text -> Int -> Text -> [ListedUser] -> ListUsersResponse
-- | Create a value of ListUsersResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListUsers, listUsersResponse_nextToken - When you can
-- get additional results from the ListUsers call, a
-- NextToken parameter is returned in the output. You can then
-- pass in a subsequent command to the NextToken parameter to
-- continue listing additional users.
--
-- $sel:httpStatus:ListUsersResponse',
-- listUsersResponse_httpStatus - The response's http status code.
--
-- ListUsers, listUsersResponse_serverId - A
-- system-assigned unique identifier for a server that the users are
-- assigned to.
--
-- $sel:users:ListUsersResponse', listUsersResponse_users -
-- Returns the user accounts and their properties for the
-- ServerId value that you specify.
newListUsersResponse :: Int -> Text -> ListUsersResponse
-- | See: newListWorkflows smart constructor.
data ListWorkflows
ListWorkflows' :: Maybe Natural -> Maybe Text -> ListWorkflows
-- | Create a value of ListWorkflows with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:maxResults:ListWorkflows', listWorkflows_maxResults
-- - Specifies the maximum number of workflows to return.
--
-- ListWorkflows, listWorkflows_nextToken -
-- ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
newListWorkflows :: ListWorkflows
-- | See: newListWorkflowsResponse smart constructor.
data ListWorkflowsResponse
ListWorkflowsResponse' :: Maybe Text -> Int -> [ListedWorkflow] -> ListWorkflowsResponse
-- | Create a value of ListWorkflowsResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- ListWorkflows, listWorkflowsResponse_nextToken -
-- ListWorkflows returns the NextToken parameter in the
-- output. You can then pass the NextToken parameter in a
-- subsequent command to continue listing additional workflows.
--
-- $sel:httpStatus:ListWorkflowsResponse',
-- listWorkflowsResponse_httpStatus - The response's http status
-- code.
--
-- $sel:workflows:ListWorkflowsResponse',
-- listWorkflowsResponse_workflows - Returns the Arn,
-- WorkflowId, and Description for each workflow.
newListWorkflowsResponse :: Int -> ListWorkflowsResponse
-- | See: newSendWorkflowStepState smart constructor.
data SendWorkflowStepState
SendWorkflowStepState' :: Text -> Text -> Text -> CustomStepStatus -> SendWorkflowStepState
-- | Create a value of SendWorkflowStepState with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- SendWorkflowStepState, sendWorkflowStepState_workflowId
-- - A unique identifier for the workflow.
--
-- SendWorkflowStepState, sendWorkflowStepState_executionId
-- - A unique identifier for the execution of a workflow.
--
-- $sel:token:SendWorkflowStepState',
-- sendWorkflowStepState_token - Used to distinguish between
-- multiple callbacks for multiple Lambda steps within the same
-- execution.
--
-- SendWorkflowStepState, sendWorkflowStepState_status -
-- Indicates whether the specified step succeeded or failed.
newSendWorkflowStepState :: Text -> Text -> Text -> CustomStepStatus -> SendWorkflowStepState
-- | See: newSendWorkflowStepStateResponse smart constructor.
data SendWorkflowStepStateResponse
SendWorkflowStepStateResponse' :: Int -> SendWorkflowStepStateResponse
-- | Create a value of SendWorkflowStepStateResponse with all
-- optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:SendWorkflowStepStateResponse',
-- sendWorkflowStepStateResponse_httpStatus - The response's http
-- status code.
newSendWorkflowStepStateResponse :: Int -> SendWorkflowStepStateResponse
-- | See: newStartFileTransfer smart constructor.
data StartFileTransfer
StartFileTransfer' :: Text -> NonEmpty Text -> StartFileTransfer
-- | Create a value of StartFileTransfer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- StartFileTransfer, startFileTransfer_connectorId - The
-- unique identifier for the connector.
--
-- $sel:sendFilePaths:StartFileTransfer',
-- startFileTransfer_sendFilePaths - An array of strings. Each
-- string represents the absolute path for one outbound file transfer.
-- For example,
-- DOC-EXAMPLE-BUCKET/myfile.txt
-- .
newStartFileTransfer :: Text -> NonEmpty Text -> StartFileTransfer
-- | See: newStartFileTransferResponse smart constructor.
data StartFileTransferResponse
StartFileTransferResponse' :: Int -> Text -> StartFileTransferResponse
-- | Create a value of StartFileTransferResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:StartFileTransferResponse',
-- startFileTransferResponse_httpStatus - The response's http
-- status code.
--
-- $sel:transferId:StartFileTransferResponse',
-- startFileTransferResponse_transferId - Returns the unique
-- identifier for this file transfer.
newStartFileTransferResponse :: Int -> Text -> StartFileTransferResponse
-- | See: newStartServer smart constructor.
data StartServer
StartServer' :: Text -> StartServer
-- | Create a value of StartServer with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- StartServer, startServer_serverId - A system-assigned
-- unique identifier for a server that you start.
newStartServer :: Text -> StartServer
-- | See: newStartServerResponse smart constructor.
data StartServerResponse
StartServerResponse' :: StartServerResponse
-- | Create a value of StartServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newStartServerResponse :: StartServerResponse
-- | See: newStopServer smart constructor.
data StopServer
StopServer' :: Text -> StopServer
-- | Create a value of StopServer with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- StopServer, stopServer_serverId - A system-assigned
-- unique identifier for a server that you stopped.
newStopServer :: Text -> StopServer
-- | See: newStopServerResponse smart constructor.
data StopServerResponse
StopServerResponse' :: StopServerResponse
-- | Create a value of StopServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newStopServerResponse :: StopServerResponse
-- | See: newTagResource smart constructor.
data TagResource
TagResource' :: Text -> NonEmpty Tag -> TagResource
-- | Create a value of TagResource with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- TagResource, tagResource_arn - An Amazon Resource Name
-- (ARN) for a specific Amazon Web Services resource, such as a server,
-- user, or role.
--
-- TagResource, tagResource_tags - Key-value pairs assigned
-- to ARNs that you can use to group and search for resources by type.
-- You can attach this metadata to user accounts for any purpose.
newTagResource :: Text -> NonEmpty Tag -> TagResource
-- | See: newTagResourceResponse smart constructor.
data TagResourceResponse
TagResourceResponse' :: TagResourceResponse
-- | Create a value of TagResourceResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newTagResourceResponse :: TagResourceResponse
-- | See: newTestIdentityProvider smart constructor.
data TestIdentityProvider
TestIdentityProvider' :: Maybe Protocol -> Maybe Text -> Maybe (Sensitive Text) -> Text -> Text -> TestIdentityProvider
-- | Create a value of TestIdentityProvider with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:serverProtocol:TestIdentityProvider',
-- testIdentityProvider_serverProtocol - The type of file transfer
-- protocol to be tested.
--
-- The available protocols are:
--
--
-- - Secure Shell (SSH) File Transfer Protocol (SFTP)
-- - File Transfer Protocol Secure (FTPS)
-- - File Transfer Protocol (FTP)
--
--
-- $sel:sourceIp:TestIdentityProvider',
-- testIdentityProvider_sourceIp - The source IP address of the
-- user account to be tested.
--
-- $sel:userPassword:TestIdentityProvider',
-- testIdentityProvider_userPassword - The password of the user
-- account to be tested.
--
-- TestIdentityProvider, testIdentityProvider_serverId - A
-- system-assigned identifier for a specific server. That server's user
-- authentication method is tested with a user name and password.
--
-- TestIdentityProvider, testIdentityProvider_userName -
-- The name of the user account to be tested.
newTestIdentityProvider :: Text -> Text -> TestIdentityProvider
-- | See: newTestIdentityProviderResponse smart constructor.
data TestIdentityProviderResponse
TestIdentityProviderResponse' :: Maybe Text -> Maybe Text -> Int -> Int -> Text -> TestIdentityProviderResponse
-- | Create a value of TestIdentityProviderResponse with all
-- optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- TestIdentityProviderResponse,
-- testIdentityProviderResponse_message - A message that indicates
-- whether the test was successful or not.
--
-- If an empty string is returned, the most likely cause is that the
-- authentication failed due to an incorrect username or password.
--
-- $sel:response:TestIdentityProviderResponse',
-- testIdentityProviderResponse_response - The response that is
-- returned from your API Gateway.
--
-- $sel:httpStatus:TestIdentityProviderResponse',
-- testIdentityProviderResponse_httpStatus - The response's http
-- status code.
--
-- $sel:statusCode:TestIdentityProviderResponse',
-- testIdentityProviderResponse_statusCode - The HTTP status code
-- that is the response from your API Gateway.
--
-- TestIdentityProviderResponse,
-- testIdentityProviderResponse_url - The endpoint of the service
-- used to authenticate a user.
newTestIdentityProviderResponse :: Int -> Int -> Text -> TestIdentityProviderResponse
-- | See: newUntagResource smart constructor.
data UntagResource
UntagResource' :: Text -> NonEmpty Text -> UntagResource
-- | Create a value of UntagResource with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UntagResource, untagResource_arn - The value of the
-- resource that will have the tag removed. An Amazon Resource Name (ARN)
-- is an identifier for a specific Amazon Web Services resource, such as
-- a server, user, or role.
--
-- $sel:tagKeys:UntagResource', untagResource_tagKeys -
-- TagKeys are key-value pairs assigned to ARNs that can be used to group
-- and search for resources by type. This metadata can be attached to
-- resources for any purpose.
newUntagResource :: Text -> NonEmpty Text -> UntagResource
-- | See: newUntagResourceResponse smart constructor.
data UntagResourceResponse
UntagResourceResponse' :: UntagResourceResponse
-- | Create a value of UntagResourceResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
newUntagResourceResponse :: UntagResourceResponse
-- | See: newUpdateAccess smart constructor.
data UpdateAccess
UpdateAccess' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Text -> Text -> UpdateAccess
-- | Create a value of UpdateAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateAccess, updateAccess_homeDirectory - The landing
-- directory (folder) for a user when they log in to the server using the
-- client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- UpdateAccess, updateAccess_homeDirectoryMappings -
-- Logical directory mappings that specify what Amazon S3 or Amazon EFS
-- paths and keys should be visible to your user and how you want to make
-- them visible. You must specify the Entry and Target
-- pair, where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to
-- / and set Target to the HomeDirectory
-- parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- UpdateAccess, updateAccess_homeDirectoryType - The type
-- of landing directory (folder) that you want your users' home directory
-- to be when they log in to the server. If you set it to PATH,
-- the user will see the absolute Amazon S3 bucket or EFS paths as is in
-- their file transfer protocol clients. If you set it LOGICAL,
-- you need to provide mappings in the HomeDirectoryMappings for
-- how you want to make Amazon S3 or Amazon EFS paths visible to your
-- users.
--
-- UpdateAccess, updateAccess_policy - A session policy for
-- your user so that you can use the same Identity and Access Management
-- (IAM) role across multiple users. This policy scopes down a user's
-- access to portions of their Amazon S3 bucket. Variables that you can
-- use inside this policy include ${Transfer:UserName},
-- ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Example session policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- ServicesSecurity Token Service API Reference.
--
-- UpdateAccess, updateAccess_posixProfile - Undocumented
-- member.
--
-- UpdateAccess, updateAccess_role - The Amazon Resource
-- Name (ARN) of the Identity and Access Management (IAM) role that
-- controls your users' access to your Amazon S3 bucket or Amazon EFS
-- file system. The policies attached to this role determine the level of
-- access that you want to provide your users when transferring files
-- into and out of your Amazon S3 bucket or Amazon EFS file system. The
-- IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
--
-- UpdateAccess, updateAccess_serverId - A system-assigned
-- unique identifier for a server instance. This is the specific server
-- that you added your user to.
--
-- UpdateAccess, updateAccess_externalId - A unique
-- identifier that is required to identify specific groups within your
-- directory. The users of the group that you associate have access to
-- your Amazon S3 or Amazon EFS resources over the enabled protocols
-- using Transfer Family. If you know the group name, you can view the
-- SID values by running the following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
newUpdateAccess :: Text -> Text -> UpdateAccess
-- | See: newUpdateAccessResponse smart constructor.
data UpdateAccessResponse
UpdateAccessResponse' :: Int -> Text -> Text -> UpdateAccessResponse
-- | Create a value of UpdateAccessResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateAccessResponse',
-- updateAccessResponse_httpStatus - The response's http status
-- code.
--
-- UpdateAccess, updateAccessResponse_serverId - The
-- identifier of the server that the user is attached to.
--
-- UpdateAccess, updateAccessResponse_externalId - The
-- external identifier of the group whose users have access to your
-- Amazon S3 or Amazon EFS resources over the enabled protocols using
-- Amazon Web ServicesTransfer Family.
newUpdateAccessResponse :: Int -> Text -> Text -> UpdateAccessResponse
-- | See: newUpdateAgreement smart constructor.
data UpdateAgreement
UpdateAgreement' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe AgreementStatusType -> Text -> Text -> UpdateAgreement
-- | Create a value of UpdateAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateAgreement, updateAgreement_accessRole - With AS2,
-- you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- UpdateAgreement, updateAgreement_baseDirectory - To
-- change the landing directory (folder) for files that are transferred,
-- provide the bucket folder that you want to use; for example,
-- /DOC-EXAMPLE-BUCKET/home/mydirectory
-- .
--
-- UpdateAgreement, updateAgreement_description - To
-- replace the existing description, provide a short description for the
-- agreement.
--
-- UpdateAgreement, updateAgreement_localProfileId - A
-- unique identifier for the AS2 local profile.
--
-- To change the local profile identifier, provide a new value here.
--
-- UpdateAgreement, updateAgreement_partnerProfileId - A
-- unique identifier for the partner profile. To change the partner
-- profile identifier, provide a new value here.
--
-- UpdateAgreement, updateAgreement_status - You can update
-- the status for the agreement, either activating an inactive agreement
-- or the reverse.
--
-- UpdateAgreement, updateAgreement_agreementId - A unique
-- identifier for the agreement. This identifier is returned when you
-- create an agreement.
--
-- UpdateAgreement, updateAgreement_serverId - A
-- system-assigned unique identifier for a server instance. This is the
-- specific server that the agreement uses.
newUpdateAgreement :: Text -> Text -> UpdateAgreement
-- | See: newUpdateAgreementResponse smart constructor.
data UpdateAgreementResponse
UpdateAgreementResponse' :: Int -> Text -> UpdateAgreementResponse
-- | Create a value of UpdateAgreementResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateAgreementResponse',
-- updateAgreementResponse_httpStatus - The response's http status
-- code.
--
-- UpdateAgreement, updateAgreementResponse_agreementId - A
-- unique identifier for the agreement. This identifier is returned when
-- you create an agreement.
newUpdateAgreementResponse :: Int -> Text -> UpdateAgreementResponse
-- | See: newUpdateCertificate smart constructor.
data UpdateCertificate
UpdateCertificate' :: Maybe POSIX -> Maybe Text -> Maybe POSIX -> Text -> UpdateCertificate
-- | Create a value of UpdateCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateCertificate, updateCertificate_activeDate - An
-- optional date that specifies when the certificate becomes active.
--
-- UpdateCertificate, updateCertificate_description - A
-- short description to help identify the certificate.
--
-- UpdateCertificate, updateCertificate_inactiveDate - An
-- optional date that specifies when the certificate becomes inactive.
--
-- UpdateCertificate, updateCertificate_certificateId - The
-- identifier of the certificate object that you are updating.
newUpdateCertificate :: Text -> UpdateCertificate
-- | See: newUpdateCertificateResponse smart constructor.
data UpdateCertificateResponse
UpdateCertificateResponse' :: Int -> Text -> UpdateCertificateResponse
-- | Create a value of UpdateCertificateResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateCertificateResponse',
-- updateCertificateResponse_httpStatus - The response's http
-- status code.
--
-- UpdateCertificate,
-- updateCertificateResponse_certificateId - Returns the
-- identifier of the certificate object that you are updating.
newUpdateCertificateResponse :: Int -> Text -> UpdateCertificateResponse
-- | See: newUpdateConnector smart constructor.
data UpdateConnector
UpdateConnector' :: Maybe Text -> Maybe As2ConnectorConfig -> Maybe Text -> Maybe Text -> Text -> UpdateConnector
-- | Create a value of UpdateConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateConnector, updateConnector_accessRole - With AS2,
-- you can send files by calling StartFileTransfer and
-- specifying the file paths in the request parameter,
-- SendFilePaths. We use the file’s parent directory (for
-- example, for --send-file-paths /bucket/dir/file.txt, parent
-- directory is /bucket/dir/) to temporarily store a processed
-- AS2 message file, store the MDN when we receive them from the partner,
-- and write a final JSON file containing relevant metadata of the
-- transmission. So, the AccessRole needs to provide read and
-- write access to the parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- UpdateConnector, updateConnector_as2Config - A structure
-- that contains the parameters for a connector object.
--
-- UpdateConnector, updateConnector_loggingRole - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that allows a connector to turn on CloudWatch logging for Amazon
-- S3 events. When set, you can view connector activity in your
-- CloudWatch logs.
--
-- UpdateConnector, updateConnector_url - The URL of the
-- partner's AS2 endpoint.
--
-- UpdateConnector, updateConnector_connectorId - The
-- unique identifier for the connector.
newUpdateConnector :: Text -> UpdateConnector
-- | See: newUpdateConnectorResponse smart constructor.
data UpdateConnectorResponse
UpdateConnectorResponse' :: Int -> Text -> UpdateConnectorResponse
-- | Create a value of UpdateConnectorResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateConnectorResponse',
-- updateConnectorResponse_httpStatus - The response's http status
-- code.
--
-- UpdateConnector, updateConnectorResponse_connectorId -
-- Returns the identifier of the connector object that you are updating.
newUpdateConnectorResponse :: Int -> Text -> UpdateConnectorResponse
-- | See: newUpdateHostKey smart constructor.
data UpdateHostKey
UpdateHostKey' :: Text -> Text -> Text -> UpdateHostKey
-- | Create a value of UpdateHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateHostKey, updateHostKey_serverId - The identifier
-- of the server that contains the host key that you are updating.
--
-- UpdateHostKey, updateHostKey_hostKeyId - The identifier
-- of the host key that you are updating.
--
-- UpdateHostKey, updateHostKey_description - An updated
-- description for the host key.
newUpdateHostKey :: Text -> Text -> Text -> UpdateHostKey
-- | See: newUpdateHostKeyResponse smart constructor.
data UpdateHostKeyResponse
UpdateHostKeyResponse' :: Int -> Text -> Text -> UpdateHostKeyResponse
-- | Create a value of UpdateHostKeyResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateHostKeyResponse',
-- updateHostKeyResponse_httpStatus - The response's http status
-- code.
--
-- UpdateHostKey, updateHostKeyResponse_serverId - Returns
-- the server identifier for the server that contains the updated host
-- key.
--
-- UpdateHostKey, updateHostKeyResponse_hostKeyId - Returns
-- the host key identifier for the updated host key.
newUpdateHostKeyResponse :: Int -> Text -> Text -> UpdateHostKeyResponse
-- | See: newUpdateProfile smart constructor.
data UpdateProfile
UpdateProfile' :: Maybe [Text] -> Text -> UpdateProfile
-- | Create a value of UpdateProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateProfile, updateProfile_certificateIds - An array
-- of identifiers for the imported certificates. You use this identifier
-- for working with profiles and partner profiles.
--
-- UpdateProfile, updateProfile_profileId - The identifier
-- of the profile object that you are updating.
newUpdateProfile :: Text -> UpdateProfile
-- | See: newUpdateProfileResponse smart constructor.
data UpdateProfileResponse
UpdateProfileResponse' :: Int -> Text -> UpdateProfileResponse
-- | Create a value of UpdateProfileResponse with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateProfileResponse',
-- updateProfileResponse_httpStatus - The response's http status
-- code.
--
-- UpdateProfile, updateProfileResponse_profileId - Returns
-- the identifier for the profile that's being updated.
newUpdateProfileResponse :: Int -> Text -> UpdateProfileResponse
-- | See: newUpdateServer smart constructor.
data UpdateServer
UpdateServer' :: Maybe Text -> Maybe EndpointDetails -> Maybe EndpointType -> Maybe (Sensitive Text) -> Maybe IdentityProviderDetails -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProtocolDetails -> Maybe (NonEmpty Protocol) -> Maybe Text -> Maybe WorkflowDetails -> Text -> UpdateServer
-- | Create a value of UpdateServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateServer, updateServer_certificate - The Amazon
-- Resource Name (ARN) of the Amazon Web ServicesCertificate Manager
-- (ACM) certificate. Required when Protocols is set to
-- FTPS.
--
-- To request a new public certificate, see Request a public
-- certificate in the Amazon Web ServicesCertificate Manager User
-- Guide.
--
-- To import an existing certificate into ACM, see Importing
-- certificates into ACM in the Amazon Web ServicesCertificate
-- Manager User Guide.
--
-- To request a private certificate to use FTPS through private IP
-- addresses, see Request a private certificate in the Amazon
-- Web ServicesCertificate Manager User Guide.
--
-- Certificates with the following cryptographic algorithms and key sizes
-- are supported:
--
--
-- - 2048-bit RSA (RSA_2048)
-- - 4096-bit RSA (RSA_4096)
-- - Elliptic Prime Curve 256 bit (EC_prime256v1)
-- - Elliptic Prime Curve 384 bit (EC_secp384r1)
-- - Elliptic Prime Curve 521 bit (EC_secp521r1)
--
--
-- The certificate must be a valid SSL/TLS X.509 version 3 certificate
-- with FQDN or IP address specified and information about the issuer.
--
-- UpdateServer, updateServer_endpointDetails - The virtual
-- private cloud (VPC) endpoint settings that are configured for your
-- server. When you host your endpoint within your VPC, you can make your
-- endpoint accessible only to resources within your VPC, or you can
-- attach Elastic IP addresses and make your endpoint accessible to
-- clients over the internet. Your VPC's default security groups are
-- automatically assigned to your endpoint.
--
-- UpdateServer, updateServer_endpointType - The type of
-- endpoint that you want your server to use. You can choose to make your
-- server's endpoint publicly accessible (PUBLIC) or host it inside your
-- VPC. With an endpoint that is hosted in a VPC, you can restrict access
-- to your server and resources only within your VPC or choose to make it
-- internet facing by attaching Elastic IP addresses directly to it.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Servicesaccount on or before May 19, 2021, you will
-- not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- It is recommended that you use VPC as the
-- EndpointType. With this endpoint type, you have the option to
-- directly associate up to three Elastic IPv4 addresses (BYO IP
-- included) with your server's endpoint and use VPC security groups to
-- restrict traffic by the client's public IP address. This is not
-- possible with EndpointType set to VPC_ENDPOINT.
--
-- $sel:hostKey:UpdateServer', updateServer_hostKey - The
-- RSA, ECDSA, or ED25519 private key to use for your SFTP-enabled
-- server. You can add multiple host keys, in case you want to rotate
-- keys, or have a set of active keys that use different algorithms.
--
-- Use the following command to generate an RSA 2048 bit key with no
-- passphrase:
--
-- ssh-keygen -t rsa -b 2048 -N "" -m PEM -f my-new-server-key.
--
-- Use a minimum value of 2048 for the -b option. You can create
-- a stronger key by using 3072 or 4096.
--
-- Use the following command to generate an ECDSA 256 bit key with no
-- passphrase:
--
-- ssh-keygen -t ecdsa -b 256 -N "" -m PEM -f my-new-server-key.
--
-- Valid values for the -b option for ECDSA are 256, 384, and
-- 521.
--
-- Use the following command to generate an ED25519 key with no
-- passphrase:
--
-- ssh-keygen -t ed25519 -N "" -f my-new-server-key.
--
-- For all of these commands, you can replace my-new-server-key
-- with a string of your choice.
--
-- If you aren't planning to migrate existing users from an existing
-- SFTP-enabled server to a new server, don't update the host key.
-- Accidentally changing a server's host key can be disruptive.
--
-- For more information, see Update host keys for your SFTP-enabled
-- server in the Transfer Family User Guide.
--
-- UpdateServer, updateServer_identityProviderDetails - An
-- array containing all of the information required to call a customer's
-- authentication API method.
--
-- UpdateServer, updateServer_loggingRole - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that allows a server to turn on Amazon CloudWatch logging for Amazon
-- S3 or Amazon EFSevents. When set, you can view user activity in your
-- CloudWatch logs.
--
-- UpdateServer, updateServer_postAuthenticationLoginBanner
-- - Specifies a string to display when users connect to a server. This
-- string is displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
--
-- UpdateServer, updateServer_preAuthenticationLoginBanner
-- - Specifies a string to display when users connect to a server. This
-- string is displayed before the user authenticates. For example, the
-- following banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
--
-- UpdateServer, updateServer_protocolDetails - The
-- protocol settings that are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
--
-- UpdateServer, updateServer_protocols - Specifies the
-- file transfer protocol or protocols over which your file transfer
-- protocol client can connect to your server's endpoint. The available
-- protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
--
-- UpdateServer, updateServer_securityPolicyName -
-- Specifies the name of the security policy that is attached to the
-- server.
--
-- UpdateServer, updateServer_workflowDetails - Specifies
-- the workflow ID for the workflow to assign and the execution role
-- that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
--
-- UpdateServer, updateServer_serverId - A system-assigned
-- unique identifier for a server instance that the user account is
-- assigned to.
newUpdateServer :: Text -> UpdateServer
-- | See: newUpdateServerResponse smart constructor.
data UpdateServerResponse
UpdateServerResponse' :: Int -> Text -> UpdateServerResponse
-- | Create a value of UpdateServerResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateServerResponse',
-- updateServerResponse_httpStatus - The response's http status
-- code.
--
-- UpdateServer, updateServerResponse_serverId - A
-- system-assigned unique identifier for a server that the user account
-- is assigned to.
newUpdateServerResponse :: Int -> Text -> UpdateServerResponse
-- | See: newUpdateUser smart constructor.
data UpdateUser
UpdateUser' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Text -> Text -> UpdateUser
-- | Create a value of UpdateUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- UpdateUser, updateUser_homeDirectory - The landing
-- directory (folder) for a user when they log in to the server using the
-- client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- UpdateUser, updateUser_homeDirectoryMappings - Logical
-- directory mappings that specify what Amazon S3 or Amazon EFS paths and
-- keys should be visible to your user and how you want to make them
-- visible. You must specify the Entry and Target pair,
-- where Entry shows how the path is made visible and
-- Target is the actual Amazon S3 or Amazon EFS path. If you
-- only specify a target, it is displayed as is. You also must ensure
-- that your Identity and Access Management (IAM) role provides access to
-- paths in Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- The following is an Entry and Target pair example.
--
--
-- [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- In most cases, you can use this value instead of the session policy to
-- lock down your user to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- UpdateUser, updateUser_homeDirectoryType - The type of
-- landing directory (folder) that you want your users' home directory to
-- be when they log in to the server. If you set it to PATH, the
-- user will see the absolute Amazon S3 bucket or EFS paths as is in
-- their file transfer protocol clients. If you set it LOGICAL,
-- you need to provide mappings in the HomeDirectoryMappings for
-- how you want to make Amazon S3 or Amazon EFS paths visible to your
-- users.
--
-- UpdateUser, updateUser_policy - A session policy for
-- your user so that you can use the same Identity and Access Management
-- (IAM) role across multiple users. This policy scopes down a user's
-- access to portions of their Amazon S3 bucket. Variables that you can
-- use inside this policy include ${Transfer:UserName},
-- ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- This policy applies only when the domain of ServerId is
-- Amazon S3. Amazon EFS does not use session policies.
--
-- For session policies, Transfer Family stores the policy as a JSON
-- blob, instead of the Amazon Resource Name (ARN) of the policy. You
-- save the policy as a JSON blob and pass it in the Policy
-- argument.
--
-- For an example of a session policy, see Creating a session
-- policy.
--
-- For more information, see AssumeRole in the Amazon Web
-- Services Security Token Service API Reference.
--
-- UpdateUser, updateUser_posixProfile - Specifies the full
-- POSIX identity, including user ID (Uid), group ID
-- (Gid), and any secondary groups IDs (SecondaryGids),
-- that controls your users' access to your Amazon Elastic File Systems
-- (Amazon EFS). The POSIX permissions that are set on files and
-- directories in your file system determines the level of access your
-- users get when transferring files into and out of your Amazon EFS file
-- systems.
--
-- UpdateUser, updateUser_role - The Amazon Resource Name
-- (ARN) of the Identity and Access Management (IAM) role that controls
-- your users' access to your Amazon S3 bucket or Amazon EFS file system.
-- The policies attached to this role determine the level of access that
-- you want to provide your users when transferring files into and out of
-- your Amazon S3 bucket or Amazon EFS file system. The IAM role should
-- also contain a trust relationship that allows the server to access
-- your resources when servicing your users' transfer requests.
--
-- UpdateUser, updateUser_serverId - A system-assigned
-- unique identifier for a server instance that the user account is
-- assigned to.
--
-- UpdateUser, updateUser_userName - A unique string that
-- identifies a user and is associated with a server as specified by the
-- ServerId. This user name must be a minimum of 3 and a maximum
-- of 100 characters long. The following are valid characters: a-z, A-Z,
-- 0-9, underscore '_', hyphen '-', period '.', and at sign '@'. The user
-- name can't start with a hyphen, period, or at sign.
newUpdateUser :: Text -> Text -> UpdateUser
-- | UpdateUserResponse returns the user name and identifier for
-- the request to update a user's properties.
--
-- See: newUpdateUserResponse smart constructor.
data UpdateUserResponse
UpdateUserResponse' :: Int -> Text -> Text -> UpdateUserResponse
-- | Create a value of UpdateUserResponse with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:httpStatus:UpdateUserResponse',
-- updateUserResponse_httpStatus - The response's http status
-- code.
--
-- UpdateUser, updateUserResponse_serverId - A
-- system-assigned unique identifier for a server instance that the user
-- account is assigned to.
--
-- UpdateUser, updateUserResponse_userName - The unique
-- identifier for a user that is assigned to a server instance that was
-- specified in the request.
newUpdateUserResponse :: Int -> Text -> Text -> UpdateUserResponse
newtype AgreementStatusType
AgreementStatusType' :: Text -> AgreementStatusType
[fromAgreementStatusType] :: AgreementStatusType -> Text
pattern AgreementStatusType_ACTIVE :: AgreementStatusType
pattern AgreementStatusType_INACTIVE :: AgreementStatusType
newtype As2Transport
As2Transport' :: Text -> As2Transport
[fromAs2Transport] :: As2Transport -> Text
pattern As2Transport_HTTP :: As2Transport
newtype CertificateStatusType
CertificateStatusType' :: Text -> CertificateStatusType
[fromCertificateStatusType] :: CertificateStatusType -> Text
pattern CertificateStatusType_ACTIVE :: CertificateStatusType
pattern CertificateStatusType_INACTIVE :: CertificateStatusType
pattern CertificateStatusType_PENDING_ROTATION :: CertificateStatusType
newtype CertificateType
CertificateType' :: Text -> CertificateType
[fromCertificateType] :: CertificateType -> Text
pattern CertificateType_CERTIFICATE :: CertificateType
pattern CertificateType_CERTIFICATE_WITH_PRIVATE_KEY :: CertificateType
newtype CertificateUsageType
CertificateUsageType' :: Text -> CertificateUsageType
[fromCertificateUsageType] :: CertificateUsageType -> Text
pattern CertificateUsageType_ENCRYPTION :: CertificateUsageType
pattern CertificateUsageType_SIGNING :: CertificateUsageType
newtype CompressionEnum
CompressionEnum' :: Text -> CompressionEnum
[fromCompressionEnum] :: CompressionEnum -> Text
pattern CompressionEnum_DISABLED :: CompressionEnum
pattern CompressionEnum_ZLIB :: CompressionEnum
newtype CustomStepStatus
CustomStepStatus' :: Text -> CustomStepStatus
[fromCustomStepStatus] :: CustomStepStatus -> Text
pattern CustomStepStatus_FAILURE :: CustomStepStatus
pattern CustomStepStatus_SUCCESS :: CustomStepStatus
newtype Domain
Domain' :: Text -> Domain
[fromDomain] :: Domain -> Text
pattern Domain_EFS :: Domain
pattern Domain_S3 :: Domain
newtype EncryptionAlg
EncryptionAlg' :: Text -> EncryptionAlg
[fromEncryptionAlg] :: EncryptionAlg -> Text
pattern EncryptionAlg_AES128_CBC :: EncryptionAlg
pattern EncryptionAlg_AES192_CBC :: EncryptionAlg
pattern EncryptionAlg_AES256_CBC :: EncryptionAlg
pattern EncryptionAlg_NONE :: EncryptionAlg
newtype EncryptionType
EncryptionType' :: Text -> EncryptionType
[fromEncryptionType] :: EncryptionType -> Text
pattern EncryptionType_PGP :: EncryptionType
newtype EndpointType
EndpointType' :: Text -> EndpointType
[fromEndpointType] :: EndpointType -> Text
pattern EndpointType_PUBLIC :: EndpointType
pattern EndpointType_VPC :: EndpointType
pattern EndpointType_VPC_ENDPOINT :: EndpointType
newtype ExecutionErrorType
ExecutionErrorType' :: Text -> ExecutionErrorType
[fromExecutionErrorType] :: ExecutionErrorType -> Text
pattern ExecutionErrorType_ALREADY_EXISTS :: ExecutionErrorType
pattern ExecutionErrorType_BAD_REQUEST :: ExecutionErrorType
pattern ExecutionErrorType_CUSTOM_STEP_FAILED :: ExecutionErrorType
pattern ExecutionErrorType_INTERNAL_SERVER_ERROR :: ExecutionErrorType
pattern ExecutionErrorType_NOT_FOUND :: ExecutionErrorType
pattern ExecutionErrorType_PERMISSION_DENIED :: ExecutionErrorType
pattern ExecutionErrorType_THROTTLED :: ExecutionErrorType
pattern ExecutionErrorType_TIMEOUT :: ExecutionErrorType
newtype ExecutionStatus
ExecutionStatus' :: Text -> ExecutionStatus
[fromExecutionStatus] :: ExecutionStatus -> Text
pattern ExecutionStatus_COMPLETED :: ExecutionStatus
pattern ExecutionStatus_EXCEPTION :: ExecutionStatus
pattern ExecutionStatus_HANDLING_EXCEPTION :: ExecutionStatus
pattern ExecutionStatus_IN_PROGRESS :: ExecutionStatus
newtype HomeDirectoryType
HomeDirectoryType' :: Text -> HomeDirectoryType
[fromHomeDirectoryType] :: HomeDirectoryType -> Text
pattern HomeDirectoryType_LOGICAL :: HomeDirectoryType
pattern HomeDirectoryType_PATH :: HomeDirectoryType
-- | Returns information related to the type of user authentication that is
-- in use for a file transfer protocol-enabled server's users. For
-- AWS_DIRECTORY_SERVICE or SERVICE_MANAGED
-- authentication, the Secure Shell (SSH) public keys are stored with a
-- user on the server instance. For API_GATEWAY authentication,
-- your custom authentication method is implemented by using an API call.
-- The server can have only one method of authentication.
newtype IdentityProviderType
IdentityProviderType' :: Text -> IdentityProviderType
[fromIdentityProviderType] :: IdentityProviderType -> Text
pattern IdentityProviderType_API_GATEWAY :: IdentityProviderType
pattern IdentityProviderType_AWS_DIRECTORY_SERVICE :: IdentityProviderType
pattern IdentityProviderType_AWS_LAMBDA :: IdentityProviderType
pattern IdentityProviderType_SERVICE_MANAGED :: IdentityProviderType
newtype MdnResponse
MdnResponse' :: Text -> MdnResponse
[fromMdnResponse] :: MdnResponse -> Text
pattern MdnResponse_NONE :: MdnResponse
pattern MdnResponse_SYNC :: MdnResponse
newtype MdnSigningAlg
MdnSigningAlg' :: Text -> MdnSigningAlg
[fromMdnSigningAlg] :: MdnSigningAlg -> Text
pattern MdnSigningAlg_DEFAULT :: MdnSigningAlg
pattern MdnSigningAlg_NONE :: MdnSigningAlg
pattern MdnSigningAlg_SHA1 :: MdnSigningAlg
pattern MdnSigningAlg_SHA256 :: MdnSigningAlg
pattern MdnSigningAlg_SHA384 :: MdnSigningAlg
pattern MdnSigningAlg_SHA512 :: MdnSigningAlg
newtype OverwriteExisting
OverwriteExisting' :: Text -> OverwriteExisting
[fromOverwriteExisting] :: OverwriteExisting -> Text
pattern OverwriteExisting_FALSE :: OverwriteExisting
pattern OverwriteExisting_TRUE :: OverwriteExisting
newtype ProfileType
ProfileType' :: Text -> ProfileType
[fromProfileType] :: ProfileType -> Text
pattern ProfileType_LOCAL :: ProfileType
pattern ProfileType_PARTNER :: ProfileType
newtype Protocol
Protocol' :: Text -> Protocol
[fromProtocol] :: Protocol -> Text
pattern Protocol_AS2 :: Protocol
pattern Protocol_FTP :: Protocol
pattern Protocol_FTPS :: Protocol
pattern Protocol_SFTP :: Protocol
newtype SetStatOption
SetStatOption' :: Text -> SetStatOption
[fromSetStatOption] :: SetStatOption -> Text
pattern SetStatOption_DEFAULT :: SetStatOption
pattern SetStatOption_ENABLE_NO_OP :: SetStatOption
newtype SigningAlg
SigningAlg' :: Text -> SigningAlg
[fromSigningAlg] :: SigningAlg -> Text
pattern SigningAlg_NONE :: SigningAlg
pattern SigningAlg_SHA1 :: SigningAlg
pattern SigningAlg_SHA256 :: SigningAlg
pattern SigningAlg_SHA384 :: SigningAlg
pattern SigningAlg_SHA512 :: SigningAlg
-- | Describes the condition of a file transfer protocol-enabled server
-- with respect to its ability to perform file operations. There are six
-- possible states: OFFLINE, ONLINE, STARTING,
-- STOPPING, START_FAILED, and STOP_FAILED.
--
-- OFFLINE indicates that the server exists, but that it is not
-- available for file operations. ONLINE indicates that the
-- server is available to perform file operations. STARTING
-- indicates that the server's was instantiated, but the server is not
-- yet available to perform file operations. Under normal conditions, it
-- can take a couple of minutes for the server to be completely
-- operational. Both START_FAILED and STOP_FAILED are
-- error conditions.
newtype State
State' :: Text -> State
[fromState] :: State -> Text
pattern State_OFFLINE :: State
pattern State_ONLINE :: State
pattern State_STARTING :: State
pattern State_START_FAILED :: State
pattern State_STOPPING :: State
pattern State_STOP_FAILED :: State
newtype TlsSessionResumptionMode
TlsSessionResumptionMode' :: Text -> TlsSessionResumptionMode
[fromTlsSessionResumptionMode] :: TlsSessionResumptionMode -> Text
pattern TlsSessionResumptionMode_DISABLED :: TlsSessionResumptionMode
pattern TlsSessionResumptionMode_ENABLED :: TlsSessionResumptionMode
pattern TlsSessionResumptionMode_ENFORCED :: TlsSessionResumptionMode
newtype WorkflowStepType
WorkflowStepType' :: Text -> WorkflowStepType
[fromWorkflowStepType] :: WorkflowStepType -> Text
pattern WorkflowStepType_COPY :: WorkflowStepType
pattern WorkflowStepType_CUSTOM :: WorkflowStepType
pattern WorkflowStepType_DECRYPT :: WorkflowStepType
pattern WorkflowStepType_DELETE :: WorkflowStepType
pattern WorkflowStepType_TAG :: WorkflowStepType
-- | Contains the details for a connector object. The connector object is
-- used for AS2 outbound processes, to connect the Transfer Family
-- customer with the trading partner.
--
-- See: newAs2ConnectorConfig smart constructor.
data As2ConnectorConfig
As2ConnectorConfig' :: Maybe CompressionEnum -> Maybe EncryptionAlg -> Maybe Text -> Maybe MdnResponse -> Maybe MdnSigningAlg -> Maybe Text -> Maybe Text -> Maybe SigningAlg -> As2ConnectorConfig
-- | Create a value of As2ConnectorConfig with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:compression:As2ConnectorConfig',
-- as2ConnectorConfig_compression - Specifies whether the AS2 file
-- is compressed.
--
-- $sel:encryptionAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_encryptionAlgorithm - The algorithm that is
-- used to encrypt the file.
--
-- $sel:localProfileId:As2ConnectorConfig',
-- as2ConnectorConfig_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:mdnResponse:As2ConnectorConfig',
-- as2ConnectorConfig_mdnResponse - Used for outbound requests
-- (from an Transfer Family server to a partner AS2 server) to determine
-- whether the partner response for transfers is synchronous or
-- asynchronous. Specify either of the following values:
--
--
-- - SYNC: The system expects a synchronous MDN response,
-- confirming that the file was transferred successfully (or not).
-- - NONE: Specifies that no MDN response is required.
--
--
-- $sel:mdnSigningAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_mdnSigningAlgorithm - The signing algorithm
-- for the MDN response.
--
-- If set to DEFAULT (or not set at all), the value for
-- SigningAlogorithm is used.
--
-- $sel:messageSubject:As2ConnectorConfig',
-- as2ConnectorConfig_messageSubject - Used as the
-- Subject HTTP header attribute in AS2 messages that are being
-- sent with the connector.
--
-- $sel:partnerProfileId:As2ConnectorConfig',
-- as2ConnectorConfig_partnerProfileId - A unique identifier for
-- the partner profile for the connector.
--
-- $sel:signingAlgorithm:As2ConnectorConfig',
-- as2ConnectorConfig_signingAlgorithm - The algorithm that is
-- used to sign the AS2 messages sent with the connector.
newAs2ConnectorConfig :: As2ConnectorConfig
-- | Each step type has its own StepDetails structure.
--
-- See: newCopyStepDetails smart constructor.
data CopyStepDetails
CopyStepDetails' :: Maybe InputFileLocation -> Maybe Text -> Maybe OverwriteExisting -> Maybe Text -> CopyStepDetails
-- | Create a value of CopyStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:destinationFileLocation:CopyStepDetails',
-- copyStepDetails_destinationFileLocation - Specifies the
-- location for the file being copied. Only applicable for Copy type
-- workflow steps. Use ${Transfer:username} in this field to
-- parametrize the destination prefix by username.
--
-- $sel:name:CopyStepDetails', copyStepDetails_name - The
-- name of the step, used as an identifier.
--
-- $sel:overwriteExisting:CopyStepDetails',
-- copyStepDetails_overwriteExisting - A flag that indicates
-- whether or not to overwrite an existing file of the same name. The
-- default is FALSE.
--
-- $sel:sourceFileLocation:CopyStepDetails',
-- copyStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
newCopyStepDetails :: CopyStepDetails
-- | Each step type has its own StepDetails structure.
--
-- See: newCustomStepDetails smart constructor.
data CustomStepDetails
CustomStepDetails' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Natural -> CustomStepDetails
-- | Create a value of CustomStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:CustomStepDetails', customStepDetails_name -
-- The name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:CustomStepDetails',
-- customStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
--
-- $sel:target:CustomStepDetails', customStepDetails_target
-- - The ARN for the lambda function that is being called.
--
-- $sel:timeoutSeconds:CustomStepDetails',
-- customStepDetails_timeoutSeconds - Timeout, in seconds, for the
-- step.
newCustomStepDetails :: CustomStepDetails
-- | See: newDecryptStepDetails smart constructor.
data DecryptStepDetails
DecryptStepDetails' :: Maybe Text -> Maybe OverwriteExisting -> Maybe Text -> EncryptionType -> InputFileLocation -> DecryptStepDetails
-- | Create a value of DecryptStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:DecryptStepDetails', decryptStepDetails_name -
-- Undocumented member.
--
-- $sel:overwriteExisting:DecryptStepDetails',
-- decryptStepDetails_overwriteExisting - Undocumented member.
--
-- $sel:sourceFileLocation:DecryptStepDetails',
-- decryptStepDetails_sourceFileLocation - Undocumented member.
--
-- $sel:type':DecryptStepDetails', decryptStepDetails_type
-- - Undocumented member.
--
-- $sel:destinationFileLocation:DecryptStepDetails',
-- decryptStepDetails_destinationFileLocation - Undocumented
-- member.
newDecryptStepDetails :: EncryptionType -> InputFileLocation -> DecryptStepDetails
-- | The name of the step, used to identify the delete step.
--
-- See: newDeleteStepDetails smart constructor.
data DeleteStepDetails
DeleteStepDetails' :: Maybe Text -> Maybe Text -> DeleteStepDetails
-- | Create a value of DeleteStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:DeleteStepDetails', deleteStepDetails_name -
-- The name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:DeleteStepDetails',
-- deleteStepDetails_sourceFileLocation - Specifies which file to
-- use as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
newDeleteStepDetails :: DeleteStepDetails
-- | Describes the properties of the access that was specified.
--
-- See: newDescribedAccess smart constructor.
data DescribedAccess
DescribedAccess' :: Maybe Text -> Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> DescribedAccess
-- | Create a value of DescribedAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:externalId:DescribedAccess',
-- describedAccess_externalId - A unique identifier that is
-- required to identify specific groups within your directory. The users
-- of the group that you associate have access to your Amazon S3 or
-- Amazon EFS resources over the enabled protocols using Transfer Family.
-- If you know the group name, you can view the SID values by running the
-- following command using Windows PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
--
-- $sel:homeDirectory:DescribedAccess',
-- describedAccess_homeDirectory - The landing directory (folder)
-- for a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryMappings:DescribedAccess',
-- describedAccess_homeDirectoryMappings - Logical directory
-- mappings that specify what Amazon S3 or Amazon EFS paths and keys
-- should be visible to your user and how you want to make them visible.
-- You must specify the Entry and Target pair, where
-- Entry shows how the path is made visible and Target
-- is the actual Amazon S3 or Amazon EFS path. If you only specify a
-- target, it is displayed as is. You also must ensure that your Identity
-- and Access Management (IAM) role provides access to paths in
-- Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock down the associated access to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- $sel:homeDirectoryType:DescribedAccess',
-- describedAccess_homeDirectoryType - The type of landing
-- directory (folder) that you want your users' home directory to be when
-- they log in to the server. If you set it to PATH, the user
-- will see the absolute Amazon S3 bucket or EFS paths as is in their
-- file transfer protocol clients. If you set it LOGICAL, you
-- need to provide mappings in the HomeDirectoryMappings for how
-- you want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:policy:DescribedAccess', describedAccess_policy - A
-- session policy for your user so that you can use the same Identity and
-- Access Management (IAM) role across multiple users. This policy scopes
-- down a user's access to portions of their Amazon S3 bucket. Variables
-- that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- $sel:posixProfile:DescribedAccess',
-- describedAccess_posixProfile - Undocumented member.
--
-- $sel:role':DescribedAccess', describedAccess_role - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that controls your users' access to your Amazon S3 bucket or
-- Amazon EFS file system. The policies attached to this role determine
-- the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
newDescribedAccess :: DescribedAccess
-- | Describes the properties of an agreement.
--
-- See: newDescribedAgreement smart constructor.
data DescribedAgreement
DescribedAgreement' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe AgreementStatusType -> Maybe (NonEmpty Tag) -> Text -> DescribedAgreement
-- | Create a value of DescribedAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:accessRole:DescribedAgreement',
-- describedAgreement_accessRole - With AS2, you can send files by
-- calling StartFileTransfer and specifying the file paths in
-- the request parameter, SendFilePaths. We use the file’s
-- parent directory (for example, for --send-file-paths
-- /bucket/dir/file.txt, parent directory is /bucket/dir/)
-- to temporarily store a processed AS2 message file, store the MDN when
-- we receive them from the partner, and write a final JSON file
-- containing relevant metadata of the transmission. So, the
-- AccessRole needs to provide read and write access to the
-- parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- $sel:agreementId:DescribedAgreement',
-- describedAgreement_agreementId - A unique identifier for the
-- agreement. This identifier is returned when you create an agreement.
--
-- $sel:baseDirectory:DescribedAgreement',
-- describedAgreement_baseDirectory - The landing directory
-- (folder) for files that are transferred by using the AS2 protocol.
--
-- $sel:description:DescribedAgreement',
-- describedAgreement_description - The name or short description
-- that's used to identify the agreement.
--
-- $sel:localProfileId:DescribedAgreement',
-- describedAgreement_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:partnerProfileId:DescribedAgreement',
-- describedAgreement_partnerProfileId - A unique identifier for
-- the partner profile used in the agreement.
--
-- $sel:serverId:DescribedAgreement',
-- describedAgreement_serverId - A system-assigned unique
-- identifier for a server instance. This identifier indicates the
-- specific server that the agreement uses.
--
-- $sel:status:DescribedAgreement',
-- describedAgreement_status - The current status of the
-- agreement, either ACTIVE or INACTIVE.
--
-- $sel:tags:DescribedAgreement', describedAgreement_tags -
-- Key-value pairs that can be used to group and search for agreements.
--
-- $sel:arn:DescribedAgreement', describedAgreement_arn -
-- The unique Amazon Resource Name (ARN) for the agreement.
newDescribedAgreement :: Text -> DescribedAgreement
-- | Describes the properties of a certificate.
--
-- See: newDescribedCertificate smart constructor.
data DescribedCertificate
DescribedCertificate' :: Maybe POSIX -> Maybe (Sensitive Text) -> Maybe (Sensitive Text) -> Maybe Text -> Maybe Text -> Maybe POSIX -> Maybe POSIX -> Maybe POSIX -> Maybe Text -> Maybe CertificateStatusType -> Maybe (NonEmpty Tag) -> Maybe CertificateType -> Maybe CertificateUsageType -> Text -> DescribedCertificate
-- | Create a value of DescribedCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:activeDate:DescribedCertificate',
-- describedCertificate_activeDate - An optional date that
-- specifies when the certificate becomes active.
--
-- $sel:certificate:DescribedCertificate',
-- describedCertificate_certificate - The file name for the
-- certificate.
--
-- $sel:certificateChain:DescribedCertificate',
-- describedCertificate_certificateChain - The list of
-- certificates that make up the chain for the certificate.
--
-- $sel:certificateId:DescribedCertificate',
-- describedCertificate_certificateId - An array of identifiers
-- for the imported certificates. You use this identifier for working
-- with profiles and partner profiles.
--
-- $sel:description:DescribedCertificate',
-- describedCertificate_description - The name or description
-- that's used to identity the certificate.
--
-- $sel:inactiveDate:DescribedCertificate',
-- describedCertificate_inactiveDate - An optional date that
-- specifies when the certificate becomes inactive.
--
-- $sel:notAfterDate:DescribedCertificate',
-- describedCertificate_notAfterDate - The final date that the
-- certificate is valid.
--
-- $sel:notBeforeDate:DescribedCertificate',
-- describedCertificate_notBeforeDate - The earliest date that the
-- certificate is valid.
--
-- $sel:serial:DescribedCertificate',
-- describedCertificate_serial - The serial number for the
-- certificate.
--
-- $sel:status:DescribedCertificate',
-- describedCertificate_status - The certificate can be either
-- ACTIVE, PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
--
-- $sel:tags:DescribedCertificate',
-- describedCertificate_tags - Key-value pairs that can be used to
-- group and search for certificates.
--
-- $sel:type':DescribedCertificate',
-- describedCertificate_type - If a private key has been specified
-- for the certificate, its type is
-- CERTIFICATE_WITH_PRIVATE_KEY. If there is no private key, the
-- type is CERTIFICATE.
--
-- $sel:usage:DescribedCertificate',
-- describedCertificate_usage - Specifies whether this certificate
-- is used for signing or encryption.
--
-- $sel:arn:DescribedCertificate', describedCertificate_arn
-- - The unique Amazon Resource Name (ARN) for the certificate.
newDescribedCertificate :: Text -> DescribedCertificate
-- | Describes the parameters for the connector, as identified by the
-- ConnectorId.
--
-- See: newDescribedConnector smart constructor.
data DescribedConnector
DescribedConnector' :: Maybe Text -> Maybe As2ConnectorConfig -> Maybe Text -> Maybe Text -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedConnector
-- | Create a value of DescribedConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:accessRole:DescribedConnector',
-- describedConnector_accessRole - With AS2, you can send files by
-- calling StartFileTransfer and specifying the file paths in
-- the request parameter, SendFilePaths. We use the file’s
-- parent directory (for example, for --send-file-paths
-- /bucket/dir/file.txt, parent directory is /bucket/dir/)
-- to temporarily store a processed AS2 message file, store the MDN when
-- we receive them from the partner, and write a final JSON file
-- containing relevant metadata of the transmission. So, the
-- AccessRole needs to provide read and write access to the
-- parent directory of the file location used in the
-- StartFileTransfer request. Additionally, you need to provide
-- read and write access to the parent directory of the files that you
-- intend to send with StartFileTransfer.
--
-- $sel:as2Config:DescribedConnector',
-- describedConnector_as2Config - A structure that contains the
-- parameters for a connector object.
--
-- $sel:connectorId:DescribedConnector',
-- describedConnector_connectorId - The unique identifier for the
-- connector.
--
-- $sel:loggingRole:DescribedConnector',
-- describedConnector_loggingRole - The Amazon Resource Name (ARN)
-- of the Identity and Access Management (IAM) role that allows a
-- connector to turn on CloudWatch logging for Amazon S3 events. When
-- set, you can view connector activity in your CloudWatch logs.
--
-- $sel:tags:DescribedConnector', describedConnector_tags -
-- Key-value pairs that can be used to group and search for connectors.
--
-- $sel:url:DescribedConnector', describedConnector_url -
-- The URL of the partner's AS2 endpoint.
--
-- $sel:arn:DescribedConnector', describedConnector_arn -
-- The unique Amazon Resource Name (ARN) for the connector.
newDescribedConnector :: Text -> DescribedConnector
-- | The details for an execution object.
--
-- See: newDescribedExecution smart constructor.
data DescribedExecution
DescribedExecution' :: Maybe Text -> Maybe Text -> Maybe FileLocation -> Maybe LoggingConfiguration -> Maybe PosixProfile -> Maybe ExecutionResults -> Maybe ServiceMetadata -> Maybe ExecutionStatus -> DescribedExecution
-- | Create a value of DescribedExecution with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:executionId:DescribedExecution',
-- describedExecution_executionId - A unique identifier for the
-- execution of a workflow.
--
-- $sel:executionRole:DescribedExecution',
-- describedExecution_executionRole - The IAM role associated with
-- the execution.
--
-- $sel:initialFileLocation:DescribedExecution',
-- describedExecution_initialFileLocation - A structure that
-- describes the Amazon S3 or EFS file location. This is the file
-- location when the execution begins: if the file is being copied, this
-- is the initial (as opposed to destination) file location.
--
-- $sel:loggingConfiguration:DescribedExecution',
-- describedExecution_loggingConfiguration - The IAM logging role
-- associated with the execution.
--
-- $sel:posixProfile:DescribedExecution',
-- describedExecution_posixProfile - Undocumented member.
--
-- $sel:results:DescribedExecution',
-- describedExecution_results - A structure that describes the
-- execution results. This includes a list of the steps along with the
-- details of each step, error type and message (if any), and the
-- OnExceptionSteps structure.
--
-- $sel:serviceMetadata:DescribedExecution',
-- describedExecution_serviceMetadata - A container object for the
-- session details that are associated with a workflow.
--
-- $sel:status:DescribedExecution',
-- describedExecution_status - The status is one of the execution.
-- Can be in progress, completed, exception encountered, or handling the
-- exception.
newDescribedExecution :: DescribedExecution
-- | The details for a server host key.
--
-- See: newDescribedHostKey smart constructor.
data DescribedHostKey
DescribedHostKey' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedHostKey
-- | Create a value of DescribedHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:DescribedHostKey',
-- describedHostKey_dateImported - The date on which the host key
-- was added to the server.
--
-- $sel:description:DescribedHostKey',
-- describedHostKey_description - The text description for this
-- host key.
--
-- $sel:hostKeyFingerprint:DescribedHostKey',
-- describedHostKey_hostKeyFingerprint - The public key
-- fingerprint, which is a short sequence of bytes used to identify the
-- longer public key.
--
-- $sel:hostKeyId:DescribedHostKey',
-- describedHostKey_hostKeyId - A unique identifier for the host
-- key.
--
-- $sel:tags:DescribedHostKey', describedHostKey_tags -
-- Key-value pairs that can be used to group and search for host keys.
--
-- $sel:type':DescribedHostKey', describedHostKey_type -
-- The encryption algorithm that is used for the host key. The
-- Type parameter is specified by using one of the following
-- values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
--
-- $sel:arn:DescribedHostKey', describedHostKey_arn - The
-- unique Amazon Resource Name (ARN) for the host key.
newDescribedHostKey :: Text -> DescribedHostKey
-- | The details for a local or partner AS2 profile.
--
-- See: newDescribedProfile smart constructor.
data DescribedProfile
DescribedProfile' :: Maybe Text -> Maybe [Text] -> Maybe Text -> Maybe ProfileType -> Maybe (NonEmpty Tag) -> Text -> DescribedProfile
-- | Create a value of DescribedProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:as2Id:DescribedProfile', describedProfile_as2Id -
-- The As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
--
-- $sel:certificateIds:DescribedProfile',
-- describedProfile_certificateIds - An array of identifiers for
-- the imported certificates. You use this identifier for working with
-- profiles and partner profiles.
--
-- $sel:profileId:DescribedProfile',
-- describedProfile_profileId - A unique identifier for the local
-- or partner AS2 profile.
--
-- $sel:profileType:DescribedProfile',
-- describedProfile_profileType - Indicates whether to list only
-- LOCAL type profiles or only PARTNER type profiles.
-- If not supplied in the request, the command lists all types of
-- profiles.
--
-- $sel:tags:DescribedProfile', describedProfile_tags -
-- Key-value pairs that can be used to group and search for profiles.
--
-- $sel:arn:DescribedProfile', describedProfile_arn - The
-- unique Amazon Resource Name (ARN) for the profile.
newDescribedProfile :: Text -> DescribedProfile
-- | Describes the properties of a security policy that was specified. For
-- more information about security policies, see Working with security
-- policies.
--
-- See: newDescribedSecurityPolicy smart constructor.
data DescribedSecurityPolicy
DescribedSecurityPolicy' :: Maybe Bool -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Text -> DescribedSecurityPolicy
-- | Create a value of DescribedSecurityPolicy with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:fips:DescribedSecurityPolicy',
-- describedSecurityPolicy_fips - Specifies whether this policy
-- enables Federal Information Processing Standards (FIPS).
--
-- $sel:sshCiphers:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshCiphers - Specifies the enabled
-- Secure Shell (SSH) cipher encryption algorithms in the security policy
-- that is attached to the server.
--
-- $sel:sshKexs:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshKexs - Specifies the enabled SSH key
-- exchange (KEX) encryption algorithms in the security policy that is
-- attached to the server.
--
-- $sel:sshMacs:DescribedSecurityPolicy',
-- describedSecurityPolicy_sshMacs - Specifies the enabled SSH
-- message authentication code (MAC) encryption algorithms in the
-- security policy that is attached to the server.
--
-- $sel:tlsCiphers:DescribedSecurityPolicy',
-- describedSecurityPolicy_tlsCiphers - Specifies the enabled
-- Transport Layer Security (TLS) cipher encryption algorithms in the
-- security policy that is attached to the server.
--
-- $sel:securityPolicyName:DescribedSecurityPolicy',
-- describedSecurityPolicy_securityPolicyName - Specifies the name
-- of the security policy that is attached to the server.
newDescribedSecurityPolicy :: Text -> DescribedSecurityPolicy
-- | Describes the properties of a file transfer protocol-enabled server
-- that was specified.
--
-- See: newDescribedServer smart constructor.
data DescribedServer
DescribedServer' :: Maybe Text -> Maybe Domain -> Maybe EndpointDetails -> Maybe EndpointType -> Maybe Text -> Maybe IdentityProviderDetails -> Maybe IdentityProviderType -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProtocolDetails -> Maybe (NonEmpty Protocol) -> Maybe Text -> Maybe Text -> Maybe State -> Maybe (NonEmpty Tag) -> Maybe Int -> Maybe WorkflowDetails -> Text -> DescribedServer
-- | Create a value of DescribedServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:certificate:DescribedServer',
-- describedServer_certificate - Specifies the ARN of the Amazon
-- Web ServicesCertificate Manager (ACM) certificate. Required when
-- Protocols is set to FTPS.
--
-- $sel:domain:DescribedServer', describedServer_domain -
-- Specifies the domain of the storage system that is used for file
-- transfers.
--
-- $sel:endpointDetails:DescribedServer',
-- describedServer_endpointDetails - The virtual private cloud
-- (VPC) endpoint settings that are configured for your server. When you
-- host your endpoint within your VPC, you can make your endpoint
-- accessible only to resources within your VPC, or you can attach
-- Elastic IP addresses and make your endpoint accessible to clients over
-- the internet. Your VPC's default security groups are automatically
-- assigned to your endpoint.
--
-- $sel:endpointType:DescribedServer',
-- describedServer_endpointType - Defines the type of endpoint
-- that your server is connected to. If your server is connected to a VPC
-- endpoint, your server isn't accessible over the public internet.
--
-- $sel:hostKeyFingerprint:DescribedServer',
-- describedServer_hostKeyFingerprint - Specifies the
-- Base64-encoded SHA256 fingerprint of the server's host key. This value
-- is equivalent to the output of the ssh-keygen -l -f
-- my-new-server-key command.
--
-- $sel:identityProviderDetails:DescribedServer',
-- describedServer_identityProviderDetails - Specifies information
-- to call a customer-supplied authentication API. This field is not
-- populated when the IdentityProviderType of a server is
-- AWS_DIRECTORY_SERVICE or SERVICE_MANAGED.
--
-- $sel:identityProviderType:DescribedServer',
-- describedServer_identityProviderType - The mode of
-- authentication for a server. The default value is
-- SERVICE_MANAGED, which allows you to store and access user
-- credentials within the Transfer Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
--
-- $sel:loggingRole:DescribedServer',
-- describedServer_loggingRole - The Amazon Resource Name (ARN) of
-- the Identity and Access Management (IAM) role that allows a server to
-- turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents.
-- When set, you can view user activity in your CloudWatch logs.
--
-- $sel:postAuthenticationLoginBanner:DescribedServer',
-- describedServer_postAuthenticationLoginBanner - Specifies a
-- string to display when users connect to a server. This string is
-- displayed after the user authenticates.
--
-- The SFTP protocol does not support post-authentication display
-- banners.
--
-- $sel:preAuthenticationLoginBanner:DescribedServer',
-- describedServer_preAuthenticationLoginBanner - Specifies a
-- string to display when users connect to a server. This string is
-- displayed before the user authenticates. For example, the following
-- banner displays details about using the system:
--
--
-- This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
--
--
-- $sel:protocolDetails:DescribedServer',
-- describedServer_protocolDetails - The protocol settings that
-- are configured for your server.
--
--
-- - To indicate passive mode (for FTP and FTPS protocols), use the
-- PassiveIp parameter. Enter a single dotted-quad IPv4 address,
-- such as the external IP address of a firewall, router, or load
-- balancer.
-- - To ignore the error that is generated when the client attempts to
-- use the SETSTAT command on a file that you are uploading to
-- an Amazon S3 bucket, use the SetStatOption parameter. To have
-- the Transfer Family server ignore the SETSTAT command and
-- upload files without needing to make any changes to your SFTP client,
-- set the value to ENABLE_NO_OP. If you set the
-- SetStatOption parameter to ENABLE_NO_OP, Transfer
-- Family generates a log entry to Amazon CloudWatch Logs, so that you
-- can determine when the client is making a SETSTAT call.
-- - To determine whether your Transfer Family server resumes recent,
-- negotiated sessions through a unique session ID, use the
-- TlsSessionResumptionMode parameter.
-- - As2Transports indicates the transport method for the AS2
-- messages. Currently, only HTTP is supported.
--
--
-- $sel:protocols:DescribedServer',
-- describedServer_protocols - Specifies the file transfer
-- protocol or protocols over which your file transfer protocol client
-- can connect to your server's endpoint. The available protocols are:
--
--
-- - SFTP (Secure Shell (SSH) File Transfer Protocol): File
-- transfer over SSH
-- - FTPS (File Transfer Protocol Secure): File transfer with
-- TLS encryption
-- - FTP (File Transfer Protocol): Unencrypted file
-- transfer
-- - AS2 (Applicability Statement 2): used for transporting
-- structured business-to-business data
-- - If you select FTPS, you must choose a certificate stored
-- in Certificate Manager (ACM) which is used to identify your server
-- when clients connect to it over FTPS.
-- - If Protocol includes either FTP or
-- FTPS, then the EndpointType must be VPC and
-- the IdentityProviderType must be
-- AWS_DIRECTORY_SERVICE or API_GATEWAY.
-- - If Protocol includes FTP, then
-- AddressAllocationIds cannot be associated.
-- - If Protocol is set only to SFTP, the
-- EndpointType can be set to PUBLIC and the
-- IdentityProviderType can be set to
-- SERVICE_MANAGED.
-- - If Protocol includes AS2, then the
-- EndpointType must be VPC, and domain must be Amazon
-- S3.
--
--
-- $sel:securityPolicyName:DescribedServer',
-- describedServer_securityPolicyName - Specifies the name of the
-- security policy that is attached to the server.
--
-- $sel:serverId:DescribedServer', describedServer_serverId
-- - Specifies the unique system-assigned identifier for a server that
-- you instantiate.
--
-- $sel:state:DescribedServer', describedServer_state - The
-- condition of the server that was described. A value of ONLINE
-- indicates that the server can accept jobs and transfer files. A
-- State value of OFFLINE means that the server cannot
-- perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
--
-- $sel:tags:DescribedServer', describedServer_tags -
-- Specifies the key-value pairs that you can use to search for and group
-- servers that were assigned to the server that was described.
--
-- $sel:userCount:DescribedServer',
-- describedServer_userCount - Specifies the number of users that
-- are assigned to a server you specified with the ServerId.
--
-- $sel:workflowDetails:DescribedServer',
-- describedServer_workflowDetails - Specifies the workflow ID for
-- the workflow to assign and the execution role that's used for
-- executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- $sel:arn:DescribedServer', describedServer_arn -
-- Specifies the unique Amazon Resource Name (ARN) of the server.
newDescribedServer :: Text -> DescribedServer
-- | Describes the properties of a user that was specified.
--
-- See: newDescribedUser smart constructor.
data DescribedUser
DescribedUser' :: Maybe Text -> Maybe (NonEmpty HomeDirectoryMapEntry) -> Maybe HomeDirectoryType -> Maybe Text -> Maybe PosixProfile -> Maybe Text -> Maybe [SshPublicKey] -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedUser
-- | Create a value of DescribedUser with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:homeDirectory:DescribedUser',
-- describedUser_homeDirectory - The landing directory (folder)
-- for a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryMappings:DescribedUser',
-- describedUser_homeDirectoryMappings - Logical directory
-- mappings that specify what Amazon S3 or Amazon EFS paths and keys
-- should be visible to your user and how you want to make them visible.
-- You must specify the Entry and Target pair, where
-- Entry shows how the path is made visible and Target
-- is the actual Amazon S3 or Amazon EFS path. If you only specify a
-- target, it is displayed as is. You also must ensure that your Identity
-- and Access Management (IAM) role provides access to paths in
-- Target. This value can be set only when
-- HomeDirectoryType is set to LOGICAL.
--
-- In most cases, you can use this value instead of the session policy to
-- lock your user down to the designated home directory
-- ("chroot"). To do this, you can set Entry to '/' and
-- set Target to the HomeDirectory parameter value.
--
-- $sel:homeDirectoryType:DescribedUser',
-- describedUser_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:policy:DescribedUser', describedUser_policy - A
-- session policy for your user so that you can use the same Identity and
-- Access Management (IAM) role across multiple users. This policy scopes
-- down a user's access to portions of their Amazon S3 bucket. Variables
-- that you can use inside this policy include
-- ${Transfer:UserName}, ${Transfer:HomeDirectory}, and
-- ${Transfer:HomeBucket}.
--
-- $sel:posixProfile:DescribedUser',
-- describedUser_posixProfile - Specifies the full POSIX identity,
-- including user ID (Uid), group ID (Gid), and any
-- secondary groups IDs (SecondaryGids), that controls your
-- users' access to your Amazon Elastic File System (Amazon EFS) file
-- systems. The POSIX permissions that are set on files and directories
-- in your file system determine the level of access your users get when
-- transferring files into and out of your Amazon EFS file systems.
--
-- $sel:role':DescribedUser', describedUser_role - The
-- Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
-- role that controls your users' access to your Amazon S3 bucket or
-- Amazon EFS file system. The policies attached to this role determine
-- the level of access that you want to provide your users when
-- transferring files into and out of your Amazon S3 bucket or Amazon EFS
-- file system. The IAM role should also contain a trust relationship
-- that allows the server to access your resources when servicing your
-- users' transfer requests.
--
-- $sel:sshPublicKeys:DescribedUser',
-- describedUser_sshPublicKeys - Specifies the public key portion
-- of the Secure Shell (SSH) keys stored for the described user.
--
-- $sel:tags:DescribedUser', describedUser_tags - Specifies
-- the key-value pairs for the user requested. Tag can be used to search
-- for and group users for a variety of purposes.
--
-- $sel:userName:DescribedUser', describedUser_userName -
-- Specifies the name of the user that was requested to be described.
-- User names are used for authentication purposes. This is the string
-- that will be used by your user when they log in to your server.
--
-- $sel:arn:DescribedUser', describedUser_arn - Specifies
-- the unique Amazon Resource Name (ARN) for the user that was requested
-- to be described.
newDescribedUser :: Text -> DescribedUser
-- | Describes the properties of the specified workflow
--
-- See: newDescribedWorkflow smart constructor.
data DescribedWorkflow
DescribedWorkflow' :: Maybe Text -> Maybe [WorkflowStep] -> Maybe [WorkflowStep] -> Maybe (NonEmpty Tag) -> Maybe Text -> Text -> DescribedWorkflow
-- | Create a value of DescribedWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:description:DescribedWorkflow',
-- describedWorkflow_description - Specifies the text description
-- for the workflow.
--
-- $sel:onExceptionSteps:DescribedWorkflow',
-- describedWorkflow_onExceptionSteps - Specifies the steps
-- (actions) to take if errors are encountered during execution of the
-- workflow.
--
-- $sel:steps:DescribedWorkflow', describedWorkflow_steps -
-- Specifies the details for the steps that are in the specified
-- workflow.
--
-- $sel:tags:DescribedWorkflow', describedWorkflow_tags -
-- Key-value pairs that can be used to group and search for workflows.
-- Tags are metadata attached to workflows for any purpose.
--
-- $sel:workflowId:DescribedWorkflow',
-- describedWorkflow_workflowId - A unique identifier for the
-- workflow.
--
-- $sel:arn:DescribedWorkflow', describedWorkflow_arn -
-- Specifies the unique Amazon Resource Name (ARN) for the workflow.
newDescribedWorkflow :: Text -> DescribedWorkflow
-- | Reserved for future use.
--
-- See: newEfsFileLocation smart constructor.
data EfsFileLocation
EfsFileLocation' :: Maybe Text -> Maybe Text -> EfsFileLocation
-- | Create a value of EfsFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:fileSystemId:EfsFileLocation',
-- efsFileLocation_fileSystemId - The identifier of the file
-- system, assigned by Amazon EFS.
--
-- $sel:path:EfsFileLocation', efsFileLocation_path - The
-- pathname for the folder being used by a workflow.
newEfsFileLocation :: EfsFileLocation
-- | The virtual private cloud (VPC) endpoint settings that are configured
-- for your file transfer protocol-enabled server. With a VPC endpoint,
-- you can restrict access to your server and resources only within your
-- VPC. To control incoming internet traffic, invoke the
-- UpdateServer API and attach an Elastic IP address to your
-- server's endpoint.
--
-- After May 19, 2021, you won't be able to create a server using
-- EndpointType=VPC_ENDPOINT in your Amazon Web Servicesaccount
-- if your account hasn't already done so before May 19, 2021. If you
-- have already created servers with EndpointType=VPC_ENDPOINT
-- in your Amazon Web Servicesaccount on or before May 19, 2021, you will
-- not be affected. After this date, use
-- EndpointType=VPC.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- See: newEndpointDetails smart constructor.
data EndpointDetails
EndpointDetails' :: Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Maybe Text -> Maybe Text -> EndpointDetails
-- | Create a value of EndpointDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:addressAllocationIds:EndpointDetails',
-- endpointDetails_addressAllocationIds - A list of address
-- allocation IDs that are required to attach an Elastic IP address to
-- your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC and it is only valid in the UpdateServer API.
--
-- $sel:securityGroupIds:EndpointDetails',
-- endpointDetails_securityGroupIds - A list of security groups
-- IDs that are available to attach to your server's endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- You can edit the SecurityGroupIds property in the
-- UpdateServer API only if you are changing the
-- EndpointType from PUBLIC or VPC_ENDPOINT to
-- VPC. To change security groups associated with your server's
-- VPC endpoint after creation, use the Amazon EC2
-- ModifyVpcEndpoint API.
--
-- $sel:subnetIds:EndpointDetails',
-- endpointDetails_subnetIds - A list of subnet IDs that are
-- required to host your server endpoint in your VPC.
--
-- This property can only be set when EndpointType is set to
-- VPC.
--
-- $sel:vpcEndpointId:EndpointDetails',
-- endpointDetails_vpcEndpointId - The identifier of the VPC
-- endpoint.
--
-- This property can only be set when EndpointType is set to
-- VPC_ENDPOINT.
--
-- For more information, see
-- https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
--
-- $sel:vpcId:EndpointDetails', endpointDetails_vpcId - The
-- VPC identifier of the VPC in which a server's endpoint will be hosted.
--
-- This property can only be set when EndpointType is set to
-- VPC.
newEndpointDetails :: EndpointDetails
-- | Specifies the error message and type, for an error that occurs during
-- the execution of the workflow.
--
-- See: newExecutionError smart constructor.
data ExecutionError
ExecutionError' :: ExecutionErrorType -> Text -> ExecutionError
-- | Create a value of ExecutionError with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:type':ExecutionError', executionError_type -
-- Specifies the error type.
--
--
-- - ALREADY_EXISTS: occurs for a copy step, if the overwrite
-- option is not selected and a file with the same name already exists in
-- the target location.
-- - BAD_REQUEST: a general bad request: for example, a step
-- that attempts to tag an EFS file returns BAD_REQUEST, as only
-- S3 files can be tagged.
-- - CUSTOM_STEP_FAILED: occurs when the custom step provided
-- a callback that indicates failure.
-- - INTERNAL_SERVER_ERROR: a catch-all error that can occur
-- for a variety of reasons.
-- - NOT_FOUND: occurs when a requested entity, for example a
-- source file for a copy step, does not exist.
-- - PERMISSION_DENIED: occurs if your policy does not contain
-- the correct permissions to complete one or more of the steps in the
-- workflow.
-- - TIMEOUT: occurs when the execution times out.You can set
-- the TimeoutSeconds for a custom step, anywhere from 1 second
-- to 1800 seconds (30 minutes).
-- - THROTTLED: occurs if you exceed the new execution refill
-- rate of one workflow per second.
--
--
-- $sel:message:ExecutionError', executionError_message -
-- Specifies the descriptive message that corresponds to the
-- ErrorType.
newExecutionError :: ExecutionErrorType -> Text -> ExecutionError
-- | Specifies the steps in the workflow, as well as the steps to execute
-- in case of any errors during workflow execution.
--
-- See: newExecutionResults smart constructor.
data ExecutionResults
ExecutionResults' :: Maybe (NonEmpty ExecutionStepResult) -> Maybe (NonEmpty ExecutionStepResult) -> ExecutionResults
-- | Create a value of ExecutionResults with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:onExceptionSteps:ExecutionResults',
-- executionResults_onExceptionSteps - Specifies the steps
-- (actions) to take if errors are encountered during execution of the
-- workflow.
--
-- $sel:steps:ExecutionResults', executionResults_steps -
-- Specifies the details for the steps that are in the specified
-- workflow.
newExecutionResults :: ExecutionResults
-- | Specifies the following details for the step: error (if any), outputs
-- (if any), and the step type.
--
-- See: newExecutionStepResult smart constructor.
data ExecutionStepResult
ExecutionStepResult' :: Maybe ExecutionError -> Maybe Text -> Maybe WorkflowStepType -> ExecutionStepResult
-- | Create a value of ExecutionStepResult with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:error:ExecutionStepResult',
-- executionStepResult_error - Specifies the details for an error,
-- if it occurred during execution of the specified workflow step.
--
-- $sel:outputs:ExecutionStepResult',
-- executionStepResult_outputs - The values for the key/value pair
-- applied as a tag to the file. Only applicable if the step type is
-- TAG.
--
-- $sel:stepType:ExecutionStepResult',
-- executionStepResult_stepType - One of the available step types.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
newExecutionStepResult :: ExecutionStepResult
-- | Specifies the Amazon S3 or EFS file details to be used in the step.
--
-- See: newFileLocation smart constructor.
data FileLocation
FileLocation' :: Maybe EfsFileLocation -> Maybe S3FileLocation -> FileLocation
-- | Create a value of FileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:efsFileLocation:FileLocation',
-- fileLocation_efsFileLocation - Specifies the Amazon EFS
-- identifier and the path for the file being used.
--
-- $sel:s3FileLocation:FileLocation',
-- fileLocation_s3FileLocation - Specifies the S3 details for the
-- file being used, such as bucket, ETag, and so forth.
newFileLocation :: FileLocation
-- | Represents an object that contains entries and targets for
-- HomeDirectoryMappings.
--
-- The following is an Entry and Target pair example
-- for chroot.
--
--
-- [ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]
--
--
-- See: newHomeDirectoryMapEntry smart constructor.
data HomeDirectoryMapEntry
HomeDirectoryMapEntry' :: Text -> Text -> HomeDirectoryMapEntry
-- | Create a value of HomeDirectoryMapEntry with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:entry:HomeDirectoryMapEntry',
-- homeDirectoryMapEntry_entry - Represents an entry for
-- HomeDirectoryMappings.
--
-- $sel:target:HomeDirectoryMapEntry',
-- homeDirectoryMapEntry_target - Represents the map target that
-- is used in a HomeDirectorymapEntry.
newHomeDirectoryMapEntry :: Text -> Text -> HomeDirectoryMapEntry
-- | Returns information related to the type of user authentication that is
-- in use for a file transfer protocol-enabled server's users. A server
-- can have only one method of authentication.
--
-- See: newIdentityProviderDetails smart constructor.
data IdentityProviderDetails
IdentityProviderDetails' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> IdentityProviderDetails
-- | Create a value of IdentityProviderDetails with all optional
-- fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:directoryId:IdentityProviderDetails',
-- identityProviderDetails_directoryId - The identifier of the
-- Directory Service directory that you want to stop sharing.
--
-- $sel:function:IdentityProviderDetails',
-- identityProviderDetails_function - The ARN for a lambda
-- function to use for the Identity provider.
--
-- $sel:invocationRole:IdentityProviderDetails',
-- identityProviderDetails_invocationRole - Provides the type of
-- InvocationRole used to authenticate the user account.
--
-- $sel:url:IdentityProviderDetails',
-- identityProviderDetails_url - Provides the location of the
-- service endpoint used to authenticate users.
newIdentityProviderDetails :: IdentityProviderDetails
-- | Specifies the location for the file being copied. Only applicable for
-- the Copy type of workflow steps.
--
-- See: newInputFileLocation smart constructor.
data InputFileLocation
InputFileLocation' :: Maybe EfsFileLocation -> Maybe S3InputFileLocation -> InputFileLocation
-- | Create a value of InputFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:efsFileLocation:InputFileLocation',
-- inputFileLocation_efsFileLocation - Reserved for future use.
--
-- $sel:s3FileLocation:InputFileLocation',
-- inputFileLocation_s3FileLocation - Specifies the details for
-- the S3 file being copied.
newInputFileLocation :: InputFileLocation
-- | Lists the properties for one or more specified associated accesses.
--
-- See: newListedAccess smart constructor.
data ListedAccess
ListedAccess' :: Maybe Text -> Maybe Text -> Maybe HomeDirectoryType -> Maybe Text -> ListedAccess
-- | Create a value of ListedAccess with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:externalId:ListedAccess', listedAccess_externalId -
-- A unique identifier that is required to identify specific groups
-- within your directory. The users of the group that you associate have
-- access to your Amazon S3 or Amazon EFS resources over the enabled
-- protocols using Transfer Family. If you know the group name, you can
-- view the SID values by running the following command using Windows
-- PowerShell.
--
-- Get-ADGroup -Filter {samAccountName -like
-- "YourGroupName*"} -Properties * | Select
-- SamAccountName,ObjectSid
--
-- In that command, replace YourGroupName with the name of your
-- Active Directory group.
--
-- The regular expression used to validate this parameter is a string of
-- characters consisting of uppercase and lowercase alphanumeric
-- characters with no spaces. You can also include underscores or any of
-- the following characters: =,.@:/-
--
-- $sel:homeDirectory:ListedAccess',
-- listedAccess_homeDirectory - The landing directory (folder) for
-- a user when they log in to the server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryType:ListedAccess',
-- listedAccess_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:role':ListedAccess', listedAccess_role - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that controls your users' access to your Amazon S3 bucket or Amazon
-- EFS file system. The policies attached to this role determine the
-- level of access that you want to provide your users when transferring
-- files into and out of your Amazon S3 bucket or Amazon EFS file system.
-- The IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
newListedAccess :: ListedAccess
-- | Describes the properties of an agreement.
--
-- See: newListedAgreement smart constructor.
data ListedAgreement
ListedAgreement' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe AgreementStatusType -> ListedAgreement
-- | Create a value of ListedAgreement with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:agreementId:ListedAgreement',
-- listedAgreement_agreementId - A unique identifier for the
-- agreement. This identifier is returned when you create an agreement.
--
-- $sel:arn:ListedAgreement', listedAgreement_arn - The
-- Amazon Resource Name (ARN) of the specified agreement.
--
-- $sel:description:ListedAgreement',
-- listedAgreement_description - The current description for the
-- agreement. You can change it by calling the UpdateAgreement
-- operation and providing a new description.
--
-- $sel:localProfileId:ListedAgreement',
-- listedAgreement_localProfileId - A unique identifier for the
-- AS2 local profile.
--
-- $sel:partnerProfileId:ListedAgreement',
-- listedAgreement_partnerProfileId - A unique identifier for the
-- partner profile.
--
-- $sel:serverId:ListedAgreement', listedAgreement_serverId
-- - The unique identifier for the agreement.
--
-- $sel:status:ListedAgreement', listedAgreement_status -
-- The agreement can be either ACTIVE or INACTIVE.
newListedAgreement :: ListedAgreement
-- | Describes the properties of a certificate.
--
-- See: newListedCertificate smart constructor.
data ListedCertificate
ListedCertificate' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe POSIX -> Maybe CertificateStatusType -> Maybe CertificateType -> Maybe CertificateUsageType -> ListedCertificate
-- | Create a value of ListedCertificate with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:activeDate:ListedCertificate',
-- listedCertificate_activeDate - An optional date that specifies
-- when the certificate becomes active.
--
-- $sel:arn:ListedCertificate', listedCertificate_arn - The
-- Amazon Resource Name (ARN) of the specified certificate.
--
-- $sel:certificateId:ListedCertificate',
-- listedCertificate_certificateId - An array of identifiers for
-- the imported certificates. You use this identifier for working with
-- profiles and partner profiles.
--
-- $sel:description:ListedCertificate',
-- listedCertificate_description - The name or short description
-- that's used to identify the certificate.
--
-- $sel:inactiveDate:ListedCertificate',
-- listedCertificate_inactiveDate - An optional date that
-- specifies when the certificate becomes inactive.
--
-- $sel:status:ListedCertificate', listedCertificate_status
-- - The certificate can be either ACTIVE,
-- PENDING_ROTATION, or INACTIVE.
-- PENDING_ROTATION means that this certificate will replace the
-- current certificate when it expires.
--
-- $sel:type':ListedCertificate', listedCertificate_type -
-- The type for the certificate. If a private key has been specified for
-- the certificate, its type is CERTIFICATE_WITH_PRIVATE_KEY. If
-- there is no private key, the type is CERTIFICATE.
--
-- $sel:usage:ListedCertificate', listedCertificate_usage -
-- Specifies whether this certificate is used for signing or encryption.
newListedCertificate :: ListedCertificate
-- | Returns details of the connector that is specified.
--
-- See: newListedConnector smart constructor.
data ListedConnector
ListedConnector' :: Maybe Text -> Maybe Text -> Maybe Text -> ListedConnector
-- | Create a value of ListedConnector with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedConnector', listedConnector_arn - The
-- Amazon Resource Name (ARN) of the specified connector.
--
-- $sel:connectorId:ListedConnector',
-- listedConnector_connectorId - The unique identifier for the
-- connector.
--
-- $sel:url:ListedConnector', listedConnector_url - The URL
-- of the partner's AS2 endpoint.
newListedConnector :: ListedConnector
-- | Returns properties of the execution that is specified.
--
-- See: newListedExecution smart constructor.
data ListedExecution
ListedExecution' :: Maybe Text -> Maybe FileLocation -> Maybe ServiceMetadata -> Maybe ExecutionStatus -> ListedExecution
-- | Create a value of ListedExecution with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:executionId:ListedExecution',
-- listedExecution_executionId - A unique identifier for the
-- execution of a workflow.
--
-- $sel:initialFileLocation:ListedExecution',
-- listedExecution_initialFileLocation - A structure that
-- describes the Amazon S3 or EFS file location. This is the file
-- location when the execution begins: if the file is being copied, this
-- is the initial (as opposed to destination) file location.
--
-- $sel:serviceMetadata:ListedExecution',
-- listedExecution_serviceMetadata - A container object for the
-- session details that are associated with a workflow.
--
-- $sel:status:ListedExecution', listedExecution_status -
-- The status is one of the execution. Can be in progress, completed,
-- exception encountered, or handling the exception.
newListedExecution :: ListedExecution
-- | Returns properties of the host key that's specified.
--
-- See: newListedHostKey smart constructor.
data ListedHostKey
ListedHostKey' :: Maybe POSIX -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Text -> ListedHostKey
-- | Create a value of ListedHostKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:ListedHostKey',
-- listedHostKey_dateImported - The date on which the host key was
-- added to the server.
--
-- $sel:description:ListedHostKey',
-- listedHostKey_description - The current description for the
-- host key. You can change it by calling the UpdateHostKey
-- operation and providing a new description.
--
-- $sel:fingerprint:ListedHostKey',
-- listedHostKey_fingerprint - The public key fingerprint, which
-- is a short sequence of bytes used to identify the longer public key.
--
-- $sel:hostKeyId:ListedHostKey', listedHostKey_hostKeyId -
-- A unique identifier for the host key.
--
-- $sel:type':ListedHostKey', listedHostKey_type - The
-- encryption algorithm that is used for the host key. The Type
-- parameter is specified by using one of the following values:
--
--
-- ssh-rsa
-- ssh-ed25519
-- ecdsa-sha2-nistp256
-- ecdsa-sha2-nistp384
-- ecdsa-sha2-nistp521
--
--
-- $sel:arn:ListedHostKey', listedHostKey_arn - The unique
-- Amazon Resource Name (ARN) of the host key.
newListedHostKey :: Text -> ListedHostKey
-- | Returns the properties of the profile that was specified.
--
-- See: newListedProfile smart constructor.
data ListedProfile
ListedProfile' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe ProfileType -> ListedProfile
-- | Create a value of ListedProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedProfile', listedProfile_arn - The Amazon
-- Resource Name (ARN) of the specified profile.
--
-- $sel:as2Id:ListedProfile', listedProfile_as2Id - The
-- As2Id is the AS2-name, as defined in the RFC
-- 4130. For inbound transfers, this is the AS2-From header
-- for the AS2 messages sent from the partner. For outbound connectors,
-- this is the AS2-To header for the AS2 messages sent to the
-- partner using the StartFileTransfer API operation. This ID
-- cannot include spaces.
--
-- $sel:profileId:ListedProfile', listedProfile_profileId -
-- A unique identifier for the local or partner AS2 profile.
--
-- $sel:profileType:ListedProfile',
-- listedProfile_profileType - Indicates whether to list only
-- LOCAL type profiles or only PARTNER type profiles.
-- If not supplied in the request, the command lists all types of
-- profiles.
newListedProfile :: ListedProfile
-- | Returns properties of a file transfer protocol-enabled server that was
-- specified.
--
-- See: newListedServer smart constructor.
data ListedServer
ListedServer' :: Maybe Domain -> Maybe EndpointType -> Maybe IdentityProviderType -> Maybe Text -> Maybe Text -> Maybe State -> Maybe Int -> Text -> ListedServer
-- | Create a value of ListedServer with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:domain:ListedServer', listedServer_domain -
-- Specifies the domain of the storage system that is used for file
-- transfers.
--
-- $sel:endpointType:ListedServer',
-- listedServer_endpointType - Specifies the type of VPC endpoint
-- that your server is connected to. If your server is connected to a VPC
-- endpoint, your server isn't accessible over the public internet.
--
-- $sel:identityProviderType:ListedServer',
-- listedServer_identityProviderType - The mode of authentication
-- for a server. The default value is SERVICE_MANAGED, which
-- allows you to store and access user credentials within the Transfer
-- Family service.
--
-- Use AWS_DIRECTORY_SERVICE to provide access to Active
-- Directory groups in Directory Service for Microsoft Active Directory
-- or Microsoft Active Directory in your on-premises environment or in
-- Amazon Web Services using AD Connector. This option also requires you
-- to provide a Directory ID by using the
-- IdentityProviderDetails parameter.
--
-- Use the API_GATEWAY value to integrate with an identity
-- provider of your choosing. The API_GATEWAY setting requires
-- you to provide an Amazon API Gateway endpoint URL to call for
-- authentication by using the IdentityProviderDetails
-- parameter.
--
-- Use the AWS_LAMBDA value to directly use an Lambda function
-- as your identity provider. If you choose this value, you must specify
-- the ARN for the Lambda function in the Function parameter or
-- the IdentityProviderDetails data type.
--
-- $sel:loggingRole:ListedServer', listedServer_loggingRole
-- - The Amazon Resource Name (ARN) of the Identity and Access Management
-- (IAM) role that allows a server to turn on Amazon CloudWatch logging
-- for Amazon S3 or Amazon EFSevents. When set, you can view user
-- activity in your CloudWatch logs.
--
-- $sel:serverId:ListedServer', listedServer_serverId -
-- Specifies the unique system assigned identifier for the servers that
-- were listed.
--
-- $sel:state:ListedServer', listedServer_state - The
-- condition of the server that was described. A value of ONLINE
-- indicates that the server can accept jobs and transfer files. A
-- State value of OFFLINE means that the server cannot
-- perform file transfer operations.
--
-- The states of STARTING and STOPPING indicate that
-- the server is in an intermediate state, either not fully able to
-- respond, or not fully offline. The values of START_FAILED or
-- STOP_FAILED can indicate an error condition.
--
-- $sel:userCount:ListedServer', listedServer_userCount -
-- Specifies the number of users that are assigned to a server you
-- specified with the ServerId.
--
-- $sel:arn:ListedServer', listedServer_arn - Specifies the
-- unique Amazon Resource Name (ARN) for a server to be listed.
newListedServer :: Text -> ListedServer
-- | Returns properties of the user that you specify.
--
-- See: newListedUser smart constructor.
data ListedUser
ListedUser' :: Maybe Text -> Maybe HomeDirectoryType -> Maybe Text -> Maybe Int -> Maybe Text -> Text -> ListedUser
-- | Create a value of ListedUser with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:homeDirectory:ListedUser', listedUser_homeDirectory
-- - The landing directory (folder) for a user when they log in to the
-- server using the client.
--
-- A HomeDirectory example is
-- /bucket_name/home/mydirectory.
--
-- $sel:homeDirectoryType:ListedUser',
-- listedUser_homeDirectoryType - The type of landing directory
-- (folder) that you want your users' home directory to be when they log
-- in to the server. If you set it to PATH, the user will see
-- the absolute Amazon S3 bucket or EFS paths as is in their file
-- transfer protocol clients. If you set it LOGICAL, you need to
-- provide mappings in the HomeDirectoryMappings for how you
-- want to make Amazon S3 or Amazon EFS paths visible to your users.
--
-- $sel:role':ListedUser', listedUser_role - The Amazon
-- Resource Name (ARN) of the Identity and Access Management (IAM) role
-- that controls your users' access to your Amazon S3 bucket or Amazon
-- EFS file system. The policies attached to this role determine the
-- level of access that you want to provide your users when transferring
-- files into and out of your Amazon S3 bucket or Amazon EFS file system.
-- The IAM role should also contain a trust relationship that allows the
-- server to access your resources when servicing your users' transfer
-- requests.
--
-- The IAM role that controls your users' access to your Amazon S3 bucket
-- for servers with Domain=S3, or your EFS file system for
-- servers with Domain=EFS.
--
-- The policies attached to this role determine the level of access you
-- want to provide your users when transferring files into and out of
-- your S3 buckets or EFS file systems.
--
-- $sel:sshPublicKeyCount:ListedUser',
-- listedUser_sshPublicKeyCount - Specifies the number of SSH
-- public keys stored for the user you specified.
--
-- $sel:userName:ListedUser', listedUser_userName -
-- Specifies the name of the user whose ARN was specified. User names are
-- used for authentication purposes.
--
-- $sel:arn:ListedUser', listedUser_arn - Provides the
-- unique Amazon Resource Name (ARN) for the user that you want to learn
-- about.
newListedUser :: Text -> ListedUser
-- | Contains the identifier, text description, and Amazon Resource Name
-- (ARN) for the workflow.
--
-- See: newListedWorkflow smart constructor.
data ListedWorkflow
ListedWorkflow' :: Maybe Text -> Maybe Text -> Maybe Text -> ListedWorkflow
-- | Create a value of ListedWorkflow with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:arn:ListedWorkflow', listedWorkflow_arn - Specifies
-- the unique Amazon Resource Name (ARN) for the workflow.
--
-- $sel:description:ListedWorkflow',
-- listedWorkflow_description - Specifies the text description for
-- the workflow.
--
-- $sel:workflowId:ListedWorkflow',
-- listedWorkflow_workflowId - A unique identifier for the
-- workflow.
newListedWorkflow :: ListedWorkflow
-- | Consists of the logging role and the log group name.
--
-- See: newLoggingConfiguration smart constructor.
data LoggingConfiguration
LoggingConfiguration' :: Maybe Text -> Maybe Text -> LoggingConfiguration
-- | Create a value of LoggingConfiguration with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:logGroupName:LoggingConfiguration',
-- loggingConfiguration_logGroupName - The name of the CloudWatch
-- logging group for the Transfer Family server to which this workflow
-- belongs.
--
-- $sel:loggingRole:LoggingConfiguration',
-- loggingConfiguration_loggingRole - The Amazon Resource Name
-- (ARN) of the Identity and Access Management (IAM) role that allows a
-- server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon
-- EFSevents. When set, you can view user activity in your CloudWatch
-- logs.
newLoggingConfiguration :: LoggingConfiguration
-- | The full POSIX identity, including user ID (Uid), group ID
-- (Gid), and any secondary groups IDs (SecondaryGids),
-- that controls your users' access to your Amazon EFS file systems. The
-- POSIX permissions that are set on files and directories in your file
-- system determine the level of access your users get when transferring
-- files into and out of your Amazon EFS file systems.
--
-- See: newPosixProfile smart constructor.
data PosixProfile
PosixProfile' :: Maybe [Natural] -> Natural -> Natural -> PosixProfile
-- | Create a value of PosixProfile with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:secondaryGids:PosixProfile',
-- posixProfile_secondaryGids - The secondary POSIX group IDs used
-- for all EFS operations by this user.
--
-- $sel:uid:PosixProfile', posixProfile_uid - The POSIX
-- user ID used for all EFS operations by this user.
--
-- $sel:gid:PosixProfile', posixProfile_gid - The POSIX
-- group ID used for all EFS operations by this user.
newPosixProfile :: Natural -> Natural -> PosixProfile
-- | The protocol settings that are configured for your server.
--
-- See: newProtocolDetails smart constructor.
data ProtocolDetails
ProtocolDetails' :: Maybe (NonEmpty As2Transport) -> Maybe Text -> Maybe SetStatOption -> Maybe TlsSessionResumptionMode -> ProtocolDetails
-- | Create a value of ProtocolDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:as2Transports:ProtocolDetails',
-- protocolDetails_as2Transports - Indicates the transport method
-- for the AS2 messages. Currently, only HTTP is supported.
--
-- $sel:passiveIp:ProtocolDetails',
-- protocolDetails_passiveIp - Indicates passive mode, for FTP and
-- FTPS protocols. Enter a single IPv4 address, such as the public IP
-- address of a firewall, router, or load balancer. For example:
--
--
-- aws transfer update-server --protocol-details PassiveIp=0.0.0.0
--
--
-- Replace 0.0.0.0 in the example above with the actual IP
-- address you want to use.
--
-- If you change the PassiveIp value, you must stop and then
-- restart your Transfer Family server for the change to take effect. For
-- details on using passive mode (PASV) in a NAT environment, see
-- Configuring your FTPS server behind a firewall or NAT with Transfer
-- Family.
--
-- Special values
--
-- The AUTO and 0.0.0.0 are special values for the
-- PassiveIp parameter. The value PassiveIp=AUTO is
-- assigned by default to FTP and FTPS type servers. In this case, the
-- server automatically responds with one of the endpoint IPs within the
-- PASV response. PassiveIp=0.0.0.0 has a more unique
-- application for its usage. For example, if you have a High
-- Availability (HA) Network Load Balancer (NLB) environment, where you
-- have 3 subnets, you can only specify a single IP address using the
-- PassiveIp parameter. This reduces the effectiveness of having
-- High Availability. In this case, you can specify
-- PassiveIp=0.0.0.0. This tells the client to use the same IP
-- address as the Control connection and utilize all AZs for their
-- connections. Note, however, that not all FTP clients support the
-- PassiveIp=0.0.0.0 response. FileZilla and WinSCP do support
-- it. If you are using other clients, check to see if your client
-- supports the PassiveIp=0.0.0.0 response.
--
-- $sel:setStatOption:ProtocolDetails',
-- protocolDetails_setStatOption - Use the SetStatOption
-- to ignore the error that is generated when the client attempts to use
-- SETSTAT on a file you are uploading to an S3 bucket.
--
-- Some SFTP file transfer clients can attempt to change the attributes
-- of remote files, including timestamp and permissions, using commands,
-- such as SETSTAT when uploading the file. However, these
-- commands are not compatible with object storage systems, such as
-- Amazon S3. Due to this incompatibility, file uploads from these
-- clients can result in errors even when the file is otherwise
-- successfully uploaded.
--
-- Set the value to ENABLE_NO_OP to have the Transfer Family
-- server ignore the SETSTAT command, and upload files without
-- needing to make any changes to your SFTP client. While the
-- SetStatOption ENABLE_NO_OP setting ignores the
-- error, it does generate a log entry in Amazon CloudWatch Logs, so you
-- can determine when the client is making a SETSTAT call.
--
-- If you want to preserve the original timestamp for your file, and
-- modify other file attributes using SETSTAT, you can use
-- Amazon EFS as backend storage with Transfer Family.
--
-- $sel:tlsSessionResumptionMode:ProtocolDetails',
-- protocolDetails_tlsSessionResumptionMode - A property used with
-- Transfer Family servers that use the FTPS protocol. TLS Session
-- Resumption provides a mechanism to resume or share a negotiated secret
-- key between the control and data connection for an FTPS session.
-- TlsSessionResumptionMode determines whether or not the server
-- resumes recent, negotiated sessions through a unique session ID. This
-- property is available during CreateServer and
-- UpdateServer calls. If a TlsSessionResumptionMode
-- value is not specified during CreateServer, it is set to
-- ENFORCED by default.
--
--
-- - DISABLED: the server does not process TLS session
-- resumption client requests and creates a new TLS session for each
-- request.
-- - ENABLED: the server processes and accepts clients that
-- are performing TLS session resumption. The server doesn't reject
-- client data connections that do not perform the TLS session resumption
-- client processing.
-- - ENFORCED: the server processes and accepts clients that
-- are performing TLS session resumption. The server rejects client data
-- connections that do not perform the TLS session resumption client
-- processing. Before you set the value to ENFORCED, test your
-- clients.Not all FTPS clients perform TLS session resumption. So, if
-- you choose to enforce TLS session resumption, you prevent any
-- connections from FTPS clients that don't perform the protocol
-- negotiation. To determine whether or not you can use the
-- ENFORCED value, you need to test your clients.
--
newProtocolDetails :: ProtocolDetails
-- | Specifies the details for the file location for the file that's being
-- used in the workflow. Only applicable if you are using S3 storage.
--
-- See: newS3FileLocation smart constructor.
data S3FileLocation
S3FileLocation' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> S3FileLocation
-- | Create a value of S3FileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:bucket:S3FileLocation', s3FileLocation_bucket -
-- Specifies the S3 bucket that contains the file being used.
--
-- $sel:etag:S3FileLocation', s3FileLocation_etag - The
-- entity tag is a hash of the object. The ETag reflects changes only to
-- the contents of an object, not its metadata.
--
-- $sel:key:S3FileLocation', s3FileLocation_key - The name
-- assigned to the file when it was created in Amazon S3. You use the
-- object key to retrieve the object.
--
-- $sel:versionId:S3FileLocation', s3FileLocation_versionId
-- - Specifies the file version.
newS3FileLocation :: S3FileLocation
-- | Specifies the customer input S3 file location. If it is used inside
-- copyStepDetails.DestinationFileLocation, it should be the S3
-- copy destination.
--
-- You need to provide the bucket and key. The key can represent either a
-- path or a file. This is determined by whether or not you end the key
-- value with the forward slash (/) character. If the final character is
-- "/", then your file is copied to the folder, and its name does not
-- change. If, rather, the final character is alphanumeric, your uploaded
-- file is renamed to the path value. In this case, if a file with that
-- name already exists, it is overwritten.
--
-- For example, if your path is shared-files/bob/, your uploaded
-- files are copied to the shared-files/bob/, folder. If your
-- path is shared-files/today, each uploaded file is copied to
-- the shared-files folder and named today: each upload
-- overwrites the previous version of the bob file.
--
-- See: newS3InputFileLocation smart constructor.
data S3InputFileLocation
S3InputFileLocation' :: Maybe Text -> Maybe Text -> S3InputFileLocation
-- | Create a value of S3InputFileLocation with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:bucket:S3InputFileLocation',
-- s3InputFileLocation_bucket - Specifies the S3 bucket for the
-- customer input file.
--
-- $sel:key:S3InputFileLocation', s3InputFileLocation_key -
-- The name assigned to the file when it was created in Amazon S3. You
-- use the object key to retrieve the object.
newS3InputFileLocation :: S3InputFileLocation
-- | Specifies the key-value pair that are assigned to a file during the
-- execution of a Tagging step.
--
-- See: newS3Tag smart constructor.
data S3Tag
S3Tag' :: Text -> Text -> S3Tag
-- | Create a value of S3Tag with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:key:S3Tag', s3Tag_key - The name assigned to the
-- tag that you create.
--
-- $sel:value:S3Tag', s3Tag_value - The value that
-- corresponds to the key.
newS3Tag :: Text -> Text -> S3Tag
-- | A container object for the session details that are associated with a
-- workflow.
--
-- See: newServiceMetadata smart constructor.
data ServiceMetadata
ServiceMetadata' :: UserDetails -> ServiceMetadata
-- | Create a value of ServiceMetadata with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:userDetails:ServiceMetadata',
-- serviceMetadata_userDetails - The Server ID
-- (ServerId), Session ID (SessionId) and user
-- (UserName) make up the UserDetails.
newServiceMetadata :: UserDetails -> ServiceMetadata
-- | Provides information about the public Secure Shell (SSH) key that is
-- associated with a user account for the specific file transfer
-- protocol-enabled server (as identified by ServerId). The
-- information returned includes the date the key was imported, the
-- public key contents, and the public key ID. A user can store more than
-- one SSH public key associated with their user name on a specific
-- server.
--
-- See: newSshPublicKey smart constructor.
data SshPublicKey
SshPublicKey' :: POSIX -> Text -> Text -> SshPublicKey
-- | Create a value of SshPublicKey with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:dateImported:SshPublicKey',
-- sshPublicKey_dateImported - Specifies the date that the public
-- key was added to the user account.
--
-- $sel:sshPublicKeyBody:SshPublicKey',
-- sshPublicKey_sshPublicKeyBody - Specifies the content of the
-- SSH public key as specified by the PublicKeyId.
--
-- Transfer Family accepts RSA, ECDSA, and ED25519 keys.
--
-- $sel:sshPublicKeyId:SshPublicKey',
-- sshPublicKey_sshPublicKeyId - Specifies the
-- SshPublicKeyId parameter contains the identifier of the
-- public key.
newSshPublicKey :: UTCTime -> Text -> Text -> SshPublicKey
-- | Creates a key-value pair for a specific resource. Tags are metadata
-- that you can use to search for and group a resource for various
-- purposes. You can apply tags to servers, users, and roles. A tag key
-- can take more than one value. For example, to group servers for
-- accounting purposes, you might create a tag called Group and
-- assign the values Research and Accounting to that
-- group.
--
-- See: newTag smart constructor.
data Tag
Tag' :: Text -> Text -> Tag
-- | Create a value of Tag with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:key:Tag', tag_key - The name assigned to the tag
-- that you create.
--
-- $sel:value:Tag', tag_value - Contains one or more values
-- that you assigned to the key name you create.
newTag :: Text -> Text -> Tag
-- | Each step type has its own StepDetails structure.
--
-- The key/value pairs used to tag a file during the execution of a
-- workflow step.
--
-- See: newTagStepDetails smart constructor.
data TagStepDetails
TagStepDetails' :: Maybe Text -> Maybe Text -> Maybe (NonEmpty S3Tag) -> TagStepDetails
-- | Create a value of TagStepDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:name:TagStepDetails', tagStepDetails_name - The
-- name of the step, used as an identifier.
--
-- $sel:sourceFileLocation:TagStepDetails',
-- tagStepDetails_sourceFileLocation - Specifies which file to use
-- as input to the workflow step: either the output from the previous
-- step, or the originally uploaded file for the workflow.
--
--
-- - Enter ${previous.file} to use the previous file as the
-- input. In this case, this workflow step uses the output file from the
-- previous workflow step as input. This is the default value.
-- - Enter ${original.file} to use the originally-uploaded
-- file location as input for this step.
--
--
-- $sel:tags:TagStepDetails', tagStepDetails_tags - Array
-- that contains from 1 to 10 key/value pairs.
newTagStepDetails :: TagStepDetails
-- | Specifies the user name, server ID, and session ID for a workflow.
--
-- See: newUserDetails smart constructor.
data UserDetails
UserDetails' :: Maybe Text -> Text -> Text -> UserDetails
-- | Create a value of UserDetails with all optional fields omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:sessionId:UserDetails', userDetails_sessionId - The
-- system-assigned unique identifier for a session that corresponds to
-- the workflow.
--
-- $sel:userName:UserDetails', userDetails_userName - A
-- unique string that identifies a user account associated with a server.
--
-- $sel:serverId:UserDetails', userDetails_serverId - The
-- system-assigned unique identifier for a Transfer server instance.
newUserDetails :: Text -> Text -> UserDetails
-- | Specifies the workflow ID for the workflow to assign and the execution
-- role that's used for executing the workflow.
--
-- In additon to a workflow to execute when a file is uploaded
-- completely, WorkflowDeatails can also contain a workflow ID
-- (and execution role) for a workflow to execute on partial upload. A
-- partial upload occurs when a file is open when the session
-- disconnects.
--
-- See: newWorkflowDetail smart constructor.
data WorkflowDetail
WorkflowDetail' :: Text -> Text -> WorkflowDetail
-- | Create a value of WorkflowDetail with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:workflowId:WorkflowDetail',
-- workflowDetail_workflowId - A unique identifier for the
-- workflow.
--
-- $sel:executionRole:WorkflowDetail',
-- workflowDetail_executionRole - Includes the necessary
-- permissions for S3, EFS, and Lambda operations that Transfer can
-- assume, so that all workflow steps can operate on the required
-- resources
newWorkflowDetail :: Text -> Text -> WorkflowDetail
-- | Container for the WorkflowDetail data type. It is used by
-- actions that trigger a workflow to begin execution.
--
-- See: newWorkflowDetails smart constructor.
data WorkflowDetails
WorkflowDetails' :: Maybe [WorkflowDetail] -> Maybe [WorkflowDetail] -> WorkflowDetails
-- | Create a value of WorkflowDetails with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:onPartialUpload:WorkflowDetails',
-- workflowDetails_onPartialUpload - A trigger that starts a
-- workflow if a file is only partially uploaded. You can attach a
-- workflow to a server that executes whenever there is a partial upload.
--
-- A partial upload occurs when a file is open when the session
-- disconnects.
--
-- $sel:onUpload:WorkflowDetails', workflowDetails_onUpload
-- - A trigger that starts a workflow: the workflow begins to execute
-- after a file is uploaded.
--
-- To remove an associated workflow from a server, you can provide an
-- empty OnUpload object, as in the following example.
--
--
-- aws transfer update-server --server-id s-01234567890abcdef --workflow-details '{"OnUpload":[]}'
--
newWorkflowDetails :: WorkflowDetails
-- | The basic building block of a workflow.
--
-- See: newWorkflowStep smart constructor.
data WorkflowStep
WorkflowStep' :: Maybe CopyStepDetails -> Maybe CustomStepDetails -> Maybe DecryptStepDetails -> Maybe DeleteStepDetails -> Maybe TagStepDetails -> Maybe WorkflowStepType -> WorkflowStep
-- | Create a value of WorkflowStep with all optional fields
-- omitted.
--
-- Use generic-lens or optics to modify other optional
-- fields.
--
-- The following record fields are available, with the corresponding
-- lenses provided for backwards compatibility:
--
-- $sel:copyStepDetails:WorkflowStep',
-- workflowStep_copyStepDetails - Details for a step that performs
-- a file copy.
--
-- Consists of the following values:
--
--
-- - A description
-- - An S3 location for the destination of the file copy.
-- - A flag that indicates whether or not to overwrite an existing file
-- of the same name. The default is FALSE.
--
--
-- $sel:customStepDetails:WorkflowStep',
-- workflowStep_customStepDetails - Details for a step that
-- invokes a lambda function.
--
-- Consists of the lambda function name, target, and timeout (in
-- seconds).
--
-- $sel:decryptStepDetails:WorkflowStep',
-- workflowStep_decryptStepDetails - Undocumented member.
--
-- $sel:deleteStepDetails:WorkflowStep',
-- workflowStep_deleteStepDetails - Details for a step that
-- deletes the file.
--
-- $sel:tagStepDetails:WorkflowStep',
-- workflowStep_tagStepDetails - Details for a step that creates
-- one or more tags.
--
-- You specify one or more tags: each tag contains a key/value pair.
--
-- WorkflowStep, workflowStep_type - Currently, the
-- following step types are supported.
--
--
-- - COPY: Copy the file to another location.
-- - CUSTOM: Perform a custom step with an Lambda function
-- target.
-- - DELETE: Delete the file.
-- - TAG: Add a tag to the file.
--
newWorkflowStep :: WorkflowStep