Class/Object

com.drobisch.tresor.vault

AWS

Related Docs: object AWS | package vault

Permalink

class AWS[F[_]] extends SecretEngineProvider[F, (AwsContext, VaultConfig)]

implementation of the vault AWS engine API

https://www.vaultproject.io/api/secret/aws/index.html

F

effect type to use

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AWS
  2. SecretEngineProvider
  3. HttpSupport
  4. Provider
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AWS()(implicit sync: Sync[F], clock: Clock[F])

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def autoRefresh(leaseRef: Ref[F, Option[Lease]], increment: Option[Long] = None, refreshRatio: Double = 0.5)(newLease: ReaderT[F, VaultConfig, Lease]): ReaderT[F, VaultConfig, Lease]

    Permalink

    Auto refresh a lease reference based on the current time.

    Auto refresh a lease reference based on the current time.

    This is not a continuous refresh, the flow is:

    1. if lease is not renewable or is expired, create a new one 2. if its not expired but half of the duration time has passed more time then configured by the refresh ratio: refresh the the lease 3. return current lease otherwise

    leaseRef

    a reference to the current (maybe empty) lease

    increment

    the increment to request in the renew

    refreshRatio

    the ratio of duration time that is allowed to pass before refreshing the lease

    newLease

    the fallback effect reader for creating a new lease

    returns

    an effect reader with the logic above applied

    Definition Classes
    SecretEngineProvider
  6. implicit val backend: SttpBackend[Id, Nothing]

    Permalink
    Attributes
    protected
    Definition Classes
    HttpSupport
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def createCredentials(awsContext: AwsContext): ReaderT[F, VaultConfig, Lease]

    Permalink

    create a aws engine credential

    create a aws engine credential

    https://www.vaultproject.io/api/secret/aws/index.html#generate-credentials

    awsContext

    context

    returns

    a new lease for aws resources

  9. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  11. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. def fromDto(dto: LeaseDTO, now: Long): Lease

    Permalink
    Attributes
    protected
    Definition Classes
    SecretEngineProvider
  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  15. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  16. val log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    SecretEngineProvider
  17. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  20. def parseLease(response: Response[String]): F[Lease]

    Permalink
    Attributes
    protected
    Definition Classes
    SecretEngineProvider
  21. def renew(lease: Lease, increment: Option[Long]): ReaderT[F, VaultConfig, Lease]

    Permalink

    renew a lease

    renew a lease

    https://www.vaultproject.io/api/system/leases.html#renew-lease

    lease

    a lease

    increment

    time to extend the lease in seconds

    returns

    extended lease

    Definition Classes
    SecretEngineProvider
  22. def secret(secretContext: (AwsContext, VaultConfig))(implicit secret: Secret[Lease]): F[Lease]

    Permalink
    Definition Classes
    AWSProvider
  23. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  24. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from HttpSupport

Inherited from Provider[F, (AwsContext, VaultConfig), Lease]

Inherited from AnyRef

Inherited from Any

Ungrouped