shinyOAuth: OIDC Authentication and OAuth Authorization for 'shiny' Applications

Provides a simple, configurable framework for 'OpenID Connect' (OIDC) authentication and 'OAuth 2.0' authorization in 'shiny' applications using 'S7' classes. Defines providers, clients, and tokens, as well as various supporting functions and a 'shiny' module. Features include cross-site request forgery (CSRF) protection, state encryption, 'Proof Key for Code Exchange' (PKCE) handling, validation of OIDC identity tokens (nonces, signatures, claims), automatic user info retrieval for OIDC and supported 'OAuth' providers, asynchronous flows, and hooks for audit logging.

Version: 0.6.0
Depends: R (≥ 4.1.0)
Imports: S7 (≥ 0.2.0), R6 (≥ 2.0), rlang (≥ 1.0.0), shiny (≥ 1.7.0), jsonlite (≥ 1.0), openssl (≥ 2.0.0), httr2 (≥ 1.1.0), curl, urltools (≥ 1.7.3), cachem (≥ 1.1.0), jose (≥ 1.2.0), lifecycle (≥ 1.0.0), cli (≥ 3.0.0), htmltools (≥ 0.5.0), otel (≥ 0.2.0)
Suggests: bslib, ggplot2, purrr, dplyr, testthat (≥ 3.2.2), DT, knitr, rmarkdown, webfakes, promises, mirai (≥ 2.5.1), future, withr, later, callr, processx, pkgload, chromote, sodium, shinytest2, xml2, otelsdk
Published: 2026-09-17
DOI: 10.32614/CRAN.package.shinyOAuth
Author: Luka Koning [aut, cre, cph]
Maintainer: Luka Koning <koningluka at gmail.com>
BugReports: https://github.com/lukakoning/shinyOAuth/issues
License: MIT + file LICENSE
URL: https://github.com/lukakoning/shinyOAuth, https://lukakoning.github.io/shinyOAuth/
NeedsCompilation: no
Materials: README, NEWS
CRAN checks: shinyOAuth results

Documentation:

Reference manual: shinyOAuth.html , shinyOAuth.pdf
Vignettes: Advanced security configuration (source, R code)
Audit logging and hooks (source, R code)
Authentication flow (source, R code)
Example: Spotify login to display listening data (source, R code)
Keep and use multiple OAuth authorizations (source, R code)
OpenTelemetry logs and traces (source, R code)
Package options reference (source, R code)
Use SMART on FHIR from Shiny (source, R code)
Usage (source, R code)

Downloads:

Package source: shinyOAuth_0.6.0.tar.gz
Windows binaries: r-devel: shinyOAuth_0.5.0.zip, r-release: shinyOAuth_0.5.0.zip, r-oldrel: shinyOAuth_0.5.0.zip
macOS binaries: r-release (arm64): shinyOAuth_0.5.0.tgz, r-oldrel (arm64): shinyOAuth_0.6.0.tgz, r-release (x86_64): shinyOAuth_0.6.0.tgz, r-oldrel (x86_64): shinyOAuth_0.6.0.tgz
Old sources: shinyOAuth archive

Reverse dependencies:

Reverse suggests: arcgisutils

Linking:

Please use the canonical form https://CRAN.R-project.org/package=shinyOAuth to link to this page.