Come consentire o non consentire i tipi di posizione di input - MediaConvert

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Come consentire o non consentire i tipi di posizione di input

AWS Elemental MediaConvert supporta i tipi di posizione di input Amazon S3, HTTPS e HTTP per file e file di input. Puoi consentire o impedire l'accesso a uno o più di questi tipi di posizioni di input utilizzando una MediaConvert policy.

Per impostazione predefinita, ogni regione del tuo AWS account non ha una politica e MediaConvert consente tutti i tipi di località di input supportati. È necessario creare una politica di input solo se si desidera impedire l'accesso a uno o più di questi tipi di posizioni di input.

Per evitare che i lavori vengano eseguiti con un tipo di posizione di input non consentito, create una policy MediaConvert di input.

Inoltre, per evitare che i lavori vengano inviati all' MediaConvert API se non è in atto una policy di input, crea una policy IAM utilizzando le chiavi di condizione. Puoi applicare queste policy IAM ai ruoli IAM all'interno della tua organizzazione.

Le sezioni seguenti descrivono come creare una policy di input e come utilizzare le chiavi di condizione IAM per consentire o non consentire i tipi di posizione di input.

Come consentire o non consentire i tipi di posizioni di input utilizzando una policy di input

Per creare o modificare una policy, invia un put-policy comando utilizzando l'API, l'SDK o l'interfaccia a riga di comando (CLI) e includi la policy in JSON. Consulta l'MediaConvert API Reference per saperne di più sui comandi di policy supportati e sui codici di risposta previsti.

Di seguito è riportato un esempio di come inviare una policy utilizzando la CLI. Questo esempio consente lavori con input Amazon S3 e HTTPS e non consente lavori con input HTTP:

aws mediaconvert put-policy --policy '{"S3Inputs":"ALLOWED", "HttpsInputs":"ALLOWED", "HttpInputs":"DISALLOWED"}'

Se non specifichi una posizione di input nella policy JSON, la MediaConvert tratterà come ALLOWED. Ecco un altro esempio che consente lavori con input Amazon S3 e HTTPS e non consente lavori con input HTTP:

aws mediaconvert put-policy --policy '{"HttpInputs":"DISALLOWED"}'

Nota che il comando put-policy sovrascrive qualsiasi politica esistente nella regione.

Recupera la politica corrente

Per recuperare la politica corrente in JSON, invia un comando: get-policy

aws mediaconvert get-policy

Elimina la politica corrente

Per eliminare la politica corrente e consentire tutti gli input (tornando al comportamento predefinito), invia un delete-policy comando:

aws mediaconvert delete-policy

Cosa succede quando si tenta di inviare un lavoro con una posizione di input non consentita?

Se tenti di inviare un lavoro che specifica una posizione di input non consentita dalla politica, MediaConvert restituirà invece un errore HTTP 400 () BadRequestException. Il messaggio di errore sarà: Hai specificato una posizione di input che la tua politica non consente. Specificate una posizione di input consentita e inviate nuovamente il lavoro. Poiché MediaConvert impedisce l'invio di questi lavori, non verranno visualizzati nella cronologia delle offerte di lavoro.

Se invii un lavoro che specifica una posizione di input consentita, ma il lavoro richiede l'accesso a un'altra posizione di input non consentita, il lavoro avrà esito negativo. Ad esempio, potresti riscontrare questo problema se specifichi un manifesto Apple HLS su una posizione Amazon S3 consentita che fa riferimento ad altri file di segmenti di input in una posizione HTTP non consentita. Il codice di errore relativo all'errore di lavoro sarà 3457 e il messaggio sarà: Hai specificato una posizione di input non consentita dalla policy. Specificate una località di input consentita e inviate nuovamente il lavoro.

Come utilizzare le chiavi di condizione IAM con le politiche di input

Quando includi una chiave di condizione nella tua policy IAM che utilizzi per inviare richieste di creazione di lavoro, IAM verifica se il tuo account ha una policy di input che corrisponde a quella condizione. La condizione specificata deve corrispondere alla politica di input del tuo account affinché la richiesta API sia autorizzata. È possibile utilizzare una delle seguenti chiavi di condizione booleane:

  • HttpInputsAllowed

  • HttpsInputsAllowed

  • S3InputsAllowed

Quando utilizzi le chiavi condizionali, considera i seguenti scenari:

Se la condizione e la politica di input corrispondono, ad esempio se imposti HTTPInputsAllowed to true e la policy di input del tuo account consente gli input HTTP, la richiesta di creazione di lavoro verrà inviata all' MediaConvert API.

Se la condizione e la politica di input non corrispondono, ad esempio se imposti HTTPInputsAllowed to false e la politica di input del tuo account consente gli input HTTP, la richiesta di creazione di lavoro non verrà inviata all' MediaConvert API. Riceverai invece il seguente messaggio di errore: «message»: «User: arn:aws:iam: :111122223333:" user/User is not authorized to perform: mediaconvert:CreateJob on resource: arn:aws:mediaconvert:us-west-2:111122223333:queues/Default

Se la condizione e la politica di input corrispondono, ad esempio se imposti HTTPInputsConsentito su false e la politica di input del tuo account non consente gli input HTTP, la richiesta di creazione di lavoro verrà inviata all'API. MediaConvert Tuttavia, l'API restituirà quindi un errore HTTP 400 (BadRequestException). Il messaggio di errore sarà: Hai specificato una posizione di input che la tua politica non consente. Specificate una posizione di input consentita e inviate nuovamente il lavoro.

Per ulteriori informazioni sull'utilizzo delle chiavi di condizione IAM, consulta IAM JSON Policy elements: Condition nella IAM User Guide.

Il seguente codice JSON è un esempio di policy IAM che utilizza chiavi di MediaConvert condizione per verificare se il tuo account ha una policy di input che non consente gli input HTTP:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "BlockHTTPInputsExample", "Effect": "Allow", "Action": "mediaconvert:CreateJob", "Resource": "*", "Condition": { "ForAllValues:BoolIfExists": { "mediaconvert:HttpInputsAllowed": [ "false" ], "mediaconvert:HttpsInputsAllowed": [ "true" ], "mediaconvert:S3InputsAllowed": [ "true" ] } } } ] }

Per ulteriori informazioni sul supporto delle chiavi condizionali all'interno MediaConvert, consulta. Come AWS Elemental MediaConvert funziona con IAM