I can not generate token in the server side of shiny app
- Lingua principale
- R
- Stelle
- 48
- Fork
- 23
- Merge medio
- 4h 2m
- PR unite (30g)
- 3
Descrizione
hi
I am developing the corporate shiny app via golem package and it is required to implement oath2.0 authentication and authorization workflow. For this purpose i am using the example specified [here](https://cran.r-project.org/web/packages/AzureAuth/vignettes/shiny.html).
**The ui section works well** (i am using the templeate as in example without any changes) -> i am logging in through microsoft login service -> redirect to the site specified in redirect_uri -> the app works as expected.
**The server generates an error**. The error is generated by get_azure_token(). I have used the same approach as in server section of the snippet -> applied the example as it is -> password = client_secret.
```
token <- AzureAuth::get_azure_token(
resource = c('my_resource/.default', 'openid')
,tenant = 'my_tenant_id'
,app = "my_app_id"
,password = client_secret
,auth_type = "authorization_code"
,auth_code = opts$code
,authorize_args = list(redirect_uri = redirect)
,version = 2
,use_cache = FALSE
)
```
**The error** is as follows:
```
[1] "start token generation ..."
Server did not provide a refresh token: you will have to reauthenticate to refresh.
Add the 'offline_access' scope to obtain a refresh token.
```
if i add 'offline_access' to the scope -> c('my_resource/.default', 'openid', 'offline_access') -> the error is changed to:
```
[1]"start token generation ..."
Warning: Error in as.vector: cannot coerce type 'environment' to vector of type 'character'
47: as.character.default
45: sprintf
40: server
3: runApp
2: print.shiny.appobj
1:
Error in as.vector(x, "character") :
cannot coerce type 'environment' to vector of type 'character'
```
I would be gratefull for any hint to resolve the issue.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Start with the AzureAuth::get_azure_token call in the issue and compare its server-side arguments with the linked AzureAuth Shiny example, especially the resource scopes, auth_code, and password values. Reproduce the call with and without offline_access and trace the resulting token object and error. Done means the server-side authorization-code flow generates a usable token without either reported error.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- azure, r
- Ambito
- authentication
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 35/100