Cette fonction permet de s'authentifier via une application créée sur
api.insee.fr : elle renvoie un jeton d'accès
valide qui peut ensuite être passé en valeur du paramètre token
de
la fonction httr::config().
Usage
insee_auth(
new_auth = FALSE,
appname = "DefaultApplication",
key = Sys.getenv("INSEE_APP_KEY"),
secret = Sys.getenv("INSEE_APP_SECRET"),
validity_period = 604800,
api = c("Sirene - V3", "Nomenclatures - v1", "DonneesLocales - V0.1", "BDM - V1"),
cache = FALSE,
verbose = TRUE,
insee_url = getOption("apinsee.url")
)
Arguments
- new_auth
booléen, valeur par défaut :
FALSE
. PasserTRUE
si vous souhaitez révoquer le jeton d'accès et vous authentifier à nouveau.- appname
nom de l'application.
- key, secret
clef et secret du consommateur.
- validity_period
entier, durée de validité du jeton d'accès en secondes.
- api
Un vecteur de chaînes de caractères dont chaque élément comprend le ou les noms des API accessibles par l'application. La correspondance partielle est acceptée.
- cache
booléen indiquant si
apinsee
doit sauvegarder les jetons d'accès dans un fichier cache, par défaut.httr-oauth
.- verbose
booléen; souhaitez-vous des messages d'information ?
- insee_url
Adresse du site fournissant les API. Ce paramètre n'est utile que pour un usage interne à l'Insee, voir la section "Utilisation interne à l'Insee".
Value
Un objet représentant un token pouvant être passé en valeur du
paramètre token
de la fonction httr::config().
Details
Le couple clef du consommateur/secret du consommateur de l'application
devant rester secret, il est vivement recommandé de ne jamais l'inclure
dans un programme. La pratique recommandée est d'utiliser des variables
d'environnement pour stocker ces informations. La fonction insee_auth()
utilise deux variables d'environnement nommées INSEE_APP_KEY
et
INSEE_APP_SECRET
. Une fois renseignées, l'authentification s'effectue par
un simple appel à la fonction insee_auth()
.
Les variables d'environnement peuvent être déclarées dans le fichier
.Renviron
. La modification de ce fichier peut s'effectuer
facilement grâce la fonction usethis::edit_r_environ().
Utilisation interne à l'Insee
Dans le cas d'utilisation standard, la valeur de l'option apinsee.url
est
"https://api.insee.fr/"
. Il n'est pas utile de la modifier sauf pour les
agents de l'Insee qui souhaiteraient utiliser les plateformes de test, de
recette ou de pré-production. Dans ce cas, afin de rendre les programmes
portables d'un environnement à un autre.il est préférable de déclarer
l'adresse en modifiant l'option apinsee.url
:
options(apinsee.url = "<URL>")
.
Examples
# Modify the following option to access to a different url
# options(apinsee.url = "https://api.insee.fr/")
library(apinsee)
library(httr)
# Set the environment variables INSEE_APP_KEY and INSEE_APP_SECRET in the .Renviron file
if (all(nzchar(Sys.getenv(c("INSEE_APP_KEY", "INSEE_APP_SECRET"))))) {
# retrieve the token
token <- insee_auth()
# use the token
set_config(config(token = token))
}