#はじめに
今年もアドベントカレンダーの季節がやってきました。
僕のパートでは、実際に社内開発で検証したForgeの紹介をしていきます。
それと、去年のアドベントカレンダーの記事が地味にPVやらストックが増えていて、最近Outsystemsを導入している企業が増えているのかな?と感じました。これは嬉しいことですね。
外資系の社内SEに転職して、Outsystemsと出会った(環境構築編)
#想定読者
Outsystemsのログイン機構をGoogleにしようかな~と思っている方
#事前準備
下記googleLoginのForgeをダウンロードしてください
https://www.outsystems.com/forge/component-overview/3375/google-sign-in
GoogleのDevコンソールでOAuthのクライアントIDを発行する必要があります。
#できること
会社で利用しているメールのドメインがGoogleであれば、いちいちOutsystems上でユーザーとパスワードを用意しなくても、
Googleアカウント経由でログインが可能になる。
#中身の説明
最初からDEMO画面があります。
Googleで発行したクライアントIDをSitePropertyのClientIdにつっこみます。
「Sign in With Google」をクリックすると、GoogleAPIとのRest通信がはしります。
Googleで発行したクライアントIDがミスっているとここで落ちます。
その後Notifiyにてログイン時のメールアドレスが渡されますので、
Outsystems側のEntityとAggregateのFilterで突合。
突合したユーザの存在をチェックして、ユーザーが存在すればログインが成功します。
#実際に企業で使う場合
NotifyGetMessageで取得した、対象のURLに対してRegex_Searchにて企業のドメイン以外ははじく処理をいれます。
それと、
もし新入社員や中途社員など新しいメンバーがJoinした場合、Entity側に対象のメールアドレスが登録されていない場合が想定されます。
その場合は、初回ログイン認証時時にユーザーを自動的に作ってあげると良いかもです。
#終わりに
ただのForgeの紹介になってしましたが、使ってみると便利だなと思いました。
中身の処理もすごいシンプルなので、自分色にカスタマイズしてみてはどうでしょうか。
###クリスマスまであと22日!