

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

# Kinesis 视频流的安全最佳实践
<a name="security-best-practices"></a>

Amazon Kinesis Video Streams 提供了许多安全功能，供您在制定和实施自己的安全策略时考虑。以下最佳实践是一般指导原则，并不代表完整安全解决方案。这些最佳实践可能不适合环境或不满足环境要求，请将其视为有用的考虑因素而不是惯例。

有关远程设备的安全最佳实践，请参阅[设备代理的安全最佳实践](https://docs.amazonaws.cn/iot/latest/developerguide/device-defender-DetectMetricsMessagesBestPract.html)。

## 实施最低权限访问
<a name="security-best-practices-privileges"></a>

在授予权限时，您可以决定谁获得哪些 Kinesis Video Streams 资源的哪些权限。您可以对这些资源启用希望允许的特定操作。因此，您应仅授予执行任务所需的权限。实施最低权限访问对于减小安全风险以及可能由错误或恶意意图造成的影响至关重要。

例如，向 Kinesis Video Streams 发送数据的创建者仅需要 `PutMedia`、`GetStreamingEndpoint` 和 `DescribeStream`。请勿向创建者应用程序授予所有操作 (`*`) 或其他操作（例如 `GetMedia`）的权限。

有关更多信息，请参阅[什么是最低权限以及为什么需要它？](https://www.beyondtrust.com/blog/entry/what-is-least-privilege)

## 使用 IAM 角色
<a name="security-best-practices-roles"></a>

制作人和客户端应用程序必须具有有效的凭据才能访问 Kinesis 视频流。您不能将 Amazon 凭证直接存储在客户端应用程序或 Amazon S3 存储桶中。这些是长期凭证，不会自动轮换，如果遭到泄露，可能会对业务产生重大影响。

相反，您应该使用 IAM 角色来管理您的制作人和客户端应用程序访问Kinesis Video Streams的临时证书。使用角色时，不必使用长期证书（例如用户名和密码或访问密钥）来访问其他资源。

有关更多信息，请参阅 *IAM 用户指南*中的以下主题：
+ [IAM 角色](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_roles.html)
+ [针对角色的常见情形：用户、应用程序和服务](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_roles_common-scenarios.html)

## CloudTrail 用于监控 API 调用
<a name="security-best-practices-cloudtrail"></a>

Kinesis Video Streams 可与 Amazon CloudTrail之配合使用，该服务可记录用户、角色或 Amazon Web Services 服务 在 Kinesis Video Streams 中执行的操作。

您可以使用收集的信息 CloudTrail 来确定向 Kinesis Video Streams 发出的请求、发出请求的 IP 地址、谁提出请求、何时提出请求以及其他详细信息。

有关更多信息，请参阅 [使用以下命令记录 Amazon Kinesis 视频流 API 调用 Amazon CloudTrail](monitoring-cloudtrail.md)。