gpt4 book ai didi

wpf - 向应用程序用户提供受限权限的方法

转载 作者:行者123 更新时间:2023-12-04 22:30:53 31 4
gpt4 key购买 nike

我有一个在 WPF 中开发的桌面应用程序,它有几个 View 显示为 Shell 的 MDI 子项。它不是以复合/模块化方法开发的。当应用程序打开时,所有 View 都可以访问了。该应用程序有一个管理员用户和几个运算符(operator)。

要求是管理员用户将为运算符(operator)分配一些受限制的权限,这些权限将指定 -

  • 哪些运算符(operator)可以访问/打开哪些 View ,以及
  • 哪些运算符(operator)可以在允许的 View 中执行哪些操作

  • 到目前为止,我的想法是——
  • 在数据库中存储运算符(operator)权限信息
  • 加载时,将当前登录用户的权限信息存储在某个应用程序级别
  • 对于 Shell,检查应用程序级别的权限信息,并根据信息
  • 将可见性绑定(bind)设置到不同的 View 访问按钮
  • 对于单个 View ,在 ViewModel 级别检查权限信息并根据信息
  • 设置操作按钮的可见性绑定(bind)

    有没有更好的方法来实现这种场景?

    最佳答案

    你的方法对我来说听起来很不错,除了隐藏几个 UI 元素(如按钮)之外,我还会在实际执行操作之前检查 ViewModel 层中的当前用户是否可以执行操作。

    这意味着您的 Commands应该有 CanExecute()这会通过您的权限验证逻辑并返回 true 或 false。这是一项重要的安全措施,IMO,因为 UIElements 可以在运行时使用 Snoop 等工具轻松更改。
    看看这个答案How to Snoop proof your wpf application?

    关于wpf - 向应用程序用户提供受限权限的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13148419/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com