为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. 导入证书
image
image
注意,如果证书有密码,则需要输入证书的访问密码
image

2. 为TFS服务器绑定证书
image
image
image

image
绑定成功以后的效果:
image

3. 修改公共URL
image

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

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

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

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

原文地址:https://www.cnblogs.com/danzhang/p/11556704.html