为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

时间:2023-03-10 03:19:57
为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

Contents

1. 概述

2. HTTP和HTTS比较

支持HTTP和HTTPS两种方式

要求所有连接使用HTTPS

优点:

缺点:

3. 为Azure DevOps Server 配置安全访问

1. 概述

Azure DevOps Server (TFS)支持默认的超文本传输协议(HTTP),也支持安全的超文本传输协议(HTTPS)。将TFS服务器服务器配置为安全访问(https/SSL),可以大幅增强其部署的安全性和数据传输的安全性。在系统部署过程中,TFS默认选择HTTP部署方式;如果在使用一段时间之后配置为HTTPS访问方式,则还需要开发人员做响应的调整。本文介绍如何在Azure DevOps Server中配置SSL,以及配置完成后对用户的影响。
在调整系统配置之前,最好了解和评估两种部署的优劣,以便做出最好的选择。

2. HTTP和HTTS比较

支持HTTP和HTTPS两种方式

如果将azure devops服务器的配置为支持这两种协议,则那些使用新的HTTPS连接TFS的客户端计算机变得更加安全。此外,那些使用HTTP连接服务器的客户端计算机任然可以使用,不需要做任何调整。
即使将服务器配置为两种协议,在一般情况下,我们不会将TFS通过HTTP的方式发布到公网上,只会在一个可控的内网网络环境中发布HTTP协议。
支持两种协议的配置方式,比较适合与在当前使用HTTP协议的基础上,新增HTTPS协议,这样既不影响当前的用户,又可以加强新增用户的访问安全性;随时时间的推移,我们可以阶段性的逐步条件老用户的的连接方式,从而最低限度的降低系统变更对用户造成的影响。
这种配置方式,比较常见的应用场景是,内网用户使用HTTP访问TFS,公网用户使用HTTPS访问TFS;这样,我们可以同时兼顾安全性、便捷性和效率几个方面的考虑。

要求所有连接使用HTTPS

优点:

如果我们要求所有开发团队都是用HTTPS的方式连接TFS系统,明显可以获得两个优势:

  • 安全的数据传输。用户和服务器之间的全部数据传输都是加密的。
  • 可以通过控制SSL证书的过期的方式,达到控制服务失效的目标。
缺点:

当然,缺陷也非常明显:

  • 传输速度慢。我们知道,使用SSL加密方式传输数据,需要在常规传输的基础上增加加密和解密的过程,这是需要消耗系统资源和时间的,必然会造成传输速度的降低。系统响应速度降低,不仅体现用户连接服务器下载代码、修改工作项、自动化的流水线执行上,还会反映在运维、系统升级等维护性的工作上。
  • 需要维护证书。基于SSL的Web应用,都需要获取来自签发机构的SSL证书。如果是证书来自自有证书签发机构,则会影响用户信任。同时,维护证书签发机构,也必然会提高系统运行的维护成本。当然,如果证书来自第三方机构,则需要为此额外付费。

在评估软件维护成本和效率之后,用户自然会选择适合自己的部署方式。

3. 为Azure DevOps Server 配置安全访问

为Azure DevOps Server 配置安全访问,只要包含三个过程:

  • 从签发机构获取证书
  • 安装和分配证书
  • 配置TFS服务器的公共URL
  • 调整客户端配置
  • 调整代理配置

下面来简要介绍TFS系统相关步骤的操作:
使用TFS系统管理员(也是操作系统管理员)的身份登录TFS应用服务器,配置IIS中的证书。

1. 导入证书

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

注意,如果证书有密码,则需要输入证书的访问密码

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

2. 为TFS服务器绑定证书

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

绑定成功以后的效果:

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

3. 修改公共URL

为Azure DevOps Server (TFS) 配置安全访问(HTTPS with SSL)

如果取消了HTTP协议,还需要开发人员调整自己的Git配置。这里主要涉及Git远程分支的操作,会在后续的博客中详细介绍

------------------------------------------------------------

http://www.cnblogs.com/danzhang/  DevOps MVP 张洪君

------------------------------------------------------------