gpt4 book ai didi

java - 我可以将 Jasig CAS 服务器用于 Android 移动应用程序吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:21:36 25 4
gpt4 key购买 nike

我知道 CAS 是 Web 的单点登录协议(protocol)。其目的是允许用户访问多个应用程序,同时只提供一次他们的凭据(例如用户标识和密码)。它还允许 Web 应用程序在无需访问用户安全凭证(例如密码)的情况下对用户进行身份验证。

那么,我如何将 Jasig CAS 服务器用于 Android 移动应用程序?一些指南会非常有用!

最佳答案

实际上有两种方法可以做到这一点,每种方法都有一些缺点。

1) 公开 REST 接口(interface)(here you'll find a simple JAVA client that consumes themiOS sample 如何在移动设备上使用它)

这里的问题是,如果有人从商店下载您的应用程序并检查其中的网络流量(或简单地分解它),他将找到您进行的调用。有了这个,他可以创建一个与您功能相同的应用程序,并记录用户输入的密码(如 man-in-the-middle attack )

2) 在您的APP内的网页 View 中打开真实网站

您需要创建一个模型登录页面,或者在您的 CAS 服务器上创建一个响应式页面,这样它看起来就不错了。显然,即使在这里,理论上也有人可以复制您的 APP 和您 CAS 上的网站假冒,看起来像是您的 APP 获取用户名和密码,然后在后台将其发送到您的 CAS,给用户留下一切正常的印象,但它很多更复杂。然而,即使在这里你也需要调整 CAS; CAS 旨在接受服务的登录,成功登录后它将重定向到该服务。因此,在这种情况下,您需要向 CAS 配置添加一个虚假服务,并检查 webview 是否会重定向到它。发生这种情况时,您会在 CASTGC cookie 中找到 TGT。

在我们的第一个应用程序中,我们使用了 REST 版本,但后来我们也将 CAS 用于网站,我们希望将 REST 访问限制为仅对设施中的其他服务器进行访问,因此我们提出了第二个似乎合适的解决方案更好,但整体CAS似乎没有为移动APP做好准备

关于java - 我可以将 Jasig CAS 服务器用于 Android 移动应用程序吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21603477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com