連携トークンを生成する
この文書は、連携に必要なトークンを生成する方法を説明します。
トークン情報
連携のためにエリスから提供 される必要な情報は以下の通りです。
- ユーザー識別子 (
uid
) : 特定のユーザーをユニークに識別するために必要な値です。- 貴社のLMSでログインに使用するユニークな文字列(ユーザーID、ユーザー名、メールアドレスなど)を使用できます。
- 貴社のLMSの受講申請の回数に応じてエリスで受講申請が行われるようにするには、uid** に回数情報を一緒に入れて使用できます。** エリスでは
uid
値が変わらなければ、既存の受講申請を修正する形で動作します。したがって、受講回数に応じて新たに受講申請が行われるようにするにはuid
値を変更する必要があります。例えば、貴社のLMSでユーザーのユーザー名がtest1
の場合、test1_20200801
とtest1_20200901
のように異なるuid
を設定してエリスで別個の連携アカウントとして処理させることができます。
- ユーザー名 (
fullname
) : エリスで特定のユーザーの名前を表示するために必要な値です。 - メールアドレス (
email
) : エリスで使用される各種メール連携基盤のサービスを利用するために必要な値です。- メールが存在しない場合、やむを得ず空の文字列を使用できますが、一部のサービス利用に制限がある場合があります。
- トークン生成時刻 (
ts
) : トークンを生成した時刻です。現在の時刻をミリ秒単位のエポックで使用します。トークンが漏洩した場合の再利用を防ぐために、生成時刻と使用時刻が300秒以上異なる場合、連携は拒否されます。
さらに、次のような情報を任意で提供できます。
- 科目ID (
courseId
) : エリスで自動的に登録される科目のIDです。該当IDはエリス側の科目IDを基準とします。- 別途カスタマイズを通じて、貴社のLMSで使用される科目IDを使用することも可能ですが、この場合は別途連携開発プロセスが必要となり、新しい科目を開設したり接続したりする際には事前協議を通じて貴社のLMSとエリス側の科目IDをマッピングする連携作業が必要です。
- ユーザー権限 (
userRole
) : ユーザーに権限を付与するために必要な値です。- 学生: 0 / 教育者: 10 / 管理者: 20
- 入力しない場合、学生権限が付与されます。
- 教育者および管理者権限は連携タイプが「ホーム連携」の場合に有効です。
トークン生成方法
トークンは、JSONシリアライズされたトークン情報を以下の暗号化およびシリアライズ方法のいずれかを使用して生成できます。連携開発の便利さの観点から、ウェブスタンダードであるJWT方式が推奨されます。追加のセキュリティ(機密性)が必要な場合はAES-CBC方式を使用できます。