1月末にリリースされたWorkLinkというサービスをさわってみました。
WorkLinkとはなにか
WorkLinkとはスマートフォンを利用して、イントラネットにセキュアに閲覧が利用を可能にする。というサービスです。
デバイス上の個人的なアクティビティはWorkLinkでは管理せず、イントラネットの情報もデバイスには残らないことでデバイス落としても無くしても、デバイス上に残らんから! みたいな。
iOS12が対応中でとandroidにも対応予定となっています。 課金形態は1ユーザーあたり5ドルです。
利用に必要な最低限の情報やサービス
- AWSアカウント
- IdP
- SAML 2.0に準拠していること
- クローズドなサイト
- safariが利用できるスマートフォン(iOS12以上)
WorkLinkを利用できるリージョン
まだリリースされたばかりなのかは知りませんが、バージニア北部/オハイオ/アイルランド/オレゴンのみでの稼働です。
とりあえず私はなんにも考えずにオレゴンで試してみました。
参考にしたサイト
を参考にしました。
実際の手順
目指したものの構成図
Work Linkはクローズドなページをセキュアに見ることができるという謳い文句のサービスですが、うちにちょうどいいものがなんかったので突貫でクローズドなページを作成しました。 その構成図。
IAMでロールを作成する
AWSにアクセスし、IAMを選択します。 ロールの作成を行います。
Select type of trusted entity
ではAWS Serviceを選択し、Choose the service that will use this role
の下の方にWorkLinkがあるので選択
そこからずっとNextで進み続けロールを完成させる。
ロール名
のみAWSRoleForWorklink
と指定があるので気をつけてください。
Work LinkでFleetsをつくる
Fleetsは一つのディレクトリ的な存在です。 Create
で作成します。
Networkの設定
ネットワークの設定をします。VPN、サブネット、SGの設定を行います。 VPNは今回接続したいページのオリジンサーバーへのパスを持つか、または付与されている必要があります。 VPCピア接続や、AWS Direct Connect またはIPsec トンネルにも対応しています。 サブネットは2つ以上の設定が必要です。 SGは、WorkLinkのデフォルトのものを利用しました。
IdPの設定
Identity provider (IdP)の設定を行います。 IdPはSAML2.0のみ対応しています。 WorkLinkではメタデータのダウンロードとアップデートが可能になるので、手順は簡単です。 IdP側はサービスによりますが、私が試したPing OneではWorkLinkからダウンロードしたメタデータを食わせただけで、Attribute Mappingまで完了してくれました。
なぜIdPの設定をするかというと、ユーザーの管理はIdPに依存してるからみたいです。IdPを利用していないとWorkLinkは利用できない。
Domainの登録
この設定でみたいページの関連付けを行います。 ドメインの登録を行いますが、これはDNS検証/mail検証のいずれかです。 私はDNS検証を利用をしましたが、検証が終わるまでだいたい3時間くらいでした。
いろいろ登録しようとしてみた結果、ポート指定は不可なのもわかりました。 あくまでドメインだけの登録ができるらいしい。
ユーザー登録
WrokLinkのコンソール上にもUser invitesというページはありますが、このページはE mailのテンプレートを用意してくれてるだけです。 今のところ、invitesするための便利な機能はない模様。 メールなりSlackなりで利用方法をアナウンスして、利用を促す以外方法しか今はないみたいです。
ユーザー管理
一度でもWorkLinkを利用したユーザーは、ユーザー一覧に表示されます。 ユーザー情報はIdPの情報になります。 得られるのはメールアドレスとデバイスの数です。
デバイス管理
Device ID/OS/Model/userの情報が得られます。
OSはApple,userはメールアドレスが表示されるのですが、Device IDとModelはどこの情報なのかよくわからないです。
iPhone XRでiOS12以上の端末でiPhone11,2とでる iPhone 7でiOS12以上の端末でiPhone9,1とでます。
この情報もユーザー情報と同じくIdP経由だと思われますが、IdP側からデバイス情報確認するとこのような表示ではないので、どうしてこうなっているのかはまったくわからないって感じです。 まじでどうしてそうなったんだろう
そのほかの設定はオプション
利用可能なデバイスのポリシーや監査ログなど他にもいろいろ設定ができますが、オプションです。
とりあえず、Fleetsの作成しネットワークの設定、IdPの設定、ドメインの登録まで行えれば、指定したサイトにアクセスができる。までのWorkLinkの設定は終了です。
ユーザーはどのように利用するのか
設定は終わったので、実際にどう使うかの話になります。 App StoreからWorkLinkをダウンロードします。
Amazon WorkLink on the App Store
このアプリがVPN接続するトリガーになってくれます。
アプリを初回開くと、企業コードを入力する画面になります。 企業コードは、Fleetsのページ、User invites
のメールテンプレート内に記載があります。
このコードを入力すると、IdPのログイン画面が出てくるので、ログインする。
そうすると、VPNが繋がります。
VPNの接続時間
VPNの接続時間はこちらが設定でOFFするなり、スマホの電源をOFFにするなり意図的に切らない限りは、ずっと接続状態でした。 一回接続したら接続しっぱなし感あります。
IdP側でセッションの時間などを指定していても、それは影響されないようです。
それでいいのだろうか・・・
実際にWork Link経由でアクセスしてみる
いよいよ本題ですが、safariにURL直打ちします。
Work Linkのアプリ開いてね。という表示が出ます。
Authorize safari
とWorkLinkに遷移すればしたでsafariに戻されます。
Complete Safari authorization
と表示されるのでそれも選択すると、Work Link経由でのページの表示がされます。
ページが表示されて気がついたこと
ページは複数作っておいてアクセスをしてみたのですが、日本語の表示が今できません。 文字コードはUTF-8がデフォルトで利用中
オレゴンリージョンに建てたWindowsサーバでは日本語も表示されているので、apache側の問題ではないと思いますが、うーん。と、いったところです。
リンクとかはうまくいきました。 ページ遷移はできる。
ので、日本語だけ表示できないのを解決したいって感じです。
触ってみて思ったこと
利用するまでの設定は難しくなさそうですが、導入になったら大変そう。 ページ見るまでにそこそこページの遷移をしなきゃいけないので、そこは若干めんどくさいところがあります。
今リリースされたリージョン以外のリリースは2019年の後半以降らしいので、東京リージョンに早くてもそれくらい経たないとやっては来ないので、それまでになんかしらいろいろできるようになることは増えるのかなって思います。