AparaVideo VODのポリシーがビジネス要件を満たしていない場合は、きめ細かい承認のためのカスタムポリシーを作成できます。 たとえば、ApsaraVideo VODのメディアリソースにアクセスする権限を特定のユーザーにのみ付与したり、メディアレビューに対する権限のみをユーザーに付与したりできます。
カスタムポリシーを作成するメソッド
[Visual Editor Beta] タブでカスタムポリシーを作成するときは、[Effect] 、[Service] 、[Action] 、[Resource] 、[Condition] セクションで構成項目を選択する必要があります。 次に、システムは設定をチェックします。 これにより、カスタムポリシーの有効性が保証されます。 このタブでは、簡単な操作を実行してカスタムポリシーを作成できます。
[JSON] タブでカスタムポリシーを作成する場合、リソースアクセス管理 (RAM) ポリシーの構文と構造に基づいてポリシードキュメントをコンパイルする必要があります。 このタブでは、カスタムポリシーを柔軟に作成できます。 この方法は、RAMポリシーの構文と構造に精通しているユーザーに適しています。
ポリシーテンプレートのインポート: RAMは、長年のビジネス慣行に基づいて作成され、一般的なシナリオに適したポリシーテンプレートを提供します。 たとえば、RAMは、システム管理者、財務担当者、およびネットワーク管理者に適用可能なポリシーテンプレートを提供します。 適切なポリシーテンプレートをインポートし、ビジネス要件に基づいてテンプレートを変更するだけで済みます。 これにより、便利な方法でカスタムポリシーを作成できます。
システムポリシーのインポート: システムポリシーをインポートし、ビジネス要件に基づいてポリシーを変更できます。 これにより、便利で効率的な方法でカスタムポリシーを作成できます。
カスタムポリシーの作成方法の例
次の例は、スクリプトを使用してカスタムポリシーを作成する方法を示しています。
前提条件
スクリプトを使用してポリシーを指定する前に、ポリシーの基本要素と構文を理解しておく必要があります。 詳細については、「ポリシー要素」および「ポリシー構造と構文」をご参照ください。
手順
管理者権限を持つRAMユーザーとしてRAMコンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。
ポリシーページで、ポリシーの作成をクリックします。
ポリシーの作成ページで、JSONタブをクリックします。
コードエディターに次のポリシーコンテンツを入力し、[次へ] をクリックしてポリシー情報を編集します。
RAMポリシーの構文と構造の詳細については、「ポリシー構造と構文」をご参照ください。
名前と説明フィールドを指定します。
カスタムポリシーの内容を確認して最適化します。
基本的な最適化
システムは自動的にポリシーステートメントを最適化します。 基本的な最適化中に、システムによって次の操作が実行されます。
不要な条件が削除されます。
不要な配列が削除されます。
(オプション) 高度な最適化
ポインタを [オプション: 高度な最適化] に移動し、[実行] をクリックします。 システムは、高度な最適化中に次の操作を実行します。
操作と互換性のないリソースまたは条件が分割されます。
リソースが絞り込まれます。
ポリシーステートメントの重複排除またはマージが行われます。
OKをクリックします。
カスタムポリシーの例
Action
にリストされているAPI操作の名前は、ApsaraVideo VODの関数別の操作のリストまたはOSSの関数別の操作のリストから取得できます。
OSSバケットへのACLがパブリック読み取りのオブジェクトのアップロードを禁止するポリシー
{
"Version": "1",
"Statement": [
{
"Effect": "Deny",
"Action": [
"oss:PostObject",
"oss:CopyObject",
"oss:AppendObject",
"oss:InitiateMultipartUpload",
"oss:MultipartUpload",
"oss:UploadPart",
"oss:UploadPartCopy",
"oss:PutObjectAcl",
"oss:PutObject"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"oss:x-oss-object-acl": [
"public-read-write",
"public-read"
]
}
}
}
]
}
このポリシーは、IPアドレス192.168.XX.XXの呼び出し再生操作
{
"Version": "1",
"Statement": [
{
"Action": [
"vod:GetPlayInfo",
"vod:GetVideoPlayAuth",
"vod:GetVideoPlayInfo",
"vod:GetVideoInfo"
],
"Resource": "*",
"Effect": "Allow",
"Condition":
{
"IpAddress":
{
"acs:SourceIp": "192.168.XX.XX"
}
}
}
]
}
メディアレビューのポリシー
権限の整合性を確保するには、APIグループに新しいAPI操作を追加する場合、次の例の [アクション]
リストを更新する必要があります。
{
"Version": "1",
"Statement": [
{
"Action": [
"vod:SetAuditSecurityIp",
"vod:ListAuditSecurityIp",
"vod:CreateAudit",
"vod:GetAuditHistory",
"vod:SubmitAIMediaAuditJob",
"vod:GetAIMediaAuditJob",
"vod:GetMediaAuditResult",
"vod:GetMediaAuditResultDetail",
"vod:GetMediaAuditResultTimeline"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
オンライン編集のポリシー
権限の整合性を確保するには、APIグループに新しいAPI操作を追加する場合、次の例の [アクション]
リストを更新する必要があります。
{
"Version": "1",
"Statement": [
{
"Action": [
"vod:ProduceEditingProjectVideo",
"vod:AddEditingProject",
"vod:UpdateEditingProject",
"vod:DeleteEditingProject",
"vod:GetEditingProject",
"vod:SearchEditingProject",
"vod:SetEditingProjectMaterials",
"vod:GetEditingProjectMaterials"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
関連ドキュメント
ポリシーの詳細については、「ポリシーの概要」をご参照ください。
カスタムポリシーを作成した後、RAMユーザーまたはRAMユーザーグループに権限を付与できます。 詳細については、「RAMユーザーへの権限の付与」および「RAMユーザーグループへの権限の付与」をご参照ください。