UseOnceSecret

ciris.UseOnceSecret
See theUseOnceSecret companion object
sealed abstract class UseOnceSecret

Secret configuration value which can only be used once before being nullified.

UseOnceSecret.apply wraps an Array[Char] ensuring the array is only accessed once and that the array is nullified once used. The array can be accessed with UseOnceSecret#useOnce or alternatively, through Resource using UseOnceSecret#resource.

ConfigValue#useOnceSecret can be used to wrap a value in UseOnceSecret, while also redacting sentitive details from errors.

Attributes

Companion
object
Source
UseOnceSecret.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Abstract methods

def resource[F[_]](implicit F: Sync[F]): Resource[F, Array[Char]]

Returns a Resource which accesses the underlying Array[Char] and nullifies it after use.

Returns a Resource which accesses the underlying Array[Char] and nullifies it after use.

In case the secret has already been used once, an IllegalStateException will instead be raised.

Attributes

Source
UseOnceSecret.scala
def useOnce[F[_], A](f: (Array[Char]) => F[A])(implicit F: Sync[F]): F[A]

Returns an effect running the specified function on the underlying Array[Char] and nullifies it afterwards.

Returns an effect running the specified function on the underlying Array[Char] and nullifies it afterwards.

In case the secret has already been used once, an IllegalStateException will instead be raised.

Attributes

Source
UseOnceSecret.scala