Ruby 基于配置文件和目标对象的授权
Ruby authorization based on profile and target object
我正在从事一个项目,该项目涉及创建具有以下特定特征的用户:
- 我的公司
- 我的业务线(公司内部)
- 我的部门(业务线内)
此应用程序的目的是管理和跟进交易。
每个用户都可以创建交易,这些交易会自动链接到他们的公司、他们的业务线和他们的部门。
不属于同一公司、业务线和部门的所有用户都无法访问交易。换句话说,用户只能访问与用户具有相同特征的交易。
有没有可能用传统的rubygems建立这么复杂的授权矩阵?
您可以进行查询以查找用户可以访问的所有项目。假设用户只有一个公司、部门和业务线:
class User < ActiveRecord::Base
has_one :company
has_one :department
has_one :business_line
def deals
Deal.where(company_id: company_id,
business_line_id: business_line_id,
department_id: department_id
end
end
我正在从事一个项目,该项目涉及创建具有以下特定特征的用户:
- 我的公司
- 我的业务线(公司内部)
- 我的部门(业务线内)
此应用程序的目的是管理和跟进交易。
每个用户都可以创建交易,这些交易会自动链接到他们的公司、他们的业务线和他们的部门。
不属于同一公司、业务线和部门的所有用户都无法访问交易。换句话说,用户只能访问与用户具有相同特征的交易。
有没有可能用传统的rubygems建立这么复杂的授权矩阵?
您可以进行查询以查找用户可以访问的所有项目。假设用户只有一个公司、部门和业务线:
class User < ActiveRecord::Base
has_one :company
has_one :department
has_one :business_line
def deals
Deal.where(company_id: company_id,
business_line_id: business_line_id,
department_id: department_id
end
end