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

我知道CAS是网络的单点登录协议.其目的是允许用户访问多个应用程序,同时仅提供一次凭据(例如用户ID和密码).它还允许Web应用程序对用户进行身份验证,而无需访问用户的安全凭据,例如密码.

那么,我怎样才能将Jasig CAS服务器用于Android移动应用程序?一些指导方针非常有用!

解决方法

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

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

这里的问题是,如果有人从商店下载您的应用程序并检查其中的网络流量(或者只是分解它),他会找到您拨打的电话.有了这个,他可以创建一个与你相同的APP,并记录用户输入的密码(如man-in-the-middle attack)

2)在APP内的Web视图中打开真实网站

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

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

相关文章

ArrayList简介:ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增...
一、进程与线程 进程:是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程...
本文为博客园作者所写: 一寸HUI,个人博客地址:https://www.cnblogs.com/zsql/ 简单的一个类...
#############java面向对象详解#############1、面向对象基本概念2、类与对象3、类和对象的定义格式4、...
一、什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错。在java中,阻止当前方法或作用域...
Collection接口 Collection接口 Collection接口 Collection是最基本的集合接口,一个Collection代表一组...