用于Shibbolethlogin的自定义Web表单

我最近部署了一个服务器和网站,与我的大学的Shibbolethauthentication系统authentication。 从function上来说,它的效果很好。 美观,有很多

当你进入login页面时,login页面被redirect到Shibboleth的服务器用户authentication页面。 虽然它有效,但我宁愿在我的网站上input用户名和密码文本框,然后在提交时将它们传递给Shibboleth。

是否有可能使用替代的网页表单,并将信息传递给Shibboleth?

拥有自己的自定义login表单将会挫败Shibboleth的使用点。 这意味着将您的用户发送到他们可以识别为可信的IdP,并在那里进行身份validation,然后才能将身份validation和授权声明委托给服务提供商。

如果您对联邦WAYF或机构IdP的外观感觉不满意,请与您的联盟或您的IdP交谈。

(作为一个侧面说明,WAYF和IdP的品牌和外观和感觉,以改善用户体验是在联邦访问pipe理(FAM10)会议上讨论的话题之一:如果你是英国联邦,可能会有新的事情来到英国联邦一部分。)

任何人仍然希望使用这种方法,我们发现这可以做,但应该强烈评估安全(例如SSLencryption,本地参考如下所示)。

  1. 使用指定的redirect终点(例如/ shib / protected /)调用客户端SSO指令https://acmesite.com/Shibboleth.sso/Login?target=%2Fshib%2Fprotected%2F

    一个。 这实际上只能通过redirect来完成,因为如果您尝试使用AJAX或甚至JSONP

  2. 发布使用正确命名的元素

    <form id =“login”action =“https://sso-dev.acme.com/idp/Authn/UserPassword”method =“post”>
    <input class =“form-element form-field”name =“j_username”type =“text”value =“”>
    <input class =“form-element form-field”name =“j_password”type =“password”value =“”>
    <button class =“form-element form-b​​utton”type =“submit”> Login </ button>
    </ FORM>