本文へ

Okta

Okta とつなぐ
(SSO・SCIM)

Okta の管理コンソールで、Aiyori のアプリを OpenID Connect で作り(SSO)、割り当てた社員とグループを SCIM 2.0 で Aiyori に送ります。

共通の値と、うまくいかないときの見る所は、会社の ID 基盤とつなぐのページにあります。画面の名前は、Okta のものを[]、Aiyori のものを「」で書いています(Okta は 2026 年 10 月時点の日本語の画面の名前に、英語の名前を添えています)。

要るもの

  • Okta の管理コンソール(https://(組織)-admin.okta.com)で、アプリケーションの管理者(Application Administrator)以上の役割。
  • SSO は、Okta の Single Sign-On で使えます。SCIM には Lifecycle Management が要ります。
  • Aiyori の組織の管理者が、講師の画面の「設定」→「会社の ID 基盤とつなぐ」を開けること。

1. アプリを作る(OpenID Connect)

  1. 管理コンソール →[アプリケーション(Applications)]→[アプリケーション]→[アプリ統合を作成(Create App Integration)]。
  2. サインイン方法は[OIDC - OpenID Connect]、アプリケーションタイプは[Webアプリケーション]→[次へ(Next)]。
  3. 下の表の値を入れて[保存(Save)]。
  4. [General]タブで、Client ID と Client secret を控えます。シークレットは、その行の目のマークで表示してコピーします。
  5. [クライアントの資格情報]の[編集]→[追加の検証としてPKCEを要求]にチェック →[保存(Save)]。クライアント認証は[クライアントシークレット](既定)のままです(Aiyori は PKCE を送ります)。
  6. Okta のダッシュボードのタイルから入れるようにするときは(任意)、[Login initiated by]を[Either Okta or App]にして、[Initiate login URI]に https://app.aiyori.app/api/web/sso/start?code=(組織コード)を入れます。
App integration name
Aiyori
Grant type
Authorization Code だけ(既定のまま)
Sign-in redirect URIs
https://app.aiyori.app/api/web/sso/callback
Sign-out redirect URIs
空のままでかまいません
Assignments
Limit access to selected groups(あとで割り当てる)か、Skip group assignment for now

2. Aiyori に入れる(SSO)

Aiyori の講師の画面 →「設定」→「会社の ID 基盤とつなぐ」→「SSO」に入れて、「保存する」を押します。

発行元の URL(Issuer)
https://(組織).okta.com(Okta の組織の認可サーバー。管理コンソールの URL から -admin を取ったもの)。独自のドメインを使っている会社は、その URL。
クライアント ID・クライアントシークレット
1 で控えたもの
受け付けるメールアドレスのドメイン
会社のメールのドメイン(1 行に 1 つ)

発行元は、末尾に /oauth2/default が付いたカスタムの認可サーバーでもかまいません(API Access Management を契約している会社)。どちらにするかは、ブラウザで発行元の URL のあとに /.well-known/openid-configuration を付けて開き、issuer の値と同じものを入れます。

[Assignments]タブで試す人を割り当て、Aiyori のログイン画面 →「会社のアカウントでログイン」→ 組織コード → Okta のログイン → Aiyori に戻れば、つながっています。管理者は、「自分で試しにログイン」の「自分の会社のアカウントで試す」でも試せます。

3. SCIM(Provisioning)

  1. Aiyori の「会社の ID 基盤とつなぐ」→「SCIM」で、「鍵の名前」に Okta と入れて「鍵を作る」→ 出てきた鍵を控えます(この画面でしか見えません)。
  2. Okta の Aiyori のアプリ →[General]タブ →[App Settings]の[Edit]→[Provisioning]で SCIM を選び、[Save]。この項目が出ないときは、下の 4 のやり方(SCIM を別のアプリでつなぐ)でつなぎます。
  3. [Provisioning]タブ →[Integration]→[Edit]で下の表の値を入れ、[Test Connector Configuration]で Create Users・Update User Attributes・Push Groups に印が付けば、[Save]。
  4. [Provisioning]タブ →[To App]→[Edit]→ Create Users・Update User Attributes・Deactivate Users を Enable にして、[Save]。Sync Password は入れません。新規ユーザーの作成時にパスワードを設定する項目は外します(Aiyori はパスワードを持ちません)。
  5. 属性の対応(Aiyori User Profile Mappings)は、既定のままでかまいません。userName が会社のメールアドレスになっていることを確かめます(既定は Okta のユーザー名で、ふつうはメールアドレスです)。
  6. [Assignments]タブで、Aiyori に入れるグループを割り当てます。割り当てた人が、Aiyori の受講者になります。
  7. [Push Groups]タブ →[+ Push Groups]→ 部署などのグループを選んで[Save]。Aiyori のグループになります。
SCIM connector base URL
https://app.aiyori.app/api/scim/v2
Unique identifier field for users
userName
Supported provisioning actions
Push New Users・Push Profile Updates・Push Groups にチェック(Import New Users and Profile Updates は要りません)
Authentication Mode
HTTP Header。Authorization(Bearer)に、1 で控えた鍵

4. SCIM を別のアプリでつなぐ(3 の項目が出ないとき)

OpenID Connect のアプリの[General]タブに、Provisioning の項目が出ないことがあります。そのときは、SCIM だけを Okta のカタログのアプリでつなぎます。

  1. [アプリケーション]→[アプリケーション]→[アプリカタログを参照(Browse App Catalog)]→ SCIM 2.0 Test App で探し、[SCIM 2.0テストアプリ(ヘッダー認証)](SCIM 2.0 Test App (Header Auth))→[統合を追加(Add Integration)]。
  2. 一般設定: アプリケーションラベルは Aiyori SCIM。[アプリケーションのアイコンをユーザーに表示しない]にチェックし(受講者にはタイルを見せません)、[ブラウザープラグインの自動送信]は外して[次へ(Next)]。
  3. サインオンオプションは、既定のままでかまいません(ログインは 1 のアプリで行うので、使いません)。[アプリケーションユーザー名の形式]をメールアドレスにして、[完了(Done)]。
  4. [プロビジョニング(Provisioning)]タブ →[API統合を構成(Configure API Integration)]→[API統合を有効化]にチェック → Base URL に https://app.aiyori.app/api/scim/v2、API Token に 3 の 1 で控えた鍵をそのまま貼り、[API資格情報をテスト(Test API Credentials)]→[保存(Save)]。
  5. あとは 3 の 4〜7 と同じです(To App・属性の対応・割り当て・Push Groups)。
  6. SSO のアプリ(Aiyori)と SCIM のアプリ(Aiyori SCIM)には、同じグループを割り当てます。

このアプリは、API Token の値を、前に Bearer を付けずにそのまま送ります。Aiyori は、どちらの形でも受け付けます。

5. つないだ日に確かめること

  • 割り当てた 1 人が、会社のアカウントで入れる。割り当てていない人は、Okta の画面で止まる。
  • 割り当てた人が Aiyori の受講者に出て、Push したグループに入っている。
  • その人の割り当てを外す(または Okta で Deactivate する)と、Aiyori で「会社の設定で停止中」になり、ログインできない。戻すと入れる。

Okta の決まりごと

  • 使う SCIM の操作は、ユーザーの作成・属性の更新・無効化(Deactivate)・グループの Push です。パスワードの同期と、Aiyori から Okta への取り込み(Import)は使いません。
  • 割り当てを外すと、Okta は active: false を送ります(DELETE は送りません)。Aiyori では、どちらも停止で、受講の記録は残ります。
  • SSO で入った人は、SCIM で作った受講者に、会社のメールアドレスで結び付きます。
  • SCIM の鍵に期限はありません。替えるときは、Aiyori で新しい鍵を作って Okta の Integration に入れなおしてから、古い鍵を「無効にする」にします。