Skip to content

gargle 1.2.0

Compare
Choose a tag to compare
@jennybc jennybc released this 03 Jul 15:06

Workload identity federation

credentials_external_account() is a new function that implements "workload identity federation", a new (as of April 2021) keyless authentication mechanism.
This allows applications running on a non-Google Cloud platform, such as AWS, to access Google Cloud resources without using a conventional service account token, eliminating the security problem posed by long-lived, powerful service account credential files.

credentials_external_account() has been inserted into the default registry of credential-fetchers tried by token_fetch(), which makes it automatically available in certain wrapper packages, such as bigrquery.
credentials_app_default() recognizes the JSON configuration for an external account and passes such a call along to credentials_external_account().

This new feature is still experimental and currently only supports AWS.
This blog post provides a good high-level introduction to workload identity federation.

Other changes

The email argument of credentials_user_oauth2() accepts domain-only email specification via a glob pattern.
The goal is to make it possible for code like PKG_auth(email = "*@example.com") to identify a suitable cached token when executed on the machine of either [email protected] or [email protected].

gargle now throws errors via cli::cli_abort(), which means error messages now have the same styling as informational messages.

Dependency changes

aws.ec2metadata and aws.signature are new in Suggests.