Ruby on rails cas1体系结构的Ruby-Gem
我正在使用omniauth cas 1.0.4向我的用户授权cas服务器。但是服务器支持CAS 1体系结构,而gem支持CAS 2体系结构 CAS 1服务验证程序用两行代码响应(文本/纯HTTP响应);第一行为是或否,对应于提交的申请是否有效。 如果票证有效,第二行包含票证持有人的NetID,即已成功验证的用户的标识。如果票证无效,则第二行为空。 因此,一个示例响应是: 对 牡丹 如果票证有效,CAS会立即将其删除,以便不能再次使用。Ruby on rails cas1体系结构的Ruby-Gem,ruby-on-rails,rubygems,omniauth,cas,Ruby On Rails,Rubygems,Omniauth,Cas,我正在使用omniauth cas 1.0.4向我的用户授权cas服务器。但是服务器支持CAS 1体系结构,而gem支持CAS 2体系结构 CAS 1服务验证程序用两行代码响应(文本/纯HTTP响应);第一行为是或否,对应于提交的申请是否有效。 如果票证有效,第二行包含票证持有人的NetID,即已成功验证的用户的标识。如果票证无效,则第二行为空。 因此,一个示例响应是: 对 牡丹 如果票证有效,CAS会立即将其删除,以便不能再次使用。 但CAS 2体系结构以一个XML片段作为响应。是否有ant
但CAS 2体系结构以一个XML片段作为响应。是否有ant gem可用于支持CAS 1体系结构?在我的快速谷歌搜索中,我没有找到提供CAS 1.0功能的gem,但修改现有库以支持它应该不难。(我不是Ruby开发者,否则我会自己做。) 您可以克隆(如果不是官方位置,也可以克隆)。 所需的大多数修改都在中。您将需要提取XML代码并替换为标准行解析代码。获取\服务\响应\主体应为响应。find_authentication_success将检查响应的第二行。parse_user_info应将哈希[“user”]分配给响应第1行中的用户
该文件也需要更改。CAS 1.0是通过/validate而不是/serviceValidate来处理的。谢谢您的回复:)我已经修补了这个gem以支持CAS 1.0的功能:)太棒了。除非它包含在官方发行版中,否则您可能可以链接到您的fork,以便您的情况下的其他人可以受益。:)