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
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Concise view

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

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