The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Type: Package
Title: Authentication for 'Shiny' Apps with 'Amazon Cognito'
Version: 1.0.5
Description: Provides authentication for Shiny applications using 'Amazon Cognito' ( https://aws.amazon.com/es/cognito/).
Imports: shiny, config, shinyjs, httr, dplyr, base64enc, jsonlite, paws
License: GPL-3
BugReports: https://github.com/chi2labs/cognitoR/issues
Encoding: UTF-8
RoxygenNote: 7.2.3
Suggests: knitr, rmarkdown
VignetteBuilder: knitr
NeedsCompilation: no
Packaged: 2024-01-29 15:51:31 UTC; r227303
Author: Pablo Pagnone [aut, cre], Aleksander Dietrichson [aut]
Maintainer: Pablo Pagnone <pablodp84@gmail.com>
Repository: CRAN
Date/Publication: 2024-01-30 16:10:02 UTC

Allow create an user in Cognito Pool

Description

This method is working with amazing package "paws" , so you need to have the required AWS secret and access key (see example).

Usage

cognito_add_account(
  cognito_config,
  Username,
  UserAttributes,
  DesiredDeliveryMediums,
  ...
)

Arguments

cognito_config

- Cognito Config list

Username

- Username to use in Cognito - This can be a username, email ,phone depending configuration in Amazon Pool.

UserAttributes

- User attributes: This can be multiples attributes, depends of configuration in Amazon Pool.

DesiredDeliveryMediums

- Medium to delivert email when user is created, can be EMAIL or SMS

...

extra params to pass to method paws::admin_create_user

Details

Also needs to have the config for cognitoR. Specially the pool Id (group_id in config), where the new user is created.

Value

boolean

Examples

## Not run: 
Sys.setenv(
AWS_ACCESS_KEY_ID = '',
AWS_SECRET_ACCESS_KEY = '',
AWS_REGION = ''
)
cognito_add_account("account@mail.com",
                    UserAttributes = list(list(Name = "email", Value = "account@mail.com"),
                                          list(Name = "phone_number", Value = "+12123212312321")
                                     ),
                    DesiredDeliveryMediums = "EMAIL"
                    )

## End(Not run)

Cognito Shiny Module Server

Description

A shiny server function to implement Cognito Authentication in your shiny app.

Usage

cognito_server(
  input,
  output,
  session,
  with_cookie = FALSE,
  cookiename = "cognitor",
  cookie_expire = 7
)

Arguments

input

- Shiny input

output

- Shiny Output

session

- Shiny Session

with_cookie

- Create a own cookie when is authenticated in Cognito.

cookiename

- name for cookie

cookie_expire

- Expiration time for cookie

Value

reactiveValues (isLogged and userdata) and a callback function to do logout in Cognito.

Author(s)

Pablo Pagnone


Cognito Shiny Module UI

Description

A Shiny UI function to be used to implement Amazon Cognito in your shiny app. This UI loads the required JS.

Usage

cognito_ui(id)

Arguments

id

character - Namespace ID

Value

A Shiny UI

Author(s)

Pablo Pagnone

Examples

cognito_ui("demo")

Description

This server module returns a list with methods to interact with cookie created via JS. You have:

Usage

cookie_server(input, output, session, cookie_name = "user", cookie_expire = 7)

Arguments

input

shiny input

output

shiny output

session

shiny session

cookie_name

character - Name of cookie to create

cookie_expire

numeric - Expiration timeof cookie

Details

Value

list of reactive element and function to manage cookies

Author(s)

Pablo Pagnone

Examples

cookie_server(NULL,NULL,NULL)

Description

This UI module load the required js methods to create/remove/get cookie in browser.

Usage

cookie_ui(id)

Arguments

id

character

Value

a Shiny UI

Examples

cookie_ui("cookie")

Logout Shiny Module Server

Description

Receive a reactive element (isLogged), when is TRUE the logout button and information about is shown.

Usage

logout_server(
  input,
  output,
  session,
  isLogged = reactive(FALSE),
  textlogged = "You are logged in"
)

Arguments

input

Shiny input

output

Shiny output

session

Shiny session

isLogged

reactive

textlogged

character

Value

reactive (the logout button)

Examples

logout_server(NULL, NULL, NULL)

Logout Shiny Module UI

Description

Return a UI with a logout button and information about user logged. By default is hidden and is show with reactive element from logoutServer

Usage

logout_ui(id, textbutton = "Log out", classbutton = "btn-logout btn-danger")

Arguments

id

character

textbutton

character

classbutton

character

Value

Shiny UI

Examples

logout_ui("test")

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.