〈 HULFT Square 技術コラム【つないでみた編】 〉

HULFT Square 技術コラム【つないでみた編】一覧

技術コラム一覧

Vol.10
Oktaにつないでみた

はじめに

現代においてweb上では様々なwebサービスが存在しており、また利用されています。これに伴い、ユーザーは膨大な量のアカウント情報を所持することになり、それらの管理に手を煩わされることがしばしばあります。
この問題を解決するwebサービスが、Identity as a service(以下IDaaS)と呼ばれるものです。

Oktaとは

Oktaは、Okta社が提供するIDaaSです。
ユーザーアカウントを作成することで、アプリケーションの中に任意のユーザーやユーザーグループを作成することができます。そしてそれらのユーザーがアクセスするサービスのアカウント情報を保持し、SSOを可能にしたり、アクセスの制御を行うことができるようになります。
OktaではAPIによる各種処理が実装されており、RESTを使ったユーザーシステムとの連携が可能です。

検証内容

今回はHULFT Squareを活用して、以下の処理が実行できることを確認してきます。

  • ユーザの閲覧

事前準備

◎Okta設定

OktaのAPIを利用するためには、窓口となるアプリケーションの作成が必要です。
Oktaにログイン後、右上のハンバーガーメニューから[applications]>[applications]を選択します。
このタブでは、外部サービスとの連携に必要なアプリケーションの管理を行うことができます。
[Create App Integration]を選択してアプリケーションを作成します。

次に出てくる選択画面では、applicationの種別を選択することになります。[OIDC – Open ID Connect]を選択し、追加で表示されたapplicationの種類は[native application]としておきましょう。

アプリケーションの設定が完了次第、アプリケーションの詳細設定を行います。遷移して表示された設定タブではアプリケーション名のみ任意で設定して[save]を選択してください。
その後上述の画面に作成したアプリケーションが作成されているので、作成済みアプリケーションを選択することで開きます。

最初にgeneralタブの[client credentials]を確認します。当タブで確認すべき情報は以下となります。client credentialsの右端にあるeditを選択して設定を以下のように編集してください。

  • client idの確認(Authorizationで利用)
  • client secretの確認(client authenticationを[use client authentication]に設定の上、取得)
  • domainの確認(tokenURLの生成に必要)
  • applicationの詳細設定の確認
refresh tokenの設定(推奨)
redirect_URIの設定

Callback URL : https://app.square.hulft.com/v1/oauth2/callback
(任意で追加設定可能)

次にassignmentタブに移動して、ユーザーを追加します。Assignを選択して[add peaple]を選択します。表示されたリストから任意のユーザーをアサインします。
*このユーザーの情報を使ってauthorizationを行うため、ユーザーが存在しない場合は左上のハンバーガーメニューから[directory]>[peaple]を表示し、[add person]から必要情報を入力してユーザーを作成してください。

最後に、okta API scopeタブでアプリケーションのscopeを設定します。今回はユーザー操作を目的としてscopeを設定します。
[any]、または[not granted]から[okta.users.read]と[okta.users.manage]を探してGrantを選択します。
正しく処理された場合、[Granted]タブ内に[okta.users.read]と[okta.users.manage]が追加されます。

以上でOkta側での設定は完了です。

◎HULFT Square 設定

次に、Oktaに接続を行うHULFT Squareの設定を行っていきます。
初めに、コネクションを設定します。サイドメニューの[リソース]>[コネクション]を選択し[追加]をクリックして以下のように設定します。

コネクター : REST
種類 : REST接続設定
→次へ

名前 : okta_api_base ワークスペース : 任意
説明 : 任意
プロファイル : 任意
→次へ

  • URL :
    https://{OktaのURL}/api
    接続テストをクリックし、Integrationを選択して実行。成功と表示されればOK
    →次へ

設定内容を確認し、コネクション設定を完了します。

次にOAuth認証を設定します。
[リソース]>[Auth]を選択し[追加]をクリックして以下のように設定します。

  • コネクター :
    OAuth
  • 種類 :
    OAuth2.0 認証設定
    →次へ

名前 : okta_auth
ワークスペース : (任意)
説明 : (任意)
プロファイル : (任意)
→次へ

クライアントID : {Oktaで確認したclient_id}
クライアントシークレット : {Oktaで核にしたclient_secret}
認可エンドポイント : https://{OktaのURL}/oauth2/v1/authorize
トークンエンドポイント : https://{OktaのURL}/oauth2/v1/token
スコープ : okta.users.read openid offline_access
→[リフレッシュトークンを発行]を選択し、succeedと表示されれば設定に成功しています。次へをクリックします。

設定内容を確認してOAuth認証の設定も完了です。

以下、実際にHULFT SuareからRESTのGETリクエストを送信してユーザー情報を取得してみます。

スクリプトの作成を開始し、右のメニューから[ネットワーク]>[REST]>[get実行]をスクリプトのキャンバスにドロップします。配置したオブジェクトをクリックして開始される設定画面に設定を入力していきます。

必須設定タブ

接続先:先ほど作成した[okta_api_base]を選択します。
パス:今回利用するAPIのエンドポイントは[https://{OktaのURL}/api/v1/users]となるので、パスとして[/v1/users]を設定します。
エンドポイントの詳細は下記URLを参照してください。
https://developer.okta.com/docs/reference/api/users/

レスポンス設定タブ

データ出力形式:[ファイル]
ファイルパス:任意。HULFT Squareのrootディレクトリからの相対パスを入力します。今回は[/Personal/data/okta_response.json]と入力します。

認証設定タブ

[Authコネクションを利用]に設定し、追加で表示された接続先から先ほど作成した[okta_auth]を選択します。

以上でスクリプトの設定は完了です。
スクリプトを実行すると「okta_response.json」がHULFT Squareのストレージ上の「/Personal/data/okta_response.json」に作成されます。中身にOktaのユーザーの情報が記述されていることを確認してください。

おわりに

HULFT Squareを利用してOktaのユーザー情報を取得するところまでを確認しました。
今回実施した内容は簡単な接続の確認となりましたが、ユーザーの登録やアプリケーションのアサインなど、Oktaの様々な情報はAPIで制御することが可能です。これを機にOktaとの連携をHULFT Squareでお試しいただければと思います。

HULFT Square 技術コラム【つないでみた編】一覧

技術コラム一覧

Change Location

Are you visiting HULFT.com (Japanese language) outside Japan ?
When connecting "HULFT" to Japan from overseas, please select "HULFT8".

日本国外からHULFT.com(日本語)にアクセスされようとしています。
海外から日本の「HULFT」と接続する製品をお探しの場合、「HULFT8」をお選びください。