JFrog帮助中心

我们的新传送门很快就要来了!
文档+知识库





JFrog帮助中心-一个全新的知识体验即将到来!



概述

JFrog平台支持即时对LDAP服务器进行用户身份验证。

当LDAP身份验证处于活动状态时JFrog平台单元(JPD)第一次尝试验证te t用户访问LDAP服务器。如果LDAP身份验证失败,它将尝试通过其内部数据库进行身份验证。

对于每个经过LDAP身份验证的用户,将在内部数据库中创建一个新用户(假设该用户还不存在),并自动将该用户分配给默认组。

LDAP组权限管理

在管理基于组的权限时,可以同步LDAP组,同时利用现有的组织结构。系统中的LDAP组使用超快速缓存,支持静态、动态和分层映射策略。

强大的管理通过多个可切换的LDAP设置和来自LDAP的组和用户的最新状态的可视反馈来实现。

有关如何将LDAP组与Artifactory同步的完整细节,请参考LDAP组

使用Active Directory?

如果使用Active Directory对用户进行身份验证,请参见活动目录

在Artifactory 7.38中实现的web更改。X及以上

安全性现在称为身份验证提供程序。本页上的所有相关文本和图像都已更新以反映这一变化。

页面内容



配置

在Artifactory 7.38中实现的web更改。X及以上

安全性现在称为身份验证提供程序。本页上的所有相关文本和图像都已更新以反映这一变化。

配置LDAP认证,请使用政府模块转到认证提供者| LDAP并点击新建LDAP设置

JFrog云新界面(测试版)

在任务栏上,单击(平台配置),并选择用户认证> LDAP。到l赚取更多,点击在这里

LDAP连接设置的配置参数如下:

启用
设置后,将启用这些设置。
设置名称
LDAP设置的唯一ID。
LDAP URL

LDAP服务器位置信息,格式如下:ldap: / / myserver: myport / dc = sampledomain, dc = com

URL应该包括用于搜索和/或验证用户的基本DN。

自动创建系统用户
设置完成后,系统会自动为已使用LDAP登录的用户创建新用户,并将其分配到默认组中。
允许创建的用户访问配置文件页面
设置后,使用LDAP登录后创建的用户将能够访问他们的配置文件页面。
已使用页面结果
设置后,支持LDAP服务器的分页结果。该特性要求LDAP服务器支持PagedResultsControl配置。
用户DN模式

一种DN模式,用于将用户直接登录到LDAP数据库。此模式用于创建用于“直接”用户身份验证的DN字符串,并且相对于LDAP URL中的基本DN。

模式参数{0}在运行时被用户名替换。这只在允许匿名绑定并且可以使用直接用户DN(这不是Active Directory的默认情况)的情况下才有效。

例如:
uid = {0}, ou =

电子邮件属性
可用于将用户的电子邮件映射到系统自动创建的用户的属性。
搜索过滤器

用于搜索LDAP身份验证中使用的用户DN的筛选器表达式。
这是一个带有可选参数的LDAP搜索过滤器(在'RFC 2254'中定义)。在这种情况下,用户名唯一的参数是“{0}”

可能的例子有:
uid = {0})-这将在uid属性上搜索用户名匹配。
如果成功,将从发现的DN执行使用LDAP的身份验证。

搜索基地
相对于LDAP URL中的基准DN,要在其中搜索的上下文名称。可以通过管道(|)指定多个搜索基。该参数是可选的。
安全LDAP搜索
通过过滤暴露于漏洞的用户来防止LDAP中毒。
搜索子树
设置后,启用通过LDAP URL + search Base的子树进行深度搜索。默认为True。
经理DN

具有查询LDAP服务器权限的用户的全DN。在使用LDAP组时,用户应该对任何额外的组属性具有权限,例如memberOf。

密码管理器

使用“search”认证时绑定LDAP服务器的用户密码。

测试LDAP连接
运行LDAP测试以验证您的设置是否正确。

LDAP组

LDAP组附加组件允许您将LDAP组与系统同步,并利用现有的组织结构来管理基于组的权限。

与许多LDAP集成不同,LDAP组使用超快的缓存,并同时支持静态、动态和分层映射策略。强大的管理通过多个可切换的LDAP设置和来自LDAP的组和用户的最新状态的可视反馈来实现。

LDAP组同步是通过告知系统经过认证的用户所属的外部组来实现的。登录后,您将自动与LDAP组关联,并继承系统管理的基于组的权限。

确保用户登录

同步LDAP组不会自动创建属于这些组的成员的用户。LDAP连接配置完成后,LDAP用户只有在首次登录系统时才会在系统中创建。用户的自动创建可以由自动创建用户复选框。



使用

在Artifactory 7.38中实现的web更改。X及以上

安全性现在称为身份验证提供程序。本页上的所有相关文本和图像都已更新以反映这一变化。

LDAP组设置可在政府模块下认证提供者| LDAP

JFrog云新界面(测试版)

在任务栏上,单击(平台配置),并选择用户认证> LDAP。到l赚取更多,点击在这里

要使用LDAP组,首先必须在LDAP Settings屏幕上设置LDAP服务器进行身份验证。您还必须提醒系统要将正确的LDAP组设置用于现有的LDAP模式。

Active Directory用户

有关为Active Directory安装设置LDAP组的具体帮助,请参见活动目录

组同步策略

JFrog平台部署(JPD)支持三种方式将组映射到LDAP模式:

  • 静态:组对象知道它们的成员,但是用户不知道它们所属的组。
    每个组对象如groupOfNamesgroupOfUniqueNames)通常保存其各自的成员属性成员uniqueMember,即用户DN。
  • 动态:用户对象知道他们属于什么组,但是组对象不知道他们的成员。
    每个用户对象都包含一个自定义属性,例如集团,其中包含用户所属的组dn或组名。
  • 层次结构:用户DN表示用户所属的组,组名作为用户DN层次结构的一部分。
    每个用户DN包含的列表的或组成组关联的自定义属性。
    例如,
    uid = user1, ou =开发者,ou =英国,dc = jfrog, dc = org表明user1属于两类:英国而且开发人员

使用OpenLDAP

在使用OpenLDAP时,不能应用动态战略,因为memberOf属性默认情况下没有定义(memberOf是一个覆盖),因此JPD将无法从LDAP服务器获取它。



同步LDAP组到JPD

在Artifactory 7.38中实现的web更改。X及以上

安全性现在称为身份验证提供程序。本页上的所有相关文本和图像都已更新以反映这一变化。

通过用户界面导入分组

配置了如何从LDAP服务器检索组之后,可以通过单击刷新按钮。同步LDAP组sub-panel。根据您的设置,将显示可用的LDAP组列表。

现在可以将组同步/导入到系统中了。groups表允许您选择要导入的组,并显示每个组的同步状态:

一个组可以是全新的,也可以是JPD中已经存在的。如果一个组已经存在于系统中,它可能会过时(例如,如果组DN已更改)——这在表中表示,以便您可以选择重新导入它。

导入(同步)一个组后,系统中就会创建一个新的外部LDAP组,并使用组的名称。

导入LDAP组之后,就可以这样做了管理权限就像普通的JPD小组一样用户与这些组的关联是外部的,由LDAP严格控制。

确保已启用LDAP组设置(在LDAP组设置面板),以便使您的设置生效。

通过用户界面同步组政府模块,在认证提供者| LDAP,选择要同步的组,然后搜索在相应的组设置下定义的组。找到组后,选择导入。

JFrog云新界面(测试版)

在任务栏上,单击(平台配置),选择用户认证> LDAP。如需了解更多信息,请单击在这里


组同步后,您应该在组列表(政府模块下认证提供者|组)表示为外部

使用REST API

属性也可以同步LDAP组创建或替换组使用ldap域和ldap服务器下的组对象的完整DN路径创建组。

限制

确保仅在通过REST API创建LDAP组时使用小写。使用大写或混合大小写将阻止组的同步。

当使用REST API同步LDAP组时,您需要在LDAP服务器上为组指定准确且完整的Group DN路径。下面的例子显示了你用来同步下面LDAP服务器中显示的“testgroup”组的JSON有效负载:

LDAP服务器架构

JSON示例:{"name": "testgroup", "description": "This groups already exists in ldap", "autoJoin": false, "realm": "ldap", "realmAttributes": "ldapGroupName=testgroup;groupsStrategy=STATIC;groupDn=cn=testgroup,ou=support,ou=UserGroups,dc=openstack,dc=org"}

自定义LDAP超时/ LDAP引用策略

目前,要在Artifactory中自定义LDAP超时/ LDAP引用策略,您需要将下面的属性添加到artifactory.system.property

“artifactory.security.ldap.connect。timeoutMillis'用于连接。缺省值:10000ms的artifact .security.ldap.socket。timeoutMillis的readreply超时。缺省值:15000ms的artifacts .security.ldap。referralStrategy用于引用策略(值可以是'follow', 'ignore', 'throw')。默认值:follow

强制LDAP组的属性动态搜索

在Artifactory 7.37.9中,您可以通过设置属性来强制组中属性的动态内部搜索真正< forceAttributeSearch > < / forceAttributeSearch >Config描述符。

 < ldapgroupsettings > demo true 



非ui认证缓存


您可以将系统配置为针对外部系统(如LDAP)缓存关于REST API请求的身份验证数据。这意味着当用户第一次需要进行身份验证时,系统将向外部系统查询该用户的权限、组设置等。从外部系统接收的信息将缓存一段时间,您可以在 JFROG_HOME美元/ artifactory / var / etc / artifactory / artifactory.system.properties 通过设置 artifactory.security.authentication.cache.idleTimeSecs 财产。 这意味着一旦用户通过身份验证,而身份验证数据被缓存,Artifactory将使用缓存的数据,而不是查询外部系统,从而实现更快的身份验证。 默认设置为300秒。

REST API

缓存只与REST API请求相关,而与使用UI无关。

Docker缓存请求需要Docker v2令牌

Docker请求的缓存需要使用Docker v2令牌。启用了基于令牌的认证的Docker客户端或智能远程存储库,总是在初始请求中引用v2令牌,并适用于所有Docker命令类型(Pull, Push等)。然后将检索到的令牌用于对Artifactory的所有后续请求。例如,当使用相同的Docker Pull请求拉Docker层时。



避免使用明文密码

将LDAP密码以明文形式存储在磁盘上的settings.xml中是一个很大的安全威胁,因为这个密码非常敏感,用于SSO到域中的其他资源。2022世界杯阿根廷预选赛赛程
在使用LDAP时,我们强烈建议使用JPD的加密密码在您的本地设置中。


防止身份验证回退到本地Artifactory领域

在某些情况下,作为管理员,您可能需要用户使用其LDAP密码通过LDAP对自己进行身份验证。
但是,如果用户在系统中已经有一个带有密码的内部帐户,则可以将系统设置为在LDAP身份验证失败时返回使用其内部密码。

可以通过确保设置了“编辑用户”对话框中的“禁用内部密码”复选框来防止这种回退身份验证。



使用LDAPS(安全LDAP)

要使用具有来自Java信任的CA的有效证书的LDAPS,您所需要做的就是在设置中使用安全的LDAP URL,例如,ldap: / / secure_ldap_host: 636 / dc = sampledomain, dc = com

如果希望将LDAPS与非受信任(自签名)证书一起使用,请执行中描述的步骤使用TLS证书作为客户端

针对SaaS客户的安全LDAP,不支持自签名证书。

版权所有©2023 JFrog Ltd。