阿里云对象存储OSS与智能媒体管理(IMM)深度结合,支持媒体处理、文档处理等丰富的数据分析处理操作。本文介绍如何通过OSS使用IMM的相关功能。
前提条件
仅支持使用IMM的地域可以使用IMM相关功能。更多信息,请参见服务接入点。
已开通IMM服务并完成授权。关于开通服务及授权的具体操作,请参见开通产品。
如果您通过RAM用户使用IMM相关功能,需确保RAM用户拥有以下权限。
系统权限:访问OSS的权限
AliyunOSSFullAccess
和访问IMM的权限AliyunIMMFullAccess
。关于为RAM用户授权的具体操作,请参见为RAM用户授权。自定义权限:
oss:ProcessImm
和ram:GetRole
。为RAM用户授予自定义权限时,您需要先创建对应的自定义权限,然后为RAM用户授权。具体操作,请参见为RAM用户授权自定义的权限策略。
费用说明
使用IMM功能会产生一定的费用。详细费用,请参见计费概述。
步骤一:绑定IMM
登录OSS管理控制台。
在左侧导航栏,单击Bucket列表,然后单击目标Bucket名称。
在左侧导航栏,选择数据处理。
单击文档处理或媒体处理,然后在弹出绑定页面单击Bucket绑定IMM project按钮。
说明图片处理操作无需绑定IMM。
在绑定智能媒体管理项目对话框的IMM配置区域,根据需要选择以下两种绑定方式中的一种:
创建新的Project:输入Project的名称,系统会自动在存储空间所在的地域创建对应的IMM项目,并将其与当前存储空间绑定。
绑定已有Project:在下拉列表中选择需要绑定至存储空间的IMM项目。
重要仅在存储空间所在的地域创建了对应功能的IMM Project的情况下,才能看到绑定已有Project的选项。关于创建IMM Project的具体操作,请参见创建项目。
单击确认。
步骤二:使用IMM
通过OSS控制台使用IMM
单击Bucket列表,然后单击目标Bucket名称。
在左侧导航栏,选择数据处理。
单击文档处理、媒体处理等菜单,直接使用IMM的相关功能(例如创建样式、创建任务等)。
通过SDK使用IMM
以下代码使用OSS Python SDK通过x-oss-process
的处理方式触发使用IMM。
# -*- coding: utf-8 -*-
import os
import oss2
# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
endpoint = 'https://oss-cn-hangzhou.aliyuncs.com'
# 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
access_key_id = 'yourAccessKeyId'
access_key_secret = 'yourAccessKeySecret'
# 指定文件所在的Bucket名称,例如examplebucket。
bucket_name = 'examplebucket'
# Object完整路径,完整路径中不能包含Bucket名称。
key = 'exampledir/example.docx'
# 指定Bucket实例,所有文件相关的方法都需要通过Bucket实例来调用。
bucket = oss2.Bucket(oss2.Auth(access_key_id, access_key_secret), endpoint, bucket_name)
style = 'doc/preview,copy_1,export_1,print_1,pages_3'
# 生成带签名的URL,并指定过期时间为10分钟。过期时间单位为秒。
url = bucket.sign_url('GET', key, 10 * 60, params={'x-oss-process': style})
print(url)