写点什么

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

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

关注

评论

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

高效开发Maven架构设计图解/掌握项目工程自动化技巧(精通篇一)

肖哥弹架构

maven 效能

Fix My iPhone for Mac(iOS系统恢复软件)

Mac相关知识分享

网页缓存清理工具Privatus for Mac

Mac相关知识分享

速速收藏!这些2024年上映的AI电影与短剧,申请加入你的国庆假期宅家计划!

可信AI进展

Clipboard Manager for mac(mac剪贴板管理软件)

Mac相关知识分享

PLC笔记 知识点汇总 day2

万里无云万里天

PLC 电工

数据恢复软件AnyMP4 Data Recovery for mac

Mac相关知识分享

PIRF-411-Being a dad

EchoZhou

English

解决:Loading class `com.mysql.jdbc.Driver‘. This is deprecated.

百度搜索:蓝易云

mcgs笔记 主控窗口 设置封面 用户组登录工程权限

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 实时数据库 对象成组增加

万里无云万里天

HMI 工厂运维 mcgs

高效计时和任务管理软件RH Timer pro for Mac

Mac相关知识分享

C++的异常类型与多级catch匹配

百度搜索:蓝易云

mcgs笔记 标签 文字跑马灯

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 设置公共背景模板窗口

万里无云万里天

HMI 工厂运维 mcgs

强大的iPhone数据恢复软件Omni Recover for Mac

Mac相关知识分享

全面图解Docker架构设计:掌握Docker全链路思维/实战/优化(小白到大师篇[3])

肖哥弹架构

Docker DevOps

C++编译静态成员函数报错: “osgGA::DriveManipulator::setEye”: 非静态成员函数的非法调用

百度搜索:蓝易云

Debian使用systemd自动挂载Samba

百度搜索:蓝易云

全面图解Docker架构设计:掌握Docker全链路思维与优化(命令篇)

肖哥弹架构

Docker DevOps 效能

mcgs笔记 按钮事件 MouseDown

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 动画按钮 分段控制与显示

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 S1 动画标签分段点快速查看

万里无云万里天

HMI 工厂运维 mcgs

从0到1:企事业单位知识竞赛答题小程序迭代开发笔记一

CC同学

实用的调色工具ColorWell for Mac

Mac相关知识分享

PLC笔记 知识点汇总 day3

万里无云万里天

PLC

一种绕过Rust借用检查和不可变性的方法

SkyFire

rust 借用检查

Debian安装Docker环境

百度搜索:蓝易云

macOS Sequoia 15(Macos15系统) v15.0.1正式版

Mac相关知识分享

远程连接mysql报错“Host xxx is not allowed to connect to this MySQL server“解决办法

百度搜索:蓝易云

架构误区系列21:模型的边界和流式处理

agnostic

领域模型 模型边界

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