我们希望将“AFE(Ajax文件资源管理器)”集成到我们的Drupal应用程序中。我们的用户在Drupal中进行了身份验证,在打开AFE时我们无法再次请求登录/密码。
我们收到了ITHIT的第一个答复:
以下是设置登录名和密码的方法:
ajaxFileBrowser.GetSession()。SetCredentials('User1','pwd');
请注意,此API会在XHR中设置密码。设置登录和 XHR中的密码不提供有关登录天气的任何反馈 成功的。这就是为什么我建议依靠网络 浏览器登录对话框,自动显示而不是 调用SetCredentials。
然而,目前尚不清楚它是否是一个真实而强大的SSO解决方案。我们发现Drupal有一个webdav SSO模块(https://github.com/Awnage/webdavsso),我们也会调查那部分。但欢迎任何评论/帮助。
答案 0 :(得分:0)
根据我的理解,在使用Microsoft Office的Basic,Digest,NTLM或Kerberos身份验证时,无法完全摆脱登录对话框。
Microsoft Office应用程序在与Basic或Digest身份验证一起使用时始终要求进行身份验证。这是Microsoft Office和Microsoft Mini-redirector限制,如果您的服务器使用Basic或Digest,则没有解决方法。
但是,如果选中“记住我的密码”复选框,它仍会显示登录对话框,但用户名和密码已经填写,所以你只需点击“确定”。
如果您需要完全禁止使用Microsoft Office登录对话框,可以考虑以下选项:
实施Url-authentiation。您的网址将如下所示: http://webdavserver.com/[SessionID1234567890]/path/file.docx
如果是Url-authentiation,请确保您不在查询字符串中包含会话ID,Microsoft Office将截断它。您需要将路径ID放在路径中的某个位置,如上例所示,当您需要在文件系统中安装WebDAV文件夹时,这不是很方便,但在大多数情况下仍然有效。
答案 1 :(得分:0)
此处可能重复Stackoverflow
我以同样的方式解决了这个问题。