Biblioteka klienta interfejsów API Google dla środowiska .NET korzysta
client_secrets.json plików do przechowywania
client_id, client_secret i inne parametry OAuth 2.0.
client_secrets.json
jest plikiem w formacie JSON
zawierający identyfikator klienta, tajny klucz klienta i inne parametry OAuth 2.0.
Oto przykładowy plik client_secrets.json dla aplikacji internetowej:
{
"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"
}
}
Oto przykładowy plik client_secrets.json dla zainstalowanej aplikacji:
{
"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"
}
}Format określa jeden z 2 typów identyfikatorów klienta:
web: aplikacja internetowa.installed: zainstalowano aplikację.
Obiekty podrzędne web i installed mają
tych obowiązkowych członków:
-
client_id(ciąg znaków): identyfikator klienta. -
client_secret(ciąg znaków): tajny klucz klienta.
Wszyscy pozostali użytkownicy tego pliku są opcjonalna, biblioteka klienta .NET nie będzie ich używać.
Motywacja
Tradycyjnie dostawcy punktów końcowych OAuth 2.0 muszą oczekiwać,
użytkowników korzystających z ich usług do skopiowania i wklejenia identyfikatora klienta.
ze strony rejestracji
do działającego kodu.
Ta metoda jest podatna na błędy i daje niepełny obraz
które są niezbędne do działania protokołu OAuth 2.0.
Protokół OAuth 2.0 wymaga też znajomości wszystkich punktów końcowych,
i konfigurowanie identyfikatora URI przekierowania).
Jeśli dostawcy usług udostępniają plik client_secrets.json do pobrania
a biblioteki klienta są gotowe do ich przetwarzania,
to wdrożenie protokołu OAuth 2.0 będzie łatwiejsze i mniej podatne na błędy.