

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 为 Amazon Q 开发者版配置防火墙、代理服务器或数据边界
<a name="firewall"></a>

如果您使用的是防火墙、代理服务器或[数据边界](https://aws.amazon.com/identity/data-perimeters-on-aws/)，请确保将以下内容和 URLs Amazon 资源名称 (ARNs) 的流量列入许可名单，以便 Amazon Q 按预期运行。

## 一般 URLs 到许可名单
<a name="firewall-general-urls"></a>

在以下内容中 URLs，替换：
+ *idc-directory-id-or-alias*使用您的 IAM 身份中心实例的目录 ID 或别名。有关 IAM Identity Center 的更多信息，请参阅 *AWS IAM Identity Center 用户指南*中的[什么是 IAM Identity Center？](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)。
+ *sso-region*与启用您的 IAM 身份中心实例的 AWS 区域相同。有关更多信息，请参阅 [Amazon Q 开发者版支持的 IAM Identity Center 区域](q-admin-setup-subscribe-regions.md#pro-subscription-regions)。
+ *profile-region*与安装您的 Amazon Q 开发者配置文件所在的 AWS 区域相同。有关 Amazon Q 开发者版配置文件的更多信息，请参阅[什么是 Amazon Q 开发者版配置文件？](subscribe-understanding-profile.md)和 [Q 开发者版控制台与 Q 开发者版配置文件支持的区域](q-admin-setup-subscribe-regions.md#qdev-console-and-profile-regions)。


| URL | 用途 | 
| --- | --- | 
|  `idc-directory-id-or-alias.awsapps.com `  |  身份验证  | 
|  `oidc.sso-region.amazonaws.com`  |  身份验证  | 
|  `*.sso.sso-region.amazonaws.com`  |  身份验证  | 
|  `*.sso-portal.sso-region.amazonaws.com`  |  身份验证  | 
|  `*.aws.dev`  |  身份验证  | 
|  `*.awsstatic.com`  |  身份验证  | 
|  `*.console.aws.a2z.com`  |  身份验证  | 
|  `*.sso.amazonaws.com`  |  身份验证  | 
|  `https://codewhisperer.us-east-1.amazonaws.com`  |  Amazon Q 开发者版功能  | 
|  `https://q.profile-region.amazonaws.com`  |  Amazon Q 开发者版功能  | 
|  `https://idetoolkits-hostedfiles.amazonaws.com/*`  |  IDE 中的 Amazon Q 开发者版，配置  | 
|  `https://idetoolkits.amazonwebservices.com/*`  |  IDE 中的 Amazon Q 开发者版，端点  | 
|  `q-developer-integration.us-east-1.api.aws`  |  IDE 中的 Amazon Q 开发者版，端点  | 
|  `https://aws-toolkit-language-servers.amazonaws.com/*`  |  IDE 中的 Amazon Q 开发者版，语言处理  | 
|  `https://aws-language-servers.us-east-1.amazonaws.com/*`  |  IDE 中的 Amazon Q 开发者版，语言处理  | 
|  `https://client-telemetry.us-east-1.amazonaws.com`  |  IDE 中的 Amazon Q 开发者版，遥测  | 
|  `cognito-identity.us-east-1.amazonaws.com`  |  IDE 中的 Amazon Q 开发者版，遥测  | 

## Amazon S3 存储桶 URLs 和 ARNs 允许名单
<a name="data-perimeters"></a>

对于某些功能，Amazon Q 会将项目上传到 AWS 服务拥有的 Amazon S3 存储桶。如果您使用数据边界来控制环境中对 Amazon S3 的访问，则可能需要明确允许访问这些存储桶才能使用相应的 Amazon Q 功能。

下表列出了 Amazon Q 需要访问的每个 Amazon S3 存储桶的 URL 和 ARN，以及使用每个存储桶的功能。可以使用存储桶 URL 或存储桶 ARN 将这些存储桶列入允许列表，具体取决于您如何控制对 Amazon S3 的访问权限。

您只需要在安装了 Amazon Q 开发者配置文件的 AWS 地区将存储桶列入许可名单。有关 Amazon Q 开发者版配置文件的更多信息，请参阅[什么是 Amazon Q 开发者版配置文件？](subscribe-understanding-profile.md)。


| Amazon S3 存储桶 URL 和 ARN | 用途 | 
| --- | --- | 
|  美国东部（弗吉尼亚州北部）： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/amazonq/latest/qdeveloper-ug/firewall.html) 欧洲地区（法兰克福）： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/amazonq/latest/qdeveloper-ug/firewall.html)  |  用于上传 [Amazon Q 代码审查](code-reviews.md)的构件的 Amazon S3 存储桶  | 
|  美国东部（弗吉尼亚州北部）： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/amazonq/latest/qdeveloper-ug/firewall.html) 欧洲地区（法兰克福）： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/amazonq/latest/qdeveloper-ug/firewall.html)  |  用于上传 [Amazon Q 代码转换](code-transformation.md)的构件的 Amazon S3 存储桶  | 

## 在 Amazon Q 中配置公司代理
<a name="corp-proxy"></a>

如果最终用户在公司代理后面工作，请让他们完成以下步骤，以成功连接到 Amazon Q。

### 步骤 1：在 IDE 中配置代理设置
<a name="w2aac21c24b9b5"></a>

在 IDE 中指定代理服务器的 URL。

**注意**  
不支持 SOCKS 代理和代理自动配置（PAC）文件。您必须按照以下说明手动配置 HTTP 或 HTTPS 代理。

------
#### [ Eclipse ]

1. 在 Eclipse 中，按以下方式打开**首选项**：
   + 在 Windows 或 Ubuntu 上：
     + 从 Eclipse 菜单栏中选择**窗口**，然后选择**首选项**。
   + 在 macOS 上：
     + 从菜单栏中选择 **Eclipse**，然后根据您的 macOS 版本选择**设置**或**首选项**。

1. 在搜索栏中，输入 **Amazon Q** 并打开 Amazon Q。

1. 在**代理设置**下，将 **HTTPS 代理 URL** 设置为公司代理 URL。

   示例：`http://proxy.company.com:8080`、`https://proxy.company.com:8443`

1. 将 Amazon Q 设置保持为打开状态，然后转到下一步。

------
#### [ JetBrains ]

在中 JetBrains，按照 IntelliJ IDEA 文档的 [HTTP 代理主题中的指导手动配置代理](https://www.jetbrains.com/help/idea/settings-http-proxy.html)服务器的主机名和端口。

------
#### [ Visual Studio ]

1. 从 Visual Studio 主菜单中选择**工具**，然后选择**选项**。

1. 从**选项**菜单中展开 **AWS Toolkit**，然后选择**代理**。

1. 从**代理**菜单中，将**主机**和**端口**设置为公司代理主机和端口。

   示例：`http://proxy.company.com:8080`、`https://proxy.company.com:8443`

------
#### [ Visual Studio Code ]

1. 在 VS Code 中，按 **CMD \$1 ,**（Mac）或 **Ctrl \$1 ,**（Windows/Linux）打开 VS Code **设置**。

1. 从**设置**搜索栏中输入 **Http: Proxy**，然后在搜索结果中找到它。

1. 输入公司代理 URL。

   示例：`http://proxy.company.com:8080`、`https://proxy.company.com:8443`

1. （可选）在**设置**搜索栏中输入 **HTTP: No Proxy**，然后在结果中找到它。

1. 选择**添加项目**按钮，然后添加绕过代理的域，用逗号分隔。

------

### 步骤 2：配置 SSL 证书处理
<a name="proxy-configure-ssl-cert"></a>

Amazon Q 自动检测并使用您系统上安装的可信证书。如果您遇到证书错误，则必须通过完成以下过程来手动指定证书捆绑包。

**注意**  
以下是需要手动配置的情形。  
配置代理后，您遇到了与证书相关的错误。
公司代理使用的证书不在系统的信任存储中。
Amazon Q 无法自动检测公司证书。

------
#### [ Eclipse ]
+ 在 Eclipse 的 Amazon Q 设置中，在**代理设置**下，将 **CA 证书 PEM** 设置为公司证书文件的路径。文件必须具有 `.pem` 文件扩展名。（不能使用 `.crt` 文件。）

  示例路径与以下内容类似：

  `/path/to/corporate-ca-bundle.pem`

  有关获取此文件的说明，请参阅[获取公司证书](#proxy-get-corp-ca-cert)。

------
#### [ JetBrains ]

在中 JetBrains，按照 IntelliJ IDEA 文档中[受信任的根证书](https://www.jetbrains.com/help/idea/ssl-certificates.html#manual_configuration)主题中的指导手动安装您的公司证书。

有关获取证书的说明，请参阅[获取公司证书](#proxy-get-corp-ca-cert)。

------
#### [ Visual Studio ]
+ 配置以下 Windows 环境变量：
  + `NODE_OPTIONS = --use-openssl-ca`
  + `NODE_EXTRA_CA_CERTS = cert-path`

  *cert-path*替换为公司证书文件的路径。文件必须具有 `.pem` 文件扩展名。（不能使用 `.crt` 文件。）

  示例路径与以下内容类似：

  `/path/to/corporate-ca-bundle.pem`

  有关获取公司证书文件的说明，请参阅[获取公司证书](#proxy-get-corp-ca-cert)。有关 Windows 环境变量的详细信息，请参阅 [Node.js documentation](https://nodejs.org/api/cli.html#cli_node_extra_ca_certs_file)。

------
#### [ Visual Studio Code ]

1. 在 VS Code 中，按 **CMD \$1 ,**（Mac）或 **Ctrl \$1 ,**（Windows/Linux）打开 VS Code **设置**。

1. 从**设置**搜索栏中输入 **Amazon Q › Proxy: Certificate Authority**，然后在搜索结果中找到它。

1. 输入公司证书文件的路径。它将具有 `.pem` 或 `.crt` 文件扩展名。

   示例路径与以下内容类似：

   `/path/to/corporate-ca-bundle.pem`

   有关获取此文件的说明，请参阅[获取公司证书](#proxy-get-corp-ca-cert)。

------

### 步骤 3：重新启动 IDE
<a name="w2aac21c24b9b9"></a>

您必须重新启动 IDE 才能使用所做的更改更新 Amazon Q。

### 问题排查
<a name="w2aac21c24b9c11"></a>

如果您已完成前几节中的步骤，但仍遇到问题，请按照以下说明进行故障排除。

------
#### [ Eclipse ]

1. 确保代理 URL 格式包含 `http://` 或 `https://`。

1. 确保证书文件路径正确且可访问。

1. 在 Eclipse 错误日志中查看 Amazon Q 日志。要导航至错误日志，请执行以下操作之一：
   + 在 Eclipse 中登录 Amazon Q，选择右上角 Q 图标旁边的向下箭头，然后依次选择**帮助**和**查看日志**。
   + 从 Eclipse 菜单中依次选择**窗口**、**显示视图**和**错误日志**。
**注意**  
如果您遇到以下错误消息：  
`unable to verify the first certificate`，请确保已按照[步骤 2：配置 SSL 证书处理](#proxy-configure-ssl-cert)中的说明来手动指定证书。
`self signed certificate`，请确保已按照[步骤 2：配置 SSL 证书处理](#proxy-configure-ssl-cert)中的说明来手动指定证书。
`ECONNREFUSED`，请检查互联网连接和代理信息。

------
#### [ JetBrains ]

1. 确保代理 URL 格式包含 `http://` 或 `https://`。

1. 确保证书文件路径正确且可访问。

1. 在日志文件中查看您的 Amazon Q JetBrains 日志。有关查找日志文件的帮助，请参阅 “Support（ JetBrains IDEs 支持）” 页面上的 “[查找 IDE 日志文件](https://intellij-support.jetbrains.com/hc/en-us/articles/207241085-Locating-IDE-log-files)”。
**注意**  
如果您遇到以下错误消息：  
`unable to verify the first certificate`，请确保已按照[步骤 2：配置 SSL 证书处理](#proxy-configure-ssl-cert)中的说明来手动指定证书。
`self signed certificate`，请确保已按照[步骤 2：配置 SSL 证书处理](#proxy-configure-ssl-cert)中的说明来手动指定证书。
`ECONNREFUSED`，请检查互联网连接和代理信息。

------
#### [ Visual Studio ]

1. 确保代理 URL 格式包含 `http://` 或 `https://`。

1. 确保证书文件路径正确且可访问。

1. 按如下方式查看 AWS Toolkit 扩展程序的日志：
   + 在 Visual Studio 主菜单中，展开**扩展**。
   + 选择 **AWS Toolkit** 展开 AWS 工具包菜单，然后选择**查看 Toolkit 日志**。
   + 当 AWS Toolkit 日志文件夹在您的操作系统中打开时，按日期对文件进行排序，然后找到任何包含与当前问题相关的信息的日志文件。

1. 在 Visual Studio 活动日志中查看 Amazon Q 日志。有关更多信息，请参阅 [Troubleshooting Extensions with the Activity Log](https://devblogs.microsoft.com/visualstudio/troubleshooting-extensions-with-the-activity-log/)。
**注意**  
如果您遇到以下错误消息：  
`unable to verify the first certificate`，请确保已按照[步骤 2：配置 SSL 证书处理](#proxy-configure-ssl-cert)中的说明来手动指定证书。
`self signed certificate`，请确保已按照[步骤 2：配置 SSL 证书处理](#proxy-configure-ssl-cert)中的说明来手动指定证书。
`ECONNREFUSED`，请检查互联网连接和代理信息。

------
#### [ Visual Studio Code ]

1. 确保代理 URL 格式包含 `http://` 或 `https://`。

1. 确保证书文件路径正确且可访问。

1. 在 VS Code 的**输出面板**中查看 Amazon Q 日志。
**注意**  
如果您遇到以下错误消息：  
`unable to verify the first certificate`，请确保已按照[步骤 2：配置 SSL 证书处理](#proxy-configure-ssl-cert)中的说明来手动指定证书。
`self signed certificate`，请确保已按照[步骤 2：配置 SSL 证书处理](#proxy-configure-ssl-cert)中的说明来手动指定证书。
`ECONNREFUSED`，请检查互联网连接和代理信息。

------

#### 获取公司证书
<a name="proxy-get-corp-ca-cert"></a>

要获取公司证书，请向您的 IT 团队询问以下信息：
+ 公司证书捆绑包，通常是 `.pem` 或 `.crt` 文件。
+ 代理服务器详细信息，包括主机名、端口和身份验证方法。

或者，从浏览器导出证书：

1. 访问公司域上的任何 HTTPS 网站。

1. 在地址栏附近，选择锁图标或类似图标。（此图标因浏览器供应商而异。）

1. 将根证书导出到文件中。确保包括整个证书链。根据您使用的浏览器，导出根证书的步骤会略有不同。有关详细步骤，请查阅浏览器的文档。