7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

RandstadAdvent Calendar 2019

Day 2

社内アプリのログイン認証をGoogleにする

Last updated at Posted at 2019-12-01

#はじめに
今年もアドベントカレンダーの季節がやってきました。
僕のパートでは、実際に社内開発で検証したForgeの紹介をしていきます。

それと、去年のアドベントカレンダーの記事が地味にPVやらストックが増えていて、最近Outsystemsを導入している企業が増えているのかな?と感じました。これは嬉しいことですね。
外資系の社内SEに転職して、Outsystemsと出会った(環境構築編)

#想定読者
Outsystemsのログイン機構をGoogleにしようかな~と思っている方

#事前準備
下記googleLoginのForgeをダウンロードしてください
https://www.outsystems.com/forge/component-overview/3375/google-sign-in

GoogleのDevコンソールでOAuthのクライアントIDを発行する必要があります。
image.png

#できること
会社で利用しているメールのドメインがGoogleであれば、いちいちOutsystems上でユーザーとパスワードを用意しなくても、
Googleアカウント経由でログインが可能になる。

#中身の説明

最初からDEMO画面があります。

image.png

Googleで発行したクライアントIDをSitePropertyのClientIdにつっこみます。
写真.png

「Sign in With Google」をクリックすると、GoogleAPIとのRest通信がはしります。
Googleで発行したクライアントIDがミスっているとここで落ちます。
image.png

その後Notifiyにてログイン時のメールアドレスが渡されますので、
Outsystems側のEntityとAggregateのFilterで突合。
突合したユーザの存在をチェックして、ユーザーが存在すればログインが成功します。

image.png
image.png

#実際に企業で使う場合
NotifyGetMessageで取得した、対象のURLに対してRegex_Searchにて企業のドメイン以外ははじく処理をいれます。
image.png

それと、
もし新入社員や中途社員など新しいメンバーがJoinした場合、Entity側に対象のメールアドレスが登録されていない場合が想定されます。
その場合は、初回ログイン認証時時にユーザーを自動的に作ってあげると良いかもです。

#終わりに

ただのForgeの紹介になってしましたが、使ってみると便利だなと思いました。
中身の処理もすごいシンプルなので、自分色にカスタマイズしてみてはどうでしょうか。

###クリスマスまであと22日!

7
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?