我是经验丰富的Java后端开发人员,但我绝对是前端新手,现在我正试图在我的生命中第一次使用Vaadin开发web应用程序。
我知道如何创建主视图,但无意中发现了登录实现。在我的应用程序中,登录不是强制性的。如果用户没有登录,它将允许他以网格格式查看数据,并通过单击记录获取一些附加细节。如果用户需要更多的功能,他应该登录,并且基于用户凭据,网格视图中应该会有一些更改,并且会出现一些额外的按钮,这将允许创建新条目并执行其他操作。
我确实读过Vaadin教程,但它只解释了用编写的应用程序,而没有教如何做其他事情。我试图在组件文档和Javadoc中找到一些线索,但在那里迷路了。
如果有人能给我一些关于从哪里开始挖掘的建议,我将非常感激。
发布于 2022-09-04 08:07:01
Vaadin使用Security。您可以使用注释来保护整个视图。但是,如果要更改视图的某些部分,则必须以编程方式进行更改。
Security提供了访问登录用户和角色的SecurityContextHolder类。
若要检查用户是否具有特定角色,请执行以下操作
Authentication auth = SecurityContextHolder.getContext().getAuthentication();
if (auth != null && auth.getAuthorities().stream().anyMatch(a -> a.getAuthority().equals("ADMIN"))) {
...
}https://stackoverflow.com/questions/73597543
复制相似问题