Skip to contents

Shiny integration

oauth_ui()
Set up a Shiny UI for shinyOAuth
oauth_client()
Configure OAuth/OIDC client credentials and login settings
oauth_module_server()
OAuth 2.0 authorization and OIDC authentication module for Shiny
oauth_form_post_ui()
Wrap a Shiny UI to enable OAuth 2.0/OIDC form_post callbacks
use_shinyOAuth()
Add JavaScript dependency to the UI of a Shiny app

Object reference

OAuthProvider()
OAuthProvider S7 class
OAuthClient()
OAuthClient S7 class
OAuthToken()
OAuthToken S7 class
OAuthConnection
OAuthConnection R6 class

Provider configuration

Generic

oauth_provider()
Configure OAuth/OIDC provider endpoints and validation settings
oauth_provider_oidc()
Create a generic OpenID Connect (OIDC) OAuthProvider
oauth_provider_oidc_discover()
Discover and create an OpenID Connect (OIDC) OAuthProvider

Preconfigured

oauth_provider_apple()
Create an Apple OAuthProvider
oauth_provider_auth0()
Create an Auth0 OAuthProvider (via OIDC discovery)
oauth_provider_authentik()
Create an authentik OAuthProvider (via OIDC discovery)
oauth_provider_cognito()
Create an Amazon Cognito OAuthProvider (via OIDC discovery)
oauth_provider_github()
Create a GitHub OAuthProvider
oauth_provider_gitlab()
Create a GitLab OAuthProvider (via OIDC discovery)
oauth_provider_globus()
Create a Globus Auth OAuthProvider
oauth_provider_google()
Create a Google OAuthProvider
oauth_provider_huggingface()
Create a Hugging Face OAuthProvider (via OIDC discovery)
oauth_provider_keycloak()
Create a Keycloak OAuthProvider (via OIDC discovery)
oauth_provider_microsoft()
Create a Microsoft (Entra ID) OAuthProvider
oauth_provider_okta()
Create an Okta OAuthProvider (via OIDC discovery)
oauth_provider_orcid()
Create an ORCID OAuthProvider (via OIDC discovery)
oauth_provider_slack()
Create a Slack OAuthProvider (via OIDC discovery)
oauth_provider_spotify()
Create a Spotify OAuthProvider
oauth_provider_surfconext()
Create a SURFconext OAuthProvider (via OIDC discovery)

Provider-specific client settings

oauth_client_mtls_registration()
Prepare client-certificate registration settings (mTLS)
oauth_client_secret_apple()
Create a client secret for Sign in with Apple

Custom login handling

Advanced helpers for managing login without the Shiny module

prepare_call()
Prepare an OAuth 2.0 authorization request and build its URL
prepare_authorization_request()
Prepare a browser authorization request using GET or POST
handle_callback()
Handle OAuth 2.0 callback: verify state, swap code for token, verify token

Tokens and API requests

oauth_connection()
Make API requests with a Shiny session's current OAuth credentials
get_userinfo()
Fetch a user's profile (UserInfo)
refresh_token()
Refresh an OAuth 2.0 token
revoke_token()
Revoke an OAuth 2.0 token
introspect_token()
Introspect an OAuth 2.0 token
resource_req()
Prepare an API request with an access token
perform_resource_req()
Call an API with an access token
client_bearer_req() deprecated
Alias for resource_req()
perform_client_bearer_req() deprecated
Alias for perform_resource_req()

Deployment helpers

check_oauth21()
Assess an OAuth configuration against a pinned OAuth 2.1 draft
is_ok_host()
Check a URL against the package's host policy
custom_cache()
Create a custom state store or signing-key cache
error_on_softened() deprecated
Check selected debugging options (deprecated)

Multiple retained connections

oauth_connections() print(<OAuthConnections>)
Configure several independently managed OAuth connections
oauth_connections_ui()
Handle callbacks and establish the connection owner's browser session
oauth_connections_server()
Connect, restore and use several OAuth authorizations in a Shiny session
oauth_connection_store_memory() print(<OAuthConnectionStore>)
Create a process-local store for retained OAuth connections
oauth_browser_owner() oauth_account_owner() print(<OAuthOwnerPolicy>)
Configure ownership of retained OAuth connections

SMART on FHIR

smart_discover() experimental
Discover SMART on FHIR server metadata
smart_client() experimental
Configure a SMART on FHIR app registration
smart_launch_route() experimental
Register a SMART EHR launch entry route
smart_context() smart_patient() smart_fhir_user() experimental
Read a connection's current SMART context