シングルサインオンURLの作成方法が変更になったことに伴い、URLを改めて作成していただく必要があります。
作成方法の詳細についてはを下記をご確認ください。
1-4-1.事前の設定
管理サイトログイン>サイトTOP(E-learning)>メニュー(基本設定)>ASP基本情報設定
シングルサインオン機能を利用する場合、E-learningASPのASP基本設定で「シングルサインオンを利用する」にチェックを入れてください。また、E-learningASPを利用していない場合、シングルサインオンでの遷移はできませんので、契約しているモジュールを再度確認してください。
さらに、シングルサインオンのハッシュ値を暗号化する際に利用する暗号化キーをメモしてください。
シングルサインオンURLの暗号化には、初期化ベクトル(IV)を設定する必要があります。初期化ベクトル(IV)には、任意の英数字小文字16文字を入力してください。
※「暗号化情報」については、13-01-3.暗号化情報に記載しておりますので、ご参照ください。
1-4-2.URLフォーマット
シングルサインオンURLのフォーマットは以下の通りです。
https://www.c-streaming.net/v5/e-learning/user/login.php?kaisha_id=【暗号化会社ID】&mode=single_sign_on&hash=【暗号化情報】
【暗号化会社ID】・・受講者サイトログイン用のURLに含まれているものと同様です。 【暗号化情報】・・AES128暗号化を実施したログインに必要な情報、すなわちログインID、パスワード、遷移先の画面ID、講座ID、講義ID、URLの有効期限などの情報を「&」でつないだ文字列を暗号化したものです。詳細は次章をご参照ください。 |
1-4-3.暗号化情報
1.暗号化前の値
暗号化情報は以下の文字列をAES128で暗号化し、URLエンコーディングをしたものになります。
kaisha_id=【会社ID】&user_login_id=【受講者ログインID】&password=【受講者パスワード】&【オプション情報】&page=【画面ID】&limit=【有効期限】 |
解説
【会社ID】・・会社ID
【画面ID】・・遷移先の画面ID。詳細は次章参照。
【受講者ログインID】・・ログインする受講者のID※メールアドレスか独自のログインID(※注1)
【受講者パスワード】・・ログインする受講者のパスワード(※注1)
【オプション情報】・・各画面ごとに指定できる、または指定が必須な項目。詳細は次章参照。
【有効期限】・・シングルサインオンURLの有効期限。この有効期限を過ぎると当該URLは利用できなくなります。半角数字16桁 (YYYYMMDDHHIISS) 。設定しなければ無期限になります。
(※注1) + / などの文字が含まれる場合
ログインIDやパスワードには、URLで利用される「+」や「/」といった文字が含まれることがあります。これらの文字をそのまま挿入すると、シングルサインオンURLが正常に生成できないため、ログインIDやパスワードは必ずURLエンコードするように注意してください。(詳細は「3.URLエンコード」を参照ください。)
参考
kaisha_id=OMIYA&user_login_id=test@test.com&password=pass0123!&course_id=C0000001&lecture_id=01&page=mplay&limit=20241231120930
2.暗号化
AES128での暗号化を行うには、暗号化キーと初期化ベクトル(IV)が必要です。事前に取得した暗号化キーと設定を行った初期化ベクトルに基づいて、AES128暗号化を実施してください。
暗号化に必要な設定情報は以下の通りです。
- 暗号化方式:AES
- 鍵のサイズ:128ビット
- 秘密鍵:事前に取得した暗号化キー
- 初期化ベクトル(IV):「13-01-1.事前の設定」で設定を行った初期ベクトル
- 暗号モード:CBC
- 出力フォーマット:Base64
- パディングスキーム:Pkcs7
以下のサイトでも暗号化が可能です。お手持ちのサイトやツールをお使いの場合は、そちらをご利用ください。
https://tophix.com/ja/development-tools/encrypt-text
【参考 講義視聴ページへ遷移するための暗号化情報】
・暗号化前
kaisha_id=OMIYA&user_login_id=test@test.com&password=pass0123!&course_id=C0000001&lecture_id=01&page=mplay&limit=20241231120930
・暗号化後(キー:yu5vogzbbftk2dfr 初期化ベクトル:g8feq4j79ey9j8kn)
x04iXLTp56TdBPBQOR2u2tiJRJLa8NR4+QkBhtm7l8UMxb6nJkSZLZu9IpNxxDwRTMzeKfXV8ZWNSCt+XdBZa6CoHhXTYPt3ifJHAEui/PEdBQ8VlkTHTOFM/WVzlxau9xlDjEWk5m6A50OWuu0opE/E5wWjv/tzV2myoswaHgs=
3.URLエンコード
作成したハッシュに「/」などのURLで使用される文字が含まれていると、そのままではハッシュをURL化してもうまく動作しません。そのため、作成したハッシュを必ずURLエンコードしてからご利用ください。
以下のサイトでもURLエンコードが可能です。お手持ちのサイトやツールをお使いの場合は、そちらをご利用ください。
https://www.tagindex.com/cgi-lib/encode/url.cgi
・URLエンコード前
x04iXLTp56TdBPBQOR2u2tiJRJLa8NR4+QkBhtm7l8UMxb6nJkSZLZu9IpNxxDwRTMzeKfXV8ZWNSCt+XdBZa6CoHhXTYPt3ifJHAEui/PEdBQ8VlkTHTOFM/WVzlxau9xlDjEWk5m6A50OWuu0opE/E5wWjv/tzV2myoswaHgs=
・URLエンコード後
x04iXLTp56TdBPBQOR2u2tiJRJLa8NR4%2BQkBhtm7l8UMxb6nJkSZLZu9IpNxxDwRTMzeKfXV8ZWNSCt%2BXdBZa6CoHhXTYPt3ifJHAEui%2FPEdBQ8VlkTHTOFM%2FWVzlxau9xlDjEWk5m6A50OWuu0opE%2FE5wWjv%2FtzV2myoswaHgs%3D
1-4-4.オプション情報
オプション情報の一覧を以下に記載します。オプション情報は暗号化情報の中に含めます。複数のオプション情報を利用する場合は、「&」で値をつなげてください。
※オプションは、すべての画面で利用できるわけではありません。画面IDと利用できるオプションの種類については、次章をご覧ください。
course_id=XXX | 講座のID(Cから始まるもの) XXX部分には実際の値を埋め込んでください。 講座を特定しなければ表示できないページで必須 |
lecture_id=XXX | 講義のID(数字2桁)XXX部分には実際の値を埋め込んでください。 講義受講画面で必須 |
curriculum_id=XXX | カリキュラムのID(CCから始まるもの)XXX部分には実際の値を埋め込んでください。 カリキュラム画面で必須。その他、カリキュラム単位で受講している講座の個別ページや講義受講ページには必須。 |
course_category_id=XXX | 講座のカテゴリ(大分類)XXX部分には実際の値を埋め込んでください。 講座一覧で、大分類で絞った状態で表示したい場合入力する |
course_small_category_id=XXX | 講座のカテゴリ(小分類)XXX部分には実際の値を埋め込んでください。 講座一覧で、小分類で絞った状態で表示したい場合、大分類とともに入力する |
1-4-5.画面ID
シングルサインオンで利用できる画面IDとオプションを表にまとめました。暗号化情報を作成する際にご利用ください。
No | 名称 | 画面ID | オプション |
1 | 受講者TOP | top | - |
2 | 受講講座一覧 | course_list | course_category_id=XXX (任意) course_small_category_id=XXX (任意) |
3 | カリキュラム受講 | curriculum | curriculum_id=XXX (必須) |
4 | 受講講座個別 | course_detail | course_id=XXX (必須) |
5 | 講義受講(動画) | movie | course_id=XXX (必須) lecture_id=XXX (必須) |
6 | 講義受講(問題) | question | course_id=XXX (必須) lecture_id=XXX (必須) |
7 | 講義受講(スライド) | slide | course_id=XXX (必須) lecture_id=XXX (必須) |
8 | 講義受講(スライド動画) | slidemovie | course_id=XXX (必須) lecture_id=XXX (必須) |
9 | 講義受講(アンケート) | questionnaire | course_id=XXX (必須) lecture_id=XXX (必須) |
11 | 商品一覧 | product_list | - |
12 | 質問回答一覧 | qa_list | - |
13 | 課題一覧 | task_list | - |
14 | スレッド一覧 | thread_list | - |
15 | スレッド | thread | thread_id=XXX (必須) |
16 | 受講者情報表示 | userinfo | - |
17 | 受講者情報編集 | useredit | - |
18 | 受講履歴 | record | - |