写点什么

Imperva 开源域目录控制器,简化活动目录集成

  • 2019-02-28
  • 本文字数:1082 字

    阅读完需:约 4 分钟

Imperva开源域目录控制器,简化活动目录集成

Imperva 已公开发布域目录控制器(Domain Directory Controller,DDC)的源代码,这是一个 Java 库,用于简化常见的 Active Directory 集成。


与 Java 的 LdapContext 不同,这个库构建在 Apache Directory LDAP 之上,旨在简化管理主/辅助服务器连接、查询分页和自动重连接等任务。这个库旨在支持任意规模的组织,包括存在多个 Active Directory 服务器且没有跨林信任的复杂场景。


DDC 还提供了一套基于 LDAP 查询语法的抽象 API。这套 API 提供了 Active Directory 字段枚举,为开发人员提供了一种简单的方式来构建静态类型的查询。这种查询的语法非常清晰:


Sentence nameAndDepSentence = queryAssembler    .addPhrase(FieldType.FIRST_NAME, PhraseOperator.EQUAL,"Gabriel")    .addPhrase(FieldType.DEPARTMENT, PhraseOperator.EQUAL,"IT")    .closeSentence(SentenceOperator.AND);Sentence countrySentence = queryAssembler    .addPhrase(FieldType.COUNTRY, PhraseOperator.EQUAL,"Italy")    .closeSentence();Sentence finalSentence = queryAssembler    .addSentence(nameAndDepSentence)    .addSentence(countrySentence)    .closeSentence(SentenceOperator.OR);
复制代码


不使用 DDC 的 LDAP 查询如下所示:


(&(&(co=Italy)(department=IT)(division=Security))(|(givenName=Gabriel)(givenName=Noam)))
复制代码


Darren Mar-Elia(14 次获得微软 MVP 称号,同时也是 Semperis 的产品负责人)解释说,:“每个企业 IT 部门都希望能够减少应用程序使用的身份标识存储。最常见的是 Active Directory、LDAP 和 Kerberos。”


在使用 AD 时,缺乏一致的 API 会导致其自身的问题,而且会导致 AD 的次优使用和应用程序的脆弱性。这个开源 AD 库为那些正在寻找以一致和安全的方式将应用程序集成到 AD 中的标准化组织提供了极大的帮助。


这套查询 API 还采取措施来缓解 LDAP 查询的安全问题,例如LDAP注入(远程攻击者通过字符串连接来控制查找过程)。


Active Directory 中的一个常见活动是用户/用户组解析。用户组成员身份通常被用来确定某个用户是否应该访问应用程序中的某些资产或权限。随着组织的发展,这种成员资格变得越来越复杂,因为用户的权限变成了授权、角色和嵌套递归用户组的组合。DDC 通过 ddc-service isMemberOf 方法简化了这种复杂的查找。在通过 Spring Security 或Apache Shiro等通用框架执行身份验证之后,应用程序开发人员可以将其用于细粒度访问控制,以便确定授权。


域目录控制器由首席工程师 Gabriel Beyo 创建,可在 Apache 2 许可下使用。


查看英文原文https://www.infoq.com/news/2019/02/imperva-ad-java


2019-02-28 08:005367
用户头像

发布了 731 篇内容, 共 474.4 次阅读, 收获喜欢 2008 次。

关注

评论

发布
暂无评论
发现更多内容

架构师第8周练习

小蚂蚁

37岁程序员被裁,想用6月工资跪舔领导划掉被裁名额,结果蒙了!

程序员生活志

程序员 职场

Hadoop 中的 Namenode 和 Datanode

dongge

如何让你的Nginx 提升10倍性能?

老大哥

Java

作业一

Kiroro

作业二

Kiroro

作业

不在调上

第八周·命题作业

刘璐

实现DevOps的三步工作法

看山

DevOps 凤凰项目 签约计划第二季

华青融天战略拓展总监王旭详解IT运维的九阳神功

DT极客

最新硬件虚拟化检测技术,让攻击者逃不出“楚门的世界”

百度安全

云计算 安全 虚拟化

架构师课程第八周总结

dongge

week8

不在调上

架构训练营第八周感悟

张锐

第八周·总结·数据结构预算法

刘璐

CompletableFuture运行流程源码详解

编号94530

Java 并发编程 多线程 CompletableFuture

教培行业工程师面临着什么挑战?研发面板全栈式解决工程师的痛点

Deepexi

DevOps 运维 敏捷开发 研发管理 单元测试

链表查找算法,HDFS数据节点宕机处理

dony.zhang

总结

chenzt

区块链+国防安全,科技是核心战斗力

CECBC

单向链表合并节点

chenzt

各类SQL中日期时间那些事

大唐小生

sql 大数据 SQL语法

Spring系列:请问各位大佬为何要学spring?

简爱W

AI大有可为:NAIE平台助力垃圾分类

华为云开发者联盟

AI 模型训练 垃圾回收机制 数据集 华为云

架构师第8周学习总结

小蚂蚁

缓存思想在算法设计中的应用梳理

che-ri-sh

缓存

如何在微服务团队中高效使用 Git 管理代码?

看山

git 微服务 高效 签约计划第二季

TNFE-Weekly[第六十六周已更新]

莹姐🙈

小程序 大前端 周报

架构师训练营 - 第八周 - 作业

韩挺

架构师训练营 - 学习总结 第 8 周

铁血杰克

PC人脸识别登录,出乎意料的简单

程序员小富

Java 人脸识别

Imperva开源域目录控制器,简化活动目录集成_语言 & 开发_Erik Costlow_InfoQ精选文章