Aruba ClearPass Guest從LDAP中驗證Sponsor mail是否存在

Sponsor mail透過regex就能做到特定網域Match,透過Regex可以使很多填寫項目都能限制在網路管理員的計劃之中。

透過Regex卻無法達到驗證是否電子信箱是否存在,如果搭配Sponsor確認,申請時可能一個字母填錯,Sponsor就收不到信,導致訪客帳號無法開通。

為此,在送出申請後透過LDAP檢測信驗證是否存在,將能做到讓訪客自助冊時填到不存在信箱時跳出錯誤提示,避免訪客填錯帳號。

※user11不存在於LDAP中,而user01存在,因此,user11會跳出錯誤提示不存在的帳號,而輸入user01就能通過Ldap驗證然後進入Sponsor確認。

警示

個人覺得透過RegexMatch即是資安角度上的平衡點,若會驗證訪客帳號是否存在,無異於將企業內部AD目錄攤在訪客帳號申請系統中,透過此申請系統,可以嘗試並取得公司員工的mail通訊錄,接著就能發釣魚信件了。

所以,為避免mail通訊錄暴露,只用RegexMatch驗證是否為企業網域,申請者無法確認mail是否真實存在。

Sponsor Confirm透過發送給Sponsor mail以及cc給it mail,這樣能避免Guest填錯時,Sponsor還能透過聯繫IT去確認,另一方面,不論任何訪客帳號申請,IT都會收到同樣一封信件作為備份。

參考連結

https://community.arubanetworks.com/discussion/validate-sponsor-email-against-ldap

https://arubanetworking.hpe.com/techdocs/ClearPass/CPGuest_UG_HTML_6.5/Content/Reference/FormFieldValidationFunctions.htm

流程

設定Plugin「LDAP Sponsor Lookup」決定哪個Field會經過LDAP Sponsor Lookup。

並在特定的Form中,透過插入並啟用Field「do_ldap_lookup」使Field「do_ldap_lookup」會帶入特定Field的值經過LDAP Sponsor Lookup檢查。

因此,若mail與AD帳號()相同或相關,就能透過輸入值(username)透過ldap尋找,如果有找到ldap(user),也意味著該mail也存在。

步驟

若要讓Sponsor mail經過LDAP檢驗,ClearPass已經有內部的驗證函數與插件,網管人員不需要撰寫中間的API,需要的資訊填寫後,就能做到這一點。

在「Administration > Operator Logins > Servers」設定LDAP Server,並且勾選User Search「Enabled」,這能讓插件「LDAP Sponsor Lookup」使用此Server進行查詢。

插件「LDAP Sponsor Lookup」的Configuration,可以定義Field「do_ldap_lookup」會將哪一個Field去做Ldap查詢。如果不使用原生的sponsor_mail,就需要到「administration > Plugin Manage > LDAP Sponsor Lookup」的Configuration中更改Field。

Ldap尋找只能透過Username,因此只能將特定網域做成不用輸入的後綴,好讓使用者只輸入username,藉此達成讓Ldap查詢。

由於具帶後綴,即便訪客只有填入Username,Sponsor mail然會透過填入的username與後綴組合,變成sponsor email,使Sponsor Confirm正常運作。

Administration > Operator Logins > Servers

Filter使用預設的或是自訂的都沒關係,因為我們是使用username做尋找,lookup模式只有使用username才能正確找到,用mail或是@都找不到該User。

Plugin Manage > LDAP Sponsor Lookup

在此可以修改Ldap尋找(do_ldap_lookup)時,帶入的值是使用哪一個Filed。

Field「do_ldap_lookup」

如果該Filed啟用,將會用Plugin「LDAP Sponsor Lookup」中設定的Field去尋找該值在LDAP Server是否存在。

Form透過Insert新增「do_ldap_lookup」

在特定的Self-Registrations自動產生或是特定的Form,將do_ldap_lookup加入並且啟用。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *