Veleta Webアプリに外部認証サービスを連携してデータにアクセスできるユーザーを制限できます。
Webアプリ(Webクライアント)に外部認証サービス用の設定を追加することで、データにアクセスできるユーザーを制限できます。
利用できる外部認証サービスは Google, Microsoft, Auth0, Cognito の4種類です。
外部認証サービスを選択する
外部認証サービスは docker-compose.yml の環境変数 NUXT_PUBLIC_AUTH_TYPE で選択できます。
NUXT_PUBLIC_AUTH_TYPE で使用する外部認証サービスを設定したあと、認証に必要な設定値を下記のとおりセットしてください。
Google認証を利用する
Google認証を利用する場合まずはGoogle CloudでOAuthの設定をしてください。
設定するとクライアントID、クライアントシークレットが発行されるので、その値をそれぞれ下記の環境変数にセットしてください。
| 環境変数名 | 設定値 | 
| NUXT_PUBLIC_AUTH_TYPE | |
| NUXT_OAUTH_GOOGLE_CLIENT_ID | 発行されたクライアントID | 
| NUXT_OAUTH_GOOGLE_CLIENT_SECRET | 発行されたクライアントシークレット | 
| NUXT_OAUTH_GOOGLE_REDIRECT_URL | Veleta Webアプリを実行するURLに「/auth/google」を付け足した値 ※  ※ NUXT_OAUTH_GOOGLE_REDIRECT_URL で設定した値をGoogle OAuthの「承認済みのリダイレクトURI」にも設定する | 
Microsoft認証を利用する
Microsoft認証を利用する場合、まずはMicrosoft AzureでOAuthの設定をしてください。「リダイレクトURI」には[Veleta Webアプリを実行するURL]/auth/microsoftを指定してください。
※ http://localhost:3000で実行する場合http://localhost:3000/auth/microsoftと指定する
設定するとクライアントID、クライアントシークレット、テナントIDが発行されるので、その値をそれぞれ下記の環境変数にセットしてください。
| 環境変数名 | 設定値 | 
| NUXT_PUBLIC_AUTH_TYPE | microsoft | 
| NUXT_OAUTH_MICROSOFT_CLIENT_ID | 発行されたクライアントID | 
| NUXT_OAUTH_MICROSOFT_CLIENT_SECRET | 発行されたクライアントシークレット | 
| NUXT_OAUTH_MICROSOFT_TENANT | 発行されたテナントID | 
Auth0認証を利用する
Auth0認証を利用する場合、まずはAuth0でOAuthの設定をしてください。「Allowed Callback URLs」には[Veleta Webアプリを実行するURL]/auth/auth0を指定してください。
※ http://localhost:3000で実行する場合http://localhost:3000/auth/auth0と指定する
設定するとClient ID、Client Secret、Domainが発行されるのでその値を、それぞれ下記の環境変数にセットしてください。
| 環境変数名 | 設定値 | 
| NUXT_PUBLIC_AUTH_TYPE | auth0 | 
| NUXT_OAUTH_AUTH0_CLIENT_ID | 発行された Client ID | 
| NUXT_OAUTH_AUTH0_CLIENT_SECRET | 発行された Client Secret | 
| NUXT_OAUTH_AUTH0_DOMAIN | 発行された Domain | 
Cognito認証を利用する
Auth0認証を利用する場合、まずはAuth0でOAuthの設定をしてください。「リターンURL」には[Veleta Webアプリを実行するURL]/auth/cognitoを指定してください。
※ http://localhost:3000で実行する場合http://localhost:3000/auth/cognitoと指定する
設定するとユーザープールID、クライアントID、クライアントシークレットが発行されるので、その値をそれぞれ下記の環境変数にセットしてください。
| 環境変数名 | 設定値 | 
| NUXT_PUBLIC_AUTH_TYPE | cognito | 
| NUXT_OAUTH_COGNITO_USER_POOL_ID | ユーザープールID | 
| NUXT_OAUTH_COGNITO_CLIENT_ID | 発行されたクライアントID | 
| NUXT_OAUTH_COGNITO_CLIENT_SECRET | 発行されたクライアントシークレット | 
| NUXT_OAUTH_COGNITO_REGION | ユーザープールのAWSリージョン |