臺中市雲端校務系統與Windows AD帳號整合(7)

URL Link //n.sfs.tw/13272

2019-04-29 08:39:14 By igogo

 

2-5設定校端更改密碼程式及執行

 

 

passwd程式請由此下載

 

為了簡化除錯的環境,底下操作皆在Windows AD上執行

 

資料夾裡共有兩個json檔要編輯, 建議使用notepad++

編輯config.json

 

 

 

{

 

"clientid": "clientid",

"secret": "secret",

"ldap":"winad.json",

"authorize_endpoint": "http://api.cloudschool.tw/school-oauth/authorize",

"accesstoken_endpoint": "http://api.cloudschool.tw/oauth?authorize",

"changepasswd_endpoint": "http://api.cloudschool.tw/change-password",

"semesterdata_endpoint" : "http://api.cloudschool.tw/semester-data"

}

 

"clientid": "clientid",

"secret": "secret",

 

請依下面說明, 登入雲端校務系統註冊服務取得clientidsecret

 

 

"ldap":"winad.json",

指向另一個設定ldap相關的檔名, 如果無則表示只有更改雲端校務系統密碼的功能,不同步到Windows AD

 

"authorize_endpoint": "http://api.cloudschool.tw/school-oauth/authorize",

"accesstoken_endpoint": "http://api.cloudschool.tw/oauth?authorize",

"changepasswd_endpoint": "http://api.cloudschool.tw/change-password",

"semesterdata_endpoint" : "http://api.cloudschool.tw/semester-data"

 

http://api.cloudschool.tw/ 為範例網址,

台中市的雲端校務系統API https://api.tc.edu.tw

 

 

 

1. 名稱可自訂: 例如「更改密碼服務」

 

2.類型請選學校服器

 

3.如圖說明

 

4.http://校內ip/passwd/callback

 

ip為提供服務机器的校內ip位址

/passwd/callback 為固定值

 

 

授權導向的redirect uri, 請填入 http://windows ad ip/passwd/callback

例如: http://172.16.3.38/passwd/callback

如果此台Windows AD80已有web服務, redirect uri指向8080

http://172.16.3.38:8080/passwd/callback

 

本文件皆以8080 port 為示範

 

 

編輯winad.json

 

 

"ldap_server": "happy.tc.edu.tw",

"ldap_port": 636,

一定要是網域名,不可以是數字, 因為要透過ldaps, port固定是636

Rootdn 是管理者的帳號

在命令提示字元中查詢系統管理者的DN

C:\Users\Administrator>dsquery user -name administrator

"CN=Administrator,CN=Users,DC=happy,DC=tc,DC=edu,DC=tw"

 

"cert": "happy.jks",

Cert 指向前面匯出的jks, 於程式的同一個資料夾內即可

 

"upn_suffix": "happy.tc.edu.tw"

代表user principalname 的尾碼,無特殊需求設為網域名稱

 

"stu_id_format": "regular",

 

根據雲端校務系統傳回的學生帳號格式為107-10701,如果想在Windows AD上新增的學生帳號為10701, 請將regulare改為 simple

 

請注意, 雲端校務系統上的學生帳號還是107-10701,您必須很清楚改為simple的影響, 否則建議使用regular

 

執行更改密碼程式

 

C:\Users\Administrator>java -jar -Djava.net.preferIPv4Stack=true -Dserver.port=8080 passwd-winad-1.0.jar

...

2019-04-26 11:49:20.293 INFO 2084 --- [ main] o.h.h.i.QueryTranslatorFactoryInitiator : HHH000397: Using ASTQueryTranslatorFactory

加入憑證:happy.jks

檢查OU:Teacher, Student

建立OU:Teacher

2019-04-26 11:49:21.793 INFO 2084 --- [ main] ication$$EnhancerBySpringCGLIB$$7a3111c0 : 帳號整合服務成功啟動

 

看到帳號整合服務成功啟動, 表示服務已成功啟動

 

 

打開瀏覽器,打入http://winad ip:8080

看到以下畫面表示成功

 

 

 

 

 

認證成功後的授權畫面

 

 

 

如不打算更改密碼,只是要同步帳密到Windows AD, 打兩次雲端校務系統原密碼即可

 

 

 

觀察AD的使用者, 已成功新增