Azure / Azure/AzureAuth

I can not generate token in the server side of shiny app

Aperta
#85 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
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

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.