La bibliothèque cliente des API Google pour .NET utilise des fichiers client_secrets.json
pour stocker les paramètres client_id
, client_secret
et d'autres paramètres OAuth 2.0.
Un fichier client_secrets.json
est un fichier au format JSON contenant l'ID client, le code secret du client et d'autres paramètres OAuth 2.0.
Voici un exemple de fichier client_secrets.json
pour une application Web:
{ "web": { "client_id": "asdfjasdljfasdkjf", "client_secret": "1912308409123890", "redirect_uris": ["https://www.example.com/oauth2callback"], "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://accounts.google.com/o/oauth2/token" } }
Voici un exemple de fichier client_secrets.json
pour une application installée:
{ "installed": { "client_id": "837647042410-75ifg...usercontent.com", "client_secret":"asdlkfjaskd", "redirect_uris": ["http://localhost"], "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://accounts.google.com/o/oauth2/token" } }
Le format définit l'un des deux types d'ID client:
web
: application Web.installed
: application installée.
Les sous-objets web
et installed
comportent les membres obligatoires suivants:
-
client_id
(chaîne): ID client. -
client_secret
(chaîne): le code secret du client.
Tous les autres membres de ce fichier sont facultatifs et la bibliothèque cliente .NET ne les utilise pas.
Motivation
Traditionnellement, les fournisseurs de points de terminaison OAuth 2.0 attendent de ceux qui utilisent leurs services qu'ils copient et collent l'ID client et le code secret du client depuis une page d'inscription dans un code fonctionnel.
Cette méthode est source d'erreurs et donne un aperçu incomplet des informations nécessaires au fonctionnement d'OAuth 2.0.
(OAuth 2.0 nécessite également de connaître tous les points de terminaison et de configurer un URI de redirection.)
Si les fournisseurs de services fournissent des fichiers client_secrets.json
téléchargeables et que les bibliothèques clientes sont prêtes à utiliser ces fichiers, la mise en œuvre d'OAuth 2.0 sera plus simple et moins sujette aux erreurs.