Cross platform solution for securely storing sensitive data. This can either be used directly by the user or by other packages for storing e.g. web tokens or other secrets. The degree of security is detemined by the strength of the password as set by the user.
The agent works like a simple key-value store. The value can be any object that can be serialized by R such as a token or data frame. This API can either be called by the user or by other packages.
library(agent)
agent_set("my_secret_token", "ABCXYZ")
agent_get("my_secret_token")
## "ABCXYZ"
agent_has("my_secret_token")
## TRUE
agent_del("my_secret_token")
It is up to the user to protect the keystore with a password:
update_password()
The user will automatically be prompted for a password when the keystore needs to be unlocked, for example when a package needs to retrieve a secured token.