【问题标题】:how to create a session and role based access using zk framework如何使用 zk 框架创建基于会话和角色的访问
【发布时间】:2013-02-27 20:14:21
【问题描述】:

我正在为我的 zk 框架 6.5 应用程序使用 MVC 和 MVVM。现在我想在我的应用程序中创建和维护一个会话,但是我没有找到一个很好的例子,如何在不使用 spring security 的情况下在 zk 中创建和维护会话。

我有一个登录页面,我知道我可以获取用户名和密码并将用户移动到主页。但这不是我想要的。我想在这里创建和维护一个会话,并在会话中添加与用户相关的数据,以便我可以在任何地方的应用程序中使用它。

我阅读了以下指南
Implementing ZK MVC
Managing Credentials using ZK Sessions

但我无法在这里直接理解我的概念。

如果你给我一些使用实际代码的例子会很有帮助。

目前我有登录页面,它的提交按钮带有空字段,我只是将用户重定向到主页。

MVC 模式会很棒。我已阅读 zk mvc 和 UserCredentialManager 文档。但我不确定如何使用这些信息。

还请分享 zk 和没有 spring 安全性的设计的最佳实践。

期待听到您的解决方案。

【问题讨论】:

    标签: java session zk


    【解决方案1】:

    如果您只是想在用户会话中存储信息,使用 ZK 很容易:

    Session session = Sessions.getCurrent();
    session.setAttribute("my_stored_data", myStoredData);
    

    ...

    Session session = Sessions.getCurrent();
    Object myStoredData = session.getAttribute("my_stored_data");
    

    Session 自动为每个用户存在,并由 ZK 为您维护。

    希望对您有所帮助。

    【讨论】:

    • 我正在用 zk 实现 shiro,但是在我的 shiro AutheListener 中,我无法通过写 Sessions.current 来获得 ZK 会话,它给了我 null
    • 您的身份验证侦听器可能位于 ZK 框架的上游,因此会话尚不可用。例如,尝试在 Spring 请求过滤器中访问用户的会话时也会发生同样的情况。在过滤器中,您可以访问具有 getSession 函数的 HttpRequest。但是,在您的 Shiro 侦听器中,您没有此类参数。这使您看起来像是在尝试做超出AuthenticationListener 范围的事情。也许在这个阶段重新评估你为什么需要用户会话。
    • PS:这是另一个问题,不是评论。发布一个新问题,我不会在 cmets 中回复更多问题。
    猜你喜欢
    • 2012-02-09
    • 1970-01-01
    • 2019-11-12
    • 1970-01-01
    • 1970-01-01
    • 2020-06-22
    • 2011-10-12
    • 1970-01-01
    • 2019-08-08
    相关资源
    最近更新 更多