Gebruiksscenario’s
- Gebruikersgerichte apps — gebruikers benaderen hun eigen Google Sheets
- Multi-tenant apps — verschillende gebruikers beheren verschillende spreadsheets
- Toegang tot persoonlijke data — lezen en schrijven in sheets van individuele gebruikersaccounts
- Desktop- en webapps — waar gebruikersinteractie mogelijk is
Vereisten
- Google Cloud Console-project
- Google Sheets API en Google Drive API ingeschakeld
- Laravel Socialite (aanbevolen)
Installatie
1
Google Cloud Console configureren
- Ga naar de Google Cloud Console
- Selecteer een project of maak een nieuw project aan
- Ga naar APIs & Services > Library
- Schakel de volgende API’s in:
- Google Sheets API
- Google Drive API
2
OAuth 2.0-inloggegevens aanmaken
- Ga naar APIs & Services > Credentials
- Klik op Create Credentials > OAuth client ID
- Configureer het OAuth-toestemmingsscherm (alleen de eerste keer):
- Kies External als gebruikerstype
- Vul de verplichte velden in (appnaam, support-e-mail, contactgegevens ontwikkelaar)
- Voeg scopes toe:
https://www.googleapis.com/auth/spreadsheetsenhttps://www.googleapis.com/auth/drive
- Kies Web application als applicatietype
- Voeg geautoriseerde redirect-URI’s toe:
- Ontwikkelomgeving:
http://localhost:8000/auth/google/callback - Productieomgeving:
https://yourdomain.com/auth/google/callback
- Ontwikkelomgeving:
- Klik op Create
- Kopieer de Client ID en het Client Secret
3
Laravel-omgeving configureren
Voeg toe aan je Werk
.env-bestand:config/google.php bij:4
Laravel Socialite installeren
config/services.php:5
Authenticatiecontroller implementeren
6
Routes toevoegen
7
User-model bijwerken
Migration:User-model:
8
Sheets gebruiken
Tokens verversen
Het pakket handelt het verlopen van tokens automatisch af:Middleware
Middleware die Google-authenticatie verplicht stelt:Beveiliging
1. Tokenopslag
- Sla tokens veilig op in de database
- Gebruik de ingebouwde encryptie van Laravel
- Stel tokens niet bloot aan de clientkant
2. Scopebeheer
- Vraag alleen de minimaal benodigde scopes aan
- Pas het principe van minimale rechten toe
- Leg gebruikers duidelijk uit welke rechten nodig zijn
3. Foutafhandeling
- Handel verlopen tokens netjes af
- Bied een gebruiksvriendelijke flow voor herauthenticatie
- Log en monitor fouten
Problemen oplossen
Veelvoorkomende fouten
Fout “redirect_uri_mismatch”- Controleer of de redirect-URI in de Google Console exact overeenkomt met je applicatie
- Controleer het verschil tussen http en https
- Controleer op een afsluitende slash
- Het token is verlopen en het verversen is mislukt
- Vraag de gebruiker om opnieuw te authenticeren
- Controleer of er een refreshtoken bestaat
- De gebruiker heeft de toestemming geweigerd
- Reageer met een passende melding
- Bied een optie om opnieuw te proberen te authenticeren