使用最新版本?
JFrog平台用户指南
JFrog Artifactoryx文档
要获得最新版本,请访问JFrog统一平台
使用
若要访问单点登录(SSO)附加组件,请在管理模块,选择安全| HTTP单点登录.
要启用SSO,您必须提醒Artifactory,它正在一个安全的HTTP服务器后面运行,该服务器将可信请求转发给它。
然后必须告诉Artifactory在哪个变量中查找可信的身份验证信息。
默认情况下是寻找REMOTE_USER标头或请求变量,这是由Apache的AJP和JK连接器设置的。
您可以通过提供不同的变量名来选择使用任何请求属性(由Servlet规范定义)。
添加您自己的SSO集成
您可以编写一个简单的servlet筛选器来与自定义安全系统集成,并在请求上设置一个请求属性,以便由SSO外接程序信任。
最后,您可以指示Artifactory将外部经过身份验证的用户视为临时用户,这样Artifactory就不会在其安全数据库中创建这些用户。
在这种情况下,此类用户的权限基于给予自动加入组的权限。
字段名 | 描述 |
---|---|
Artifactory由一个安全的HTTP服务器代理 |
选中后,Artifactory信任传入的请求,并重用HTTP服务器的SSO最初在请求上设置的远程用户。 如果您想使用现有的企业SSO集成,比如Apache提供的强大的身份验证方案(mod_auth_ldap、mod_auth_ntlm、mod_auth_kerb等),这是非常有用的。 当Artifactory作为web应用程序部署在Apache后面的Tomcat上时:
|
远程用户请求变量 |
用于提取用户标识的HTTP请求变量的名称。默认值:REMOTE_USER。 |
自动创建人工用户 |
如果不勾选,则不会在Artifactory中自动创建经过身份验证的用户。相反,对于来自SSO用户的每个请求,该用户将临时关联到默认组(如果定义了这样的组),并应用这些组的权限。 如果没有自动创建用户,您必须在Artifactory内部手动创建用户,以管理没有附加到默认组的用户权限。 |
选中后,使用HTTP SSO进行身份验证后创建的用户将能够访问他们的个人资料.这意味着他们能够产生他们的API密匙而且设置他们的密码供以后使用。 |
自定义URL库
要使HTTP SSO设置正常工作,请确保您有自定义URL库配置。
集成Apache和Tomcat
当Artifactory作为web应用程序部署在Apache后面的Tomcat上时:
- 如果使用mod_proxy_ajp-一定要设置好
tomcatAuthentication = " false "
在AJP连接器上。 - 如果使用mod_jk-确保使用
JkEnvVar REMOTE_USER
指令。 - 如果使用mod_proxy(需要mod_proxy_http,mod_headers而且mod_rewrite转发消息头有两种已知的工作方法:
请求头设置REMOTE_USER %{REMOTE_USER}e
或
RewriteEngine On RewriteCond %{REMOTE_USER} (.+) RewriteRule。- [E=RU:%1] RequestHeader设置REMOTE_USER %{RU} E
为单点登录设置反向SSL代理
您可以在web服务器上设置反向SSL代理,以便运行支持SSO的Artifactory。
要做到这一点,你需要有权利组件安装,修改web服务器配置文件,然后配置Artifactory为SSO。
正确设置后,您应该能够使用Windows凭据登录到Artifactory,并在会话之间保持登录状态。
组件及版本
- IBM Websphere 8.5.5在Windows 8上运行IBM Websphere Java 7 JDK包.
- 必须在Websphere实例上安装Artifactory v3.3.0.1或更高版本。详情请参阅在IBM WebSphere上运行Artifactory.
- 的mod_auth_sspiApache模块。
修改web服务器配置文件
安装了正确的组件和版本后,需要将以下行添加到您的[HTTP_SERVER_HOME] / conf / httpd . conf
文件:
ServerName yourhostname DocumentRoot "C:/IBM/Installation Manager/eclipse/plugins/org.apache.ant_1.8.3。v20120321-1730" ProxyPreserveHost on ProxyPass /artifactory http://yourhostname:9080/artifactory ProxyPassReverse /artifactory http://yourhostname:9080/artifactory AuthName " artifactory Realm" AuthType SSPI SSPIAuth on sspiauthorized on require valid-user RewriteEngine on RewriteCond %{REMOTE_USER} (.+) RewriteRule . rwriterule . ProxyPreserveHost on ProxyPreserveHost on ProxyPreserveHost on ProxyPassReverse /artifactory http://yourhostname:9080/artifactory AuthName " artifactory Realm" AuthType SSPI SSPIAuth on sspi权威- [E=RU:%1] RequestHeader set REMOTE_USER %{RU} E . [E=RU:%1
httpd . conf
文件:LoadModule sspi_auth_module modules/mod_auth_sspi。所以LoadModule headers_module modules/mod_headers。所以LoadModule proxy_module modules/mod_proxy。那么LoadModule proxy_connect_module modules/mod_proxy_connect。所以LoadModule proxy_http_module modules/mod_proxy_http。所以LoadModule rewrite_module modules/mod_rewrite.so
使用API密钥与HTTP-SSO用户
虽然HTTP-SSO提供了对Artifactory UI的访问,但HTTP-SSO用户也可以生成一个API密匙它可以用来代替密码进行基本身份验证或在专用的REST API头,这在使用不同的客户端(例如docker, npm, maven等)或使用Artifactory REST API时非常有用。
为了允许HTTP-SSO用户访问API密钥,您需要确保“自动创建人工用户“而且”允许创建的用户访问配置文件页面选中复选框。这意味着SSO用户也保存在Artifactory数据库中,并且可以访问他们的个人信息页面以生成、检索和撤销它们的API密钥。