使用Authzforce实现geo XACML并将其托管在heroku上

nsc4cvqm  于 2023-06-06  发布在  其他
关注(0)|答案(2)|浏览(385)

我对这两个主题都是全新的。有人可以帮助我一步一步的教程来实现它们吗?也可以建议两者的替代方案。

knpiaxh1

knpiaxh11#

首先是一个警告:GeoXACML规范是作为XACML 2.0的扩展编写的,因为它是当时XACML的最后一个版本(最后一个GeoXACML版本可以追溯到2011年)。现在,AuthzForce只支持XACML 3.0。然而,这并不是什么大问题,GeoXACML中使用的XACML 2.0术语和模型元素可以很容易地适应XACML 3.0(特别是对XACML模式的一些更改)。如果您对该过程有任何问题,请告诉我们。如果您还在使用XACML 2.0,我强烈建议您迁移到XACML 3.0。
回到最初的问题,假设您同意在XACML 3.0中使用GeoXACML,您可以在AuthzForce中仅使用两种AuthzForce extensions来实现它:

  • XACML数据类型:顾名思义,这是您必须在AuthzForce中实现的扩展类型,以支持GeoXACML规范v1.0.1的第6.3.1节中定义的新数据类型。请参阅AuthzForce的github repo上的wiki page,了解如何开发此类扩展。
  • XACML函数:顾名思义,这是您必须在AuthzForce中实现的扩展类型,以支持GeoXACML规范v1.0.1的第6.3.2节中定义的新函数。请参阅AuthzForce的github repo上的wiki page,了解如何开发此类扩展。

有了这个,我想你已经被覆盖了。
如果您在开发扩展时遇到了与AuthzForce相关的问题,请使用github上提到的支持渠道之一(或github问题)。
--更新02/06/2023--
用于AuthzForce的GeoXACML扩展已经实现,现在可以在开源中使用(来自SecureDimensions):

5lhxktic

5lhxktic2#

我已经审查了你的问题和你的意见在整个线程。我知道您完全是XACML的新手。考虑到这一点,我将寻求提高您对XACML的理解,以及如何集成GeoXACML或在我的回答中通常在您的策略中实现地理限制。

了解XACML

XACML策略语言与自然语言一样具有表达能力。例如,考虑以下句子:
Jane Doe希望在正常工作时间查看工作中的机密文档。
这样的句子包含四个语法组成部分:

  • 一个主题
  • 行动
  • 资源
  • 发出请求的环境
    这些“构建块”中的每一个都可以使用属性来描述。
    要为组织创建授权策略,您需要从负责定义信息安全策略的个人那里收集需求。
    接下来,您将获取负责授权策略的人员提供的策略,并标识属性。
    我们通常看一下定义:
  • 短名称:属性的用户友好名称,例如角色或公民身份。它是通常显示在编辑器和报表工具中的名称。
  • 命名空间:属性所属的上下文。命名空间遵循反向域名表示法命名约定,就像我们在Java中使用的那样。因此,如果我们有com.organization.user,我们可以附加一个短名称,如role,以创建完全限定的XACML属性标识符com. organization. role。
  • 类别:一个直接来自XACML的概念,它声明一个属性总是属于一个类别。有4种常用类别:主体、行动、资源和环境;它们在我们教程的步骤2中定义。
  • 数据类型:数据的分类。属性值在XACML中可以是不同的类型。最常用的是字符串、整数和布尔值。有十几种数据类型可供选择。
  • 取值范围:一个可选字段,用于指定所提供值的模式或范围。属性值可以是完全随机的(例如,用户的名字)。其他属于固定的值列表,例如状态名称或模式,例如邮政编码。

有关在组织中实施ABAC的更多信息,请查看我在雇主网站上写的博客文章:https://www.axiomatics.com/blog/intro-to-attribute-based-access-control-abac/
我还有一篇基于StackOverflow问题的文章on my personal blog,“如何使用注解根据在REST中创建资源的用户授权特定资源?答案提供了XACML和ABAC的另一个很好的概述。

关于GeoXACML和一般地理限制

我不确定您的确切用例,但我想提一下,ipAddress是XACML中的一种数据类型,如果它适合您的用例(即,您的系统遇到未通过VPN或其他IP混淆方法路由的IP地址等)。数据类型列表可以在这里找到:http://docs.oasis-open.org/xacml/3.0/xacml-3.0-core-spec-os-en.html
我不知道有任何软件提供GeoXACML开箱即用的企业级XACML实现。在Axiomatics -我的雇主-我们可以提供的是扩展我们的软件,Axiomatics策略服务器,为您提供GeoXACML甚至其他地理特征。(注:当我的同事大卫Brossard在上面的评论中建议您“尝试Axiomatics PS”时,它代表Axiomatics Policy Server。
XACML中的“X”代表可扩展。而且,实际上,该模型具有足够的可扩展性,可以提供执行此类操作所需的灵活性。
XACML核心规范3.0版实际上有一个名为XACML扩展点的部分,它列出了XACML模型和模式可以用新语义扩展的所有点。扩展点包括:

  • 分类
  • 属性Id
  • 数据类型
  • 函数Id
  • 匹配ID
  • 义务Id
  • 建议ID
  • 策略组合AlgId
  • RuleCombiningAlgId
  • 状态代码
  • 主题类别

您可以在StackOverflow上或通过所提供网站上的联系页面跟进任何问题。
最好的,迈克尔

相关问题