多应用体系是阿里云账号下管理多环境(如开发、测试、生产)或多租户业务的逻辑隔离方案,通过创建独立应用空间实现数据、配置和权限的精细隔离,降低管理成本并提升安全性。本文为您介绍多应用体系的工作原理、使用场景、开通配置、使用限制,以及应用管理和授权。
工作原理
多应用体系通过在视频点播的元数据中增加应用标识AppId来实现逻辑隔离。当发起API请求(如上传视频、获取播放地址)时,系统会根据传入的AppId参数,将操作限定在指定应用内。
核心概念
应用(App):一个独立的逻辑空间,用于隔离媒体资源、配置和权限。每个应用拥有唯一的
AppId。默认应用(System App):开通多应用体系后,系统会自动创建一个ID为
app-1000000的默认应用。账号下所有的历史数据会自动归属到此应用。如果在调用API时不指定AppId,操作对象也默认为此应用。自定义应用(Custom App):用户自定义创建的应用
app-xxxxxxx,用于隔离新的业务或环境。
使用场景
多个环境隔离:
测试环境和线上环境需要资源隔离(如视频、图片等),或配置、数据等的隔离(如分别配置不同的消息回调地址),可以使用多应用体系,为每个环境创建不同的应用,并关联不同的RAM子账号、授予相应权限,以免开发、测试时影响线上。
多个业务隔离:
同一公司有多条业务线或者多个部门都需要使用点播服务,可以使用多应用来做到相互隔离,为每个业务或部门创建不同的应用。
多个渠道隔离:
如果想基于点播服务的某些能力构建平台化服务,面向多个渠道或多个客户,也可以使用多应用体系。
开启并配置
在开始使用前,需要先提交工单申请开通该功能。开通后,系统会自动创建默认应用,并将历史数据归入其中。
提交工单申请开通。
创建多应用。
为身份实体授权。
调用AttachAppPolicyToIdentity - 为身份实体附加应用授权为RAM用户或RAM角色授予访问特定应用的权限。视频点播提供三种应用级权限策略:
策略名称
授权范围
操作权限
VODAppAdministratorAccess所有应用
管理主账号下的所有应用及应用下所有资源的权限
VODAppFullAccess单个应用
指定应用下的所有资源
VODAppReadOnlyAccess单个应用
只读访问指定应用下的所有资源,如调用Get、Describe、Search、List等接口操作资源。
管理多应用。
可以通过多应用体系的接口,创建、查询、更新和删除应用。控制台后续将支持更多多应用管理功能。
使用多应用
支持多应用的服务,会增加对参数AppId的支持,创建资源或新的设置时可指定此参数,查询数据时也仅会返回拥有权限的应用下的资源,而修改或删除时会校验相关权限。
当前,仅消息回调和媒资服务(上传、播放和媒资管理)支持多应用。
消息回调
可为每个应用设置独立的消息回调方式和地址,配合API(设置事件通知配置)使用:
指定AppId,可设置该应用下的消息回调。
未指定时,则使用系统默认应用。
完成设置后,不同应用下上传的视频、图片等产生的事件通知会根据其设置进行相应回调。也可使用查询事件通知配置接口查询相关配置。
媒资服务
媒体上传:上传相关接口(获取视频上传地址和凭证、获取图片上传地址和凭证等)支持指定AppId, 前提是该账号实体拥有该应用的权限,无权限则无法上传,不指定应用ID则上传到系统默认应用。
音视频播放:只能获取到授权应用下的播放信息(播放凭证、播放地址等)。
修改删除:修改和删除媒资相关操作只能操作有权限的应用下的资源。
媒资查询:查询媒资详情接口,只能获取到有权限的应用下的媒资信息。批量查询时,只返回有权限的媒资数据,无权限的MediaId会放入NonExistMediaIds(字段名可能略有不同)。
媒资搜索:搜索时只返回有权限的应用下的媒资数据,搜索条件中可指定一个或多个AppId。
使用限制
多应用体系支持地域:华东2(上海)、华北2(北京)、华南1(深圳)、新加坡、德国(法兰克福)、美国(硅谷)、日本(东京)、印度尼西亚(雅加达)。
同一账号最多可以创建10个应用,如有更高需求,请提交工单。
仅支持媒体上传、音视频播放、媒资管理、消息回调的多应用隔离。
计费说明
当前所有应用的资源消耗(存储、流量、转码等)均按账号计费,暂不支持应用维度的独立计费与账单生成。
常见问题
开通后对现有业务有影响吗
无影响。所有历史数据会自动归属到默认应用,现有的API调用和业务逻辑无需修改即可继续正常工作。
如何将历史视频迁移到新创建的应用中
可以使用迁移资源到新应用接口进行迁移。该接口支持单个或批量迁移,迁移过程中视频的VideoId和播放地址保持不变,不影响在线业务。
控制台导航权限
一级目录 | 二级目录 | 三级目录 | 默认版本 | 多应用版本 | |
应用外 | 应用内 | ||||
概览 | — | — | ✔️ | ✔️ | — |
应用管理 | — | — | — | ✔️ | — |
媒资库 | 音视频 | — | ✔️ | — | ✔️ |
图片 | — | ✔️ | — | ✔️ | |
短视频素材 | — | ✔️ | — | ✔️ | |
制作中心 | 视频剪辑 | — | ✔️ | — | ✔️ 应用内查看,仅主应用 |
审核管理 | 视频审核 | — | ✔️ | — | ✔️ |
审核设置 | — | ✔️ | — | ✔️ | |
配置管理 | 媒资管理配置 | 存储管理 | ✔️ | — | ✔️ |
存储策略 | ✔️ | — | ✔️ 应用内查看,仅主应用 | ||
分类管理 | ✔️ | — | ✔️ | ||
媒体处理配置 | 转码模板组 | ✔️ | — | ✔️ | |
截图模板 | ✔️ | — | ✔️ | ||
动图模板 | ✔️ | — | ✔️ | ||
水印模板 | ✔️ | — | ✔️ | ||
工作流管理 | ✔️ | — | ✔️ | ||
回调设置 | ✔️ | — | ✔️ | ||
DRM证书管理 | ✔️ | — | ✔️ | ||
标准加密 | ✔️ | — | ✔️ | ||
分发加速配置 | 域名管理 | ✔️ | — | ✔️ | |
刷新预热 | ✔️ | — | ✔️ | ||
下载设置 | ✔️ | — | ✔️ | ||
SDK管理 | SDK列表 | — | ✔️ | ✔️ | — |
我的授权 | — | ✔️ | ✔️ | — | |
工具 | 视频播放问题排查 | — | ✔️ | ✔️ | — |
数字水印提取工具 | — | ✔️ | — | ✔️ | |
开通多应用 | — | ✔️ | ✔️ | — | |
数据中心 | 播放质量监控 | — | ✔️ | — | ✔️ |
单点探查 | — | ✔️ | — | ✔️ | |
监控统计 | 资源监控 | ✔️ | — | ✔️ | |
实时监控 | ✔️ | — | ✔️ | ||
统计分析 | ✔️ | — | ✔️ | ||
资源包管理 | — | ✔️ | ✔️ | — | |
用量查询 | — | ✔️ | ✔️ | ✔️ | |
日志管理 | — | ✔️ | ✔️ | ✔️ | |
媒资数据导出 | — | ✔️ | — | ✔️ | |
