写点什么

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:005255
用户头像

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

关注

评论

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

接上回,如何用 LlamaIndex 搭建聊天机器人?

Zilliz

Milvus 向量数据库 ChatGPT LLM

你不知道的ER图秘诀,都在这篇在线教程里了!

职场工具箱

ER图 实体-关系图

存算分离下设计数据库计算引擎的思路

计算引擎 存算分离

年终总结必备!8款好用的AI制作PPT软件推荐。

彭宏豪95

AI PPT 年终总结 在线白板 AIGC

跨国传输的常见问题与对应解决方案

镭速

跨国数据传输 跨国传输 跨国传输软件

什么样的网站才是利于google等搜索引擎优化的营销型网站

九凌网络

TDengine 3.2.0.0 重磅发布!S3 存储 + IP 白名单正式上线

TDengine

tdengine 时序数据库

Databend + lakeFS:将数据版本控制嵌入你的分析工作流

Databend

我应该删除低质量页面以提高Google排名吗?

九凌网络

专业ER图工具大盘点,哪款是你的菜?

职场工具箱

ER图 设计数据库模型

语音识别技术在教育领域的应用与挑战

来自四九城儿

外贸业务员必学的外贸推广方式

九凌网络

今年秋招VS去年秋招!我滴娘啊

王磊

Java

LeetCode题解:993. 二叉树的堂兄弟节点,BFS,JavaScript,详细注释

Lee Chen

LeetCode

亚洲专业美发行业领军企业汉高中国签约赛博威,以TPM营销费用管理推进企业业务数字化改革

赛博威科技

闭包解密:从小白到高手,掌握Python中的闭包技巧

高端章鱼哥

Python

可视化流程编排(Bpmn.js)介绍及实践

ZA技术社区

众安科技 众安保险 ZA技术社区 无界山

外贸建站优化外贸网站推广的四个技巧

九凌网络

低代码开发,或许是节约成本更好的选择

树上有只程序猿

软件开发 低代码

2023年APP备案操作教程 阿里云APP备案试列 APP公钥sha1签名获取方法

语音识别技术在智能门禁系统中的应用与设计

来自四九城儿

copilot使用体验

FunTester

语雀生产事故不该只是运维的锅

文思源想

运维 产品定位 生产事故 技术感悟 语雀故障

抖音双十一,主播“分食”李佳琦

自象限

测试工作的价值体现

BY林子

软件测试 软件质量 测试的价值 绩效考核

文心一言 VS 讯飞星火 VS chatgpt (126)-- 算法导论11.1 1题

福大大架构师每日一题

福大大架构师每日一题

聊点技术|秒级根因定位可能吗?博睿数据将不可能变为可能

博睿数据

运维 监控 可观测性

初识inBuilder内存计算模块--业务数据同步

inBuilder低代码平台

数据库

第24期 | GPTSecurity周报

云起无垠

语音识别技术在智能家居控制系统中的应用与前景

来自四九城儿

2023年APP备案操作教程 阿里云APP备案试列 APP公钥sha1签名获取方法

雪奈椰子

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