能点进来的朋友一定是有这方面兴趣或者需求的,我就直接上干货。
本文分三部分:
一. Azure Application Proxy (AAP) 工作原理
二. AAP 详细部署步骤
三. AAP的日常维护
下面一个个来看。
一. Azure Application Proxy (AAP) 工作原理
1.1 首先是一个微软官方的图:
图中每步的描述如下:
1. 用户访问应用时,首先被导向到登录页面进行登录。
2. 登录成功后, AAD 向客户端发送令牌。
3. 客户端将令牌发送到AP Service, 系统解析出令牌里的 UPN 和 SPN。
4. AP Service发送请求, AP Connector 会接收请求。
5. AP Connector 向本地的 application 发送请求(如有其它的验证,比如SSO,可由AP Connecter在此处完成)。
6. 请求的响应经由 AP Connector 返回到 AP Service。
7. 请求最终经AP Service返回到用户。
1.2 此次部署的系统架构图
简单说明一下上图:
1. 已有的资源:
- Azure订阅,其中包含了Application Proxy服务 (这个服务组件不是所有的Azure订阅里都有,可以从这里查看所需的订阅类型);
- AWS 订阅,其中运行着要发布的后端应用 (对于应用运行在自建的机房,其实性质也一样,只要机房有Internet接口就行);
2. 部署AAP 要做的事情
- 在AWS 订阅里部署 AAP Connector (AWS 订阅里蓝色的两套EC2,一套给生产环境一套给测试环境。每套各两台EC2,用于实现高可用和负载均衡)
- 发布应用 (这些是在Azure的管理界面里做的)
二、AAP 详细部署步骤
2.1 AWS 订阅里部署 AAP Connector
- 综合考虑所需的机器性能和费用,选择合适的机型生成EC2。
- 开通四台EC2到应用服务器之间的通讯端口,以及从 Internet 访问 EC2 的443端口。
- 在生成的EC2上登录https://portal.azure.com, 进入Azure Active Directory下的 Application Proxy界面,然后点"Download connector service"下载Connector安装包。
- 运行Connector 安装包,按照提示完成安装
安装完成后,新安装的Connector会自动注册到Azure AD 中,并列示在“Default” 这个Connector Group下面(如下图红框所示)。
依次在其他三台EC2上安装Connector,自动注册进AAD。 - 点击上图蓝框处的"New Connector Group", 分别创建生产环境 "ChinaProd" 和测试环境 "ChinaUAT" 的两个连接器组。结果如下图的样子。
- 在Default 组里,依次选中四台 Connector,然后根据其角色类型重分组到 ChinaProd 或者 ChinaUAT 组里。结果如下:
2.2 发布应用
- 点击上图右上角的 "Configure an app",来添加一个要发布的应用。
根据屏幕提示,Name 和 Internal Url 是必填项。如果涉及到不同运行环境的Connector 组,还需要选择 "Connector Group"。根据实际需求进行填写和设置,完成后点 “Add” 按钮完成添加。
- 添加完应用后还需要分配可访问这个应用的用户。可以在Overview界面里,点 "Assign users and groups", 然后根据提示找到用户来添加就行。
至此,我们完成了通过AAP 进行应用的发布,就已经可以通过上面的 "External Url" 从Internet 来访问应用了。
三. AAP的日常维护
通常跟AAP 相关的日常维护并不多。在这里只是罗列几点可能会涉及到的:
1. AAP 设置完成后,外部访问地址是微软的一个域名。如果自己有公网DNS的话,可以添加CNAME来指向AAP的域名。
比如,上面创建的是一个apitest.***,下面再创建一个O365.***。
可以在自己的公网DNS管理界面里给两个AAP的外部访问地址添加CNAME,这样用户就不用去记微软的那个域名了;另外,这有时也涉及到统一公司形象的问题。
2. 用户的管理
这里说两点:
A. 应用日后维护的入口
应用发布完成后,如果需要对之前的应用进行设置上的变更,需要从 Enterprise Applications这个入口进入(可以收藏到左边栏里,方便日后访问)。
进入Enterprise Applications, 搜索要设置的应用点进去之后就和上面刚创建完 apitest 这个界面一样。可以同样的进行用户的添加。
B. 建议通过组来进行用户的管理。
3. 和应用相关的参数调整
上面发布应用时,使用的都是默认的设置。但应用会有不同的需求,这时需要重新回到当时的界面来做一些调整,比如如何验证用户、是否要保持会话、应用超时设置等等。
设置入口同样是上面的Enterprise Applications, 进入后,找到应用然后进一步 打开 Application Proxy就可以重新设置了。
--------------------------- EOF ----------------------------------