我正在Java EE 6中创建一个Web服务,用于注释企业bean @WebService.我只需要公开一些bean方法,所以我@WebMethod只注释了所需的方法.不幸的是,JAX-WS忽略了注释并尝试公开所有方法.问题是有一种方法,不打算用作Web服务操作,它返回一个接口,这不能由JAX-WS管理,因此不会部署Web服务.这是预期的行为还是我错过了什么?
我即将开始开发REST服务,安全性是该项目的一个重要方面,但我找不到有关如何实现它的一些确切信息.我的服务最初将由Android应用程序使用,但稍后可能会被其他平台使用.控制用户访问至关重要,因此Authorization与Authentication其余服务的控制是非常重要的.
虽然我可以找到关于如何制作安全REST API的主题,比如这里,这里和这里的重要内容,令我惊讶的是,所有这些都没有指向一个着名的标准或框架或经过时间考验的解决方案,通常是" "保护软件应用程序的方法,我们尽可能避免"推出自己的安全解决方案".
到目前为止,我的研究,我认为OAuth 2.0用户(甚至OAUTH 1.0)是最好的方式,它的广泛应用的协议,并支持公众Authorization和Authentication,我们可以控制键的寿命,甚至有专门的refresh key允许客户机不存储用于获取新密码的密码信息key.
我也认为这Apache Shiro是最好的框架Security,Authorization并且Authentication在java中,所以当我找不到任何集成Shiro和OAUTH 2.0... 时,它会让我感到惊讶.确定有一个5年之久,并没有激发太多的信任对我来说.
更为奇怪的事实是,Apache Shiro PMC主席Les Hazlewood拥有(好吧,拥有,他只是将它卖给了Okta)Stormpath,一家为之Identity而生的公司User Management,所以我希望他提供一些简单的集成OAUTH 2.0和Shiro,除非这会破坏Stormpath商业计划太多我猜(我不相信,因为Apache基金会不会允许这种行为).
所以最后的问题是:
Shiro,OAUTH 2.0或者我必须编写自己的代码吗?OAUTH 2.0解决方案来处理REST …我在同一个Web应用程序中使用angular-ui和bootstrap,在尝试使用ui-select2组件时我遇到了一个问题:一切正常,除了在下拉列表中选择一个元素时它没有显示在虽然ng-model关联变量已正确更新,但它显示为空.如果我从主页面中删除了包含bootstrap.js文件,这种奇怪的行为就会消失.是否有人同时使用angular-js和bootstrap和/或谁知道任何调整申请让他们一起工作?
更新:
ui-select2组件位于input-append div中,只需删除div即可解决问题.我创建了角的UI用户界面,选择2原沙箱演示的一个分支在这里.您可以转到"版本2"示例,并检查在列表中选择值是否正确更新模型但不更新输入元素.