我是Cuba的新手-平台版本6.10.3。我有一个问题,我被卡住了。我有一个用户实体,我在其中创建了一个新用户,它的参数与sec$User系统实体的参数相同。现在,我想传递在用户实体中输入的值(名称、密码、姓氏、电子邮件)以及专门为用户(客户)创建的访问组。然后直接在sec$User系统实体中注册属性,然后使用使用各自权限创建的用户的凭据登录到应用程序。
我希望有人能帮助我。非常感谢大家。
发布于 2021-04-28 14:38:14
为了创建一个新的sec$User实体,调用com.haulmont.cuba.core.global.Metadata bean的Metadata#create()方法。填写必填字段。
要将新用户保存到数据库中,请使用DataManager bean:com.haulmont.cuba.core.global.DataManager#commit(user)
如果您需要在没有用户密码的情况下自动登录到应用程序,您可以使用“可信登录”功能。
在web客户端中,使用com.haulmont.cuba.web.Connection bean登录。在web服务中(例如,门户模块)-使用com.haulmont.cuba.security.auth.AuthenticationService服务。
并用TrustedClientCredentials调用它的login方法:
@Inject
com.haulmont.cuba.web.auth.WebAuthConfig webAuthConfig;
// ...
authenticationService.login(new TrustedClientCredentials("username", webAuthConfig.getTrustedClientPassword(), Locale.ENGLISH);另请参阅
https://doc.cuba-platform.com/manual-6.10/login.html#login_additional_eatures
https://doc.cuba-platform.com/manual-6.10/web_login.html
请注意,在其他用户登录之前,web客户端一直在anonymous用户下工作。因此,您需要为用户添加额外的权限(对用户实体的写访问权限)。
发布于 2021-05-02 19:26:26
感谢您的支持,非常有帮助!
https://stackoverflow.com/questions/67287323
复制相似问题