【问题标题】:alfresco get ip address after authenticationalfresco认证后获取ip地址
【发布时间】:2015-11-19 10:07:36
【问题描述】:

在 Share 中,有没有办法在 alfresco 进行身份验证后获取用户 IP 地址?

如果是怎么办?

基于此 IP 地址,我想允许或禁止访问存储库。

我正在使用 alfresco 5.0.d

提前谢谢你。

编辑 1:

用户可以连接到 alfresco,但只有在验证某些条件后才能进入存储库。 简单地说,在我的露天有 2 个角色(ROLE1 和 ROLE2)。拥有 ROLE1 的用户可以在任何地方进入 Afresco。 但是具有 ROLE2 的用户只有在特定网络(由 ip 地址标识的网络)上才能访问 alfresco。

为了验证用户的角色,我需要连接他。 我希望我足够清楚!

【问题讨论】:

  • 您要检查哪里?在分享?还是在存储库(露天)层?
  • 我正在尝试签入分享
  • 把它从ServletRequest抢走?
  • Gagravarr 你能给我更多的解释吗?我正在考虑做 java 后端 webscript 来返回我的 ip 地址。在露天页面重新加载时,我将调用此 webscript,我将控制是否允许此 ip 地址(在 dom javascript 代码中)。如果不允许 ip,我将在登录页面上重定向用户。这是好方法吗?如果没有,最好的方法应该是什么?谢谢。

标签: authentication ip authorization alfresco


【解决方案1】:

如果我理解正确,您希望禁用对您的 Alfresco 实例上特定 IP 的访问。如果是这样的话。无需检查请求,也无需制作无用的 Java 后端 webscript。只需设置: 1. Apache 或 Nginx 在您的 alfresco 前。或 2. 使用正确的 <valve> 标签配置配置 tomcat。在这里你可以找到我多年前写的快速指南,但它仍然应该给你一个想法或做什么或去哪里看:http://alch3mi5t.blogspot.com/2012/04/tomcat-valve-configuration.html 此外,您还可以在这里找到更多示例和教程:Tomcat Restrict access by IP address

<Engine name="Catalina" defaultHost="localhost">
   ...
   ...
   ...
   <Valve className="org.apache.catalina.valves.RemoteAddrValve"
       allow="10\.132\.77\.55|10\.132\.76\.120|10\.132\.77\.47"/>
   ...
</Engine>

编辑:一个简单的问题:如果用户无法登录(身份验证后禁用访问?),为什么要让登录保持可访问性?这样,您只需公开一个未经身份验证的页面就可以了:)

【讨论】:

  • 嗨 alh3mi5t。要回答您的问题,所有用户都必须可以访问登录。该限制仅涉及具有特定角色的用户。因此需要在认证后进行验证。这意味着具有此特定角色的用户将无法连接到应用程序,就好像他们的 IP 地址与特定地址匹配一样。所以我不能使用 apache 或 tomcat 配置来消除地址 ip。
  • 所以,再次抱歉。您是说您有特定用户拥有 Alfresco 的身份验证详细信息但不应该能够登录?如果这是真的,那对我来说没有多大意义。您可以将它们放在一个组中,并从该组中删除公司主文件夹上的继承权限。另外:你是说那些用户有你想在登录后禁用的静态 IP?那么,为什么不收集他们所有的 IP 并将其放入上面提供的解决方案中呢?还是我缺少其他一些要求?
  • 嗨 Alch3mi5t 我已经编辑了我的问题我希望我对我的英语足够清楚抱歉。
猜你喜欢
  • 2010-11-04
  • 1970-01-01
  • 1970-01-01
  • 2011-10-11
  • 1970-01-01
  • 2013-07-28
  • 2013-01-16
  • 2011-02-07
  • 2011-08-06
相关资源
最近更新 更多