data_request_access {cyphr} | R Documentation |
User commands
Description
User commands
Usage
data_request_access(path_data = NULL, path_user = NULL, quiet = FALSE)
data_key(
path_data = NULL,
path_user = NULL,
test = TRUE,
quiet = FALSE,
cache = TRUE
)
Arguments
path_data |
Path to the data. If not given, then we look recursively down below the working directory for a ".cyphr" directory, and use that as the data directory. |
path_user |
Path to the directory with your user key.
Usually this can be omitted. This argument is passed in as both
|
quiet |
Suppress printing of informative messages. |
test |
Test that the encryption is working? (Recommended) |
cache |
Cache the key within the session. This will be
useful if you are using ssh keys that have passwords, as if the
key is found within the cache, then you will not have to
re-enter your password. Using |
Examples
# The workflow here does not really lend itself to an example,
# please see the vignette.
# Suppose that Alice has created a data directory:
path_alice <- tempfile()
cyphr::ssh_keygen(path_alice, password = FALSE)
path_data <- tempfile()
dir.create(path_data, FALSE, TRUE)
cyphr::data_admin_init(path_data, path_user = path_alice)
# If Bob can also write to the data directory (e.g., it is a
# shared git repo, on a shared drive, etc), then he can request
# access
path_bob <- tempfile()
cyphr::ssh_keygen(path_bob, password = FALSE)
hash <- cyphr::data_request_access(path_data, path_user = path_bob)
# Alice can authorise Bob
cyphr::data_admin_authorise(path_data, path_user = path_alice, yes = TRUE)
# After which Bob can get the data key
cyphr::data_key(path_data, path_user = path_bob)
# See the vignette for more details. This is not the best medium
# to explore this.
# Cleanup
unlink(path_alice, recursive = TRUE)
unlink(path_bob, recursive = TRUE)
unlink(path_data, recursive = TRUE)