Package-level declarations

Types

Link copied to clipboard
interface STS

Docs: https://docs.aws.amazon.com/STS/latest/APIReference/welcome.html

Link copied to clipboard
interface STSAction<R> : Action<Result<R, RemoteFailure>>

Functions

Link copied to clipboard
fun STS.Companion.Http(env: Map<String, String> = getenv(), http: HttpHandler = JavaHttpClient(), clock: Clock = systemUTC(), credentialsProvider: CredentialsProvider = CredentialsProvider.Environment(env), overrideEndpoint: Uri? = null): STS

Convenience function to create a STS from a System environment

fun STS.Companion.Http(env: Environment, http: HttpHandler = JavaHttpClient(), clock: Clock = systemUTC(), credentialsProvider: CredentialsProvider = CredentialsProvider.Environment(env), overrideEndpoint: Uri? = null): STS

Convenience function to create a STS from an http4k Environment

fun STS.Companion.Http(region: Region, credentialsProvider: CredentialsProvider, http: HttpHandler = JavaHttpClient(), clock: Clock = systemUTC(), overrideEndpoint: Uri? = null): STS

Standard HTTP implementation of STS

Link copied to clipboard
fun CredentialsProvider.Companion.STS(env: Map<String, String> = System.getenv(), http: HttpHandler = JavaHttpClient(), clock: Clock = Clock.systemUTC(), gracePeriod: Duration = ofSeconds(300)): CredentialsProvider
fun CredentialsProvider.Companion.STS(env: Environment, http: HttpHandler = JavaHttpClient(), clock: Clock = Clock.systemUTC(), gracePeriod: Duration = ofSeconds(300)): CredentialsProvider
fun CredentialsProvider.Companion.STS(sts: STS, roleArn: ARN, roleSessionName: RoleSessionName? = null, clock: Clock = Clock.systemUTC(), gracePeriod: Duration = ofSeconds(300)): CredentialsProvider

fun CredentialsProvider.Companion.STS(sts: STS, clock: Clock, gracePeriod: Duration, assumeRole: () -> STSAction<out AssumedRole>): CredentialsProvider

Refreshing credentials provider for getting credentials based on assuming a role in STS.

Link copied to clipboard
fun CredentialsChain.Companion.StsProfile(credentialsPath: Path, profileName: ProfileName, getStsClient: (AwsCredentials) -> STS, clock: Clock = Clock.systemUTC(), gracePeriod: Duration = Duration.ofSeconds(300), configPath: Path = credentialsPath.resolveSibling("config")): CredentialsChain
Link copied to clipboard
fun CredentialsProvider.Companion.STSWebIdentity(env: Map<String, String> = System.getenv(), http: HttpHandler = JavaHttpClient(), clock: Clock = Clock.systemUTC(), gracePeriod: Duration = Duration.ofSeconds(300)): CredentialsProvider
fun CredentialsProvider.Companion.STSWebIdentity(env: Environment, http: HttpHandler = JavaHttpClient(), clock: Clock = Clock.systemUTC(), gracePeriod: Duration = Duration.ofSeconds(300)): CredentialsProvider

fun CredentialsProvider.Companion.STSWebIdentity(region: Region, roleArn: ARN, webIdentityToken: () -> WebIdentityToken, roleSessionName: () -> RoleSessionName? = { null }, http: HttpHandler = JavaHttpClient(), clock: Clock = Clock.systemUTC(), gracePeriod: Duration = Duration.ofSeconds(300)): CredentialsProvider

Assume STS role using WebIdentityTokem