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リージョン |