@sensenet/authentication-google
v2.1.3
Published
Client-side Google authentication provider for sensenet
Downloads
207
Readme
@sensenet/authentication-google
This package contains a client-side Google Oauth2 authentication provider for sensenet.
Install
# Yarn
yarn add @sensenet/authentication-google
# NPM
npm install @sensenet/authentication-google
Usage
Prerequisites
- sensenet 7.0 with an installed Google OAuth provider
- Google API Console project
- (optional) Google Platform Library or another Google OAuth component that can retrieve id_token
Setup
You can set up the Provider after creating your repository singleton with the addGoogleAuth method
import { Repository } from '@sensenet/client-core'
import { JwtService } from '@sensenet/authentication-jwt'
import { addGoogleAuth } from '@sensenet/authentication-google'
const repo = new Repository()
const jwt = new JwtService(repo)
const googleOauthProvider = addGoogleAuth(jwt, { clientId: '' })
Login
In your login component, you can use the following snippet. If you don't provide an id_token from an external component, the package will try to retrieve it using a popup window (in that case you have to enable popups and add a callback pointing to your window's origin)
// an example login method with an optional idToken:
async Login(idToken?: string){
try {
await googleOauthProvider.login(idToken);
console.log('Logged in');
} catch (error) {
console.warn('Error during login', error);
}
}