视频直播会对每一次发起操作请求的用户身份进行验证,通过AccessKey验证该账号是否拥有相应的权限。视频直播支持主账号AK和RAM用户AK,本文为您介绍这两种方式和对比,以及阿里云提供的系统授权策略和自定义授权策略。

简介

您可以使用视频直播服务提供的API接口或SDK访问视频直播服务。视频直播会针对每一次发起的请求,根据当前的操作验证用户身份,验证该账号是否拥有相应的权限,验证用户身份都需要使用AccessKey。

通过阿里云访问控制服务(RAM),可为RAM用户授予相关权限,以达到RAM用户在授权范围使用视频直播控制台的目的。

访问控制基本概念

  • 访问控制(RAM)

    RAM(Resource Access Management)是阿里云提供的用户身份管理与资源访问控制服务。更多信息,请参见什么是访问控制

    说明 RAM服务提供的权限的分割和管理,而并非资源本身的隔离,也就是RAM用户从属于主账号,并且这些RAM用户下不能拥有实际的任何资源,所有资源都属于主账号。
  • 阿里云账号(主账号)

    阿里云账号(主账号)是阿里云资源归属、资源使用计量计费的基本主体。阿里云账号为其名下所拥有的资源付费,并对其名下所有资源拥有完全控制权限。

  • RAM用户

    根据阿里云的主账号创建的RAM用户,每个RAM用户拥有自己AccessKey,可以和阿里云主账号一样正常的完成有权限的操作。一般来说,这里的RAM用户可以理解为具有某种权限的用户,可以被认为是一个具有某些权限的操作发起者。

  • 授权策略(RAM Policy)

    授权策略使用语法结构描述一组权限,它可以精确地描述被授权的资源集、操作集以及授权条件。通过设置权限策略,并给用户或用户组附加授权,就可以精确控制用户访问您名下哪些资源或服务的权限,比如限制您的用户只拥有上传、播放或审核权限。

  • 访问密钥(AccessKey)

    AccessKey(简称AK),包括访问身份验证中用到的AccessKey ID和AccessKey Secret。视频直播通过使用AccessKey ID和AccessKey Secret对称加密的方法,来验证某个请求的发送者身份。

    • AccessKey ID:用于标识用户。
    • AccessKey Secret:用户用于加密签名字符串,以及视频直播用来验证签名字符串的密钥,AccessKey Secret必须保密。
      说明 AccessKey Secret只在创建时显示,不支持查询,请妥善保管。
    • AK对:指AccessKey ID和AccessKey Secret。

更多关于访问控制的概念,请参见访问控制基本概念

不同验证方式及对比

目前访问视频直播使用的AK有如下2种类型:

  • 主账号AK

    主账号AK特指视频直播开通者(即阿里云网站注册的账号)的AK,每个阿里云主账号提供的AK对拥有的资源有完全的权限。每个阿里云主账号能够同时拥有不超过5个启用或者禁用 AK对。您可以登录AccessKey管理控制台,申请新增或删除AK对。每个AK对都有启用和禁用两种状态,只有启用的AK对才能在身份验证时使用。

    警告 由于主账号AK有完全的权限,一旦泄露风险巨大,不建议使用其访问视频直播服务。
  • RAM用户AK

    RAM是阿里云提供的资源访问控制服务。RAM用户AK指的是通过RAM被授权的AK。这组AK只能按照RAM定义的规则去访问视频直播的资源。通过RAM,您可以集中管理您的用户(比如员工、系统或应用程序),以及控制用户可以访问您名下哪些资源的权限。比如能够限制您的用户只拥有视频播放权限。RAM用户从属于主账号,并且这些账号下不能拥有实际的任何资源,所有资源都属于主账号。

    您可以登录RAM访问控制台创建RAM用户,获取AK,并授予相应权限。具体操作,请参见创建RAM用户并授权

不同验证方式的对比

验证方式 风险 权限 时效 适用场景
主账号AK 极大 管理和操作视频直播所有资源的权限 启用后一直有效 超级管理员进行操作。不建议在程序里使用,尤其不要放到客户端。
RAM用户AK 较小 根据授权策略获得相应的权限 启用后一直有效 授权进行具体的管理等操作。可准备多个RAM用户,如遇AK泄露(人员离职等)需要更换;建议在服务端使用。

授权策略

使用授权策略,可对RAM用户进行方便、精确的授权。阿里云提供了系统授权策略和自定义授权策略两种方式。

  • 系统授权策略

    使用视频直播涉及到如下三种系统授权策略。

    策略名称 说明 操作权限
    AliyunLiveFullAccess 管理视频直播(Live)的权限 视频直播所有控制台操作和API
    AliyunLiveReadOnlyAccess 只读访问视频直播的权限 视频直播所有读取类操作和API,如以Describe开头的接口
    AliyunMTSFullAccess 管理媒体转码服务(MTS)的权限 媒体转码服务所有控制台操作和API
  • 自定义授权策略

    如果系统策略无法满足您的需求,您可以通过创建自定义策略实现精细化权限管理。

    使用视频直播服务涉及到OSS授权策略和Live授权策略,更多信息和具体操作,请参见授权示例

说明 使用直播控制台,必须给您的子账号开通以下授权才能正常使用服务。
  • Live (必选)授权使用直播服务,直接使用系统内置AliyunLiveFullAccess授权策略。
  • OSS (必选)授权使用截图存储服务,可按需自定义,请参见授权示例

若要将视频直播的录制文件和截图文件保存到用户OSS的Bucket中,需要对直播服务Live授权访问OSS,使用的是AliyunMTSDefaultRole角色。去授权