您好,感谢您抽出宝贵时间,
我做了一个网站,我希望发布,只有我就读的大学才能访问。我能想象到的最简单的方法是利用我们在校园范围内使用的现有登录系统。问题是我们的校园没有任何第三方身份验证的实施。我问过管理部分网站的教授,他说如果创建它,他们会允许使用它,但我无法使用任何形式的API或他们的任何Web服务,因为它不适用于第三方。
我的网站是否可以检查用户是否已登录到校园网络邮件或 moodle,然后验证用户使用我的网站?
该解决方案不必很复杂,但如果可能的话,它需要包括如何实现现有的登录系统。
谢谢你的时间
你想做的(如果我理解正确的话(是一个非常糟糕的主意 安全明智. 如果任何在他们的网站上工作过的人有任何价值,你可以为此使用的任何方法都被阻止了。 话虽如此,我可以给你一个理论上的方法,如果它有效,你应该去找你的教授,告诉他们停止它。
没有办法使用 javascript/html 直接做你想做的事,所以它就出来了http://en.wikipedia.org/wiki/Same-origin_policy
不过,您可以做的是让您的登录表单将其踢回您自己的服务器,在那里您有一个编写使用 curl 的 php 脚本。
http://php.net/manual/en/function.curl-init.php
您需要登录您的大学网站,查看是否/发送了哪些帖子数据,然后使用 curlopt 来模仿它们。使用您网站上的表单中提供的用户名/密码更改帖子用户名/密码。
阅读来自您的 curl 请求的响应,并在良好登录和错误登录之间查找唯一标识符(即"不正确的用户名"表示错误的"欢迎回来"表示好( 提取您需要的其他信息,即div id=name>This
然后将客户端重定向到您的登录页面/警报,以提供不正确的密码。
如果你需要帮助进行实际代码注释,你应该能够用ajax/curl(如果你的大学没有阻止它(来弄清楚,但其中大部分将归结为你的CURLOPT_POSTFIELDS/CURLOPT_REFERER等,我不能给你,你可以很容易地得到火虫或类似的东西