本指南记录了 2025 年 3 月 13 日发布的全新 AWS Wickr 管理控制台。有关经典版 AWS Wickr 管理控制台的文档,请参阅经典管理指南。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
密码恢复指令
概述
在数据保留账户生成流程中,如果服务检测到已配置的数据保留机器人,但没有无服务器数据保留,则会将密码收集脚本 (collect.py) 上传到您的 S3 存储桶。您需要在本地下载并运行此脚本以提供您的 Wickr 数据保留密码,以便该服务可以恢复您的机器人的身份。
在运行脚本之前,请验证您的 IAM 角色或用户是否具有密码恢复密钥和 S3 存储桶所需的权限。要配置访问权限,请参阅下面的 “密码恢复密钥策略” 部分。
密码恢复密钥政策
要运行密码恢复脚本,执行该脚本的 IAM 委托人需要以下权限:
-
kms: GetPublicKey 在密码恢复密钥上
-
s3:PutObject 在 DRS S3 存储桶上
查找您的资源 ARN
如果您的密码恢复密钥是由产品生成的,则可以在 Service Catalog 输出中找到密钥 ARN:
-
打开 S AWS ervice Catalog 控制台
-
导航到已配置的产品。
-
选择您的 Wickr 数据保留产品。
-
打开 Outputs (输出) 选项卡。
-
找到输PasswordRecoveryKeyArn出。
-
找到输RetentionBucketName出。
添加所需的权限
将以下语句添加到密码恢复 KMS 密钥策略中。将 {your-role-or-user-arn} 替换为将执行脚本的 IAM 角色或用户的 ARN。
{ "Sid": "PasswordRecoveryScriptAccess", "Effect": "Allow", "Principal": { "AWS": "{your-role-or-user-arn}" }, "Action": "kms:GetPublicKey", "Resource": "*" }
同样的委托人还需要在数据保留 DRS S3 存储桶PutObject 上使用 s3:。通过附加到角色或用户的 IAM 身份策略授予此权限。
注意
密码恢复密钥仅在迁移之前在数据保留期内加密 Docker-bot 的数据时使用。
Python 脚本指南
该脚本需要:
-
Python 3.8 或更高版本(推荐 3.10+ 版本)
-
pip(Python 包管理器,包含在 Python 3.4+ 中)
-
两个 Python 软件包:
boto3和cryptography -
AWS 配置了访问您的 DRS KMS 密钥和 S3 存储桶的凭证
Windows
安装 Python
-
从 pyth on.org 下载最新的 Python 安装程序 — 选择 P
ython 3.10 或更高版本的 “Windows 安装程序(64 位)”。 -
运行安装程序。在选择 “立即安装” 之前,选中第一个屏幕底部的 “将 python.exe 添加到 PATH” 复选框。
-
打开命令提示符验证安装,或者 PowerShell:
python --version你应该会看到类似
Python 3.10.x或更晚的输出。 -
验证 pip 是否可用:
pip --version
安装依赖项。
打开命令提示符或 PowerShell 并运行:
pip install boto3 cryptography
配置 AWS 凭证
确保您的 AWS 凭据已配置。最简单的方法是使用 AWS CLI:
aws configure
提供您的访问密钥 ID、私有访问密钥和默认区域。凭证必须具有:
-
kms:GetPublicKey在你的 DRS 密码恢复密钥上 -
s3:PutObject在你的 DRS S3 存储桶上 -
s3:GetObject在您的 DRS S3 存储桶上(下载脚本)
下载并解压缩脚本
-
从您的 S3 存储桶中下载 zip 文件:
aws s3 cp s3://your-bucket/wickr-drs-password-tool/collect.zip . -
解压 zip 文件:
Expand-Archive -Path collect.zip -DestinationPath . -
(可选)验证脚本校验和是否与 Wickr AWS 控制台中显示的值相匹配:
certutil -hashfile collect.py SHA256预期的哈希文件结果是:
31c5c85ec16587fbc284ed963bc0cae3723713ea9cb54a2cdc3941726bcc662a
运行脚本
python collect.py
成功完成后,删除本地文件:
del collect.py config.json collect.zip
macOS
安装 Python
macOS 附带了 Python 系统,但它可能已经过时了。使用以下方法之一安装当前版本:
选项 A:官方安装程序(最简单)
-
从 python.org 下载 macOS 安装程序 — 选择 Python
3.10 或更高版本。 -
运行
.pkg安装程序并按照提示进行操作。 -
验证:
python3 --version
选项 B:自制
如果你安装了 Homebrew:
brew install python@3.12
验证:
python3 --version
安装依赖项。
pip3 install boto3 cryptography
如果您遇到权限错误,请使用:
pip3 install --user boto3 cryptography
配置 AWS 凭证
aws configure
提供您的访问密钥 ID、私有访问密钥和默认区域。凭证必须具有:
-
kms:GetPublicKey在你的 DRS 密码恢复密钥上 -
s3:PutObject在你的 DRS S3 存储桶上 -
s3:GetObject在您的 DRS S3 存储桶上(下载脚本)
下载并解压缩脚本
-
从您的 S3 存储桶中下载 zip 文件:
aws s3 cp s3://your-bucket/wickr-drs-password-tool/collect.zip . -
解压 zip 文件:
unzip collect.zip -
(可选)验证脚本校验和:
shasum -a 256 collect.py预期的 shasum 结果是:
31c5c85ec16587fbc284ed963bc0cae3723713ea9cb54a2cdc3941726bcc662a将输出与 Wickr AWS 控制台中显示的校验和进行比较。
运行脚本
python3 collect.py
成功完成后,删除本地文件:
rm collect.py config.json collect.zip
Linux
安装 Python
大多数 Linux 发行版包括 Python 3。检查您当前的版本:
python3 --version
如果 Python 未安装或低于 3.8,请使用发行版的包管理器进行安装:
Ubuntu /Debian
sudo apt update sudo apt install python3 python3-pip
亚马逊 Linux 2023 /Fedora /RHEL 9+
sudo dnf install python3 python3-pip
亚马逊 Linux 2 /RHEL 7-8 /CentoS 7-8
sudo yum install python3 python3-pip
验证:
python3 --version pip3 --version
安装依赖项。
pip3 install boto3 cryptography
如果您遇到权限错误,请使用:
pip3 install --user boto3 cryptography
配置 AWS 凭证
aws configure
提供您的访问密钥 ID、私有访问密钥和默认区域。凭证必须具有:
-
kms:GetPublicKey在你的 DRS 密码恢复密钥上 -
s3:PutObject在你的 DRS S3 存储桶上 -
s3:GetObject在您的 DRS S3 存储桶上(下载脚本)
下载并解压缩脚本
-
从您的 S3 存储桶中下载 zip 文件:
aws s3 cp s3://your-bucket/wickr-drs-password-tool/collect.zip . -
解压 zip 文件:
unzip collect.zip如果
unzip未安装:sudo apt install unzip(Debian/Ubuntu) 或sudo dnf install unzip(Fedora/RHEL/AL2023)。 -
(可选)验证脚本校验和:
sha256sum collect.pysha256sum 的预期结果是:
31c5c85ec16587fbc284ed963bc0cae3723713ea9cb54a2cdc3941726bcc662a将输出与 Wickr AWS 控制台中显示的校验和进行比较。
运行脚本
python3 collect.py
成功完成后,删除本地文件:
rm collect.py config.json collect.zip