Ejemplos de CloudFront con las Herramientas para PowerShell V4 - Herramientas de AWS para PowerShell (versión 4)

Se ha publicado la versión 5 (V5) de Herramientas de AWS para PowerShell.

Para empezar a utilizar la nueva versión de Tools para PowerShell, consulte la Guía del usuario de Herramientas de AWS para PowerShell (V5), especialmente el tema sobre la Migración a la V5.

Ejemplos de CloudFront con las Herramientas para PowerShell V4

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante Herramientas de AWS para PowerShell V4 con CloudFront.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.

En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.

Acciones

En el siguiente ejemplo de código, se muestra cómo utilizar Get-CFCloudFrontOriginAccessIdentity.

Herramientas para PowerShell V4

Ejemplo 1: Este ejemplo devuelve una identidad de acceso de origen específica de Amazon CloudFront, especificada mediante el parámetro -Id. Aunque el parámetro -Id no es obligatorio, si no lo especifica, no se devolverá ningún resultado.

Get-CFCloudFrontOriginAccessIdentity -Id E3XXXXXXXXXXRT

Salida:

CloudFrontOriginAccessIdentityConfig Id S3CanonicalUserId ------------------------------------ -- ----------------- Amazon.CloudFront.Model.CloudFrontOr... E3XXXXXXXXXXRT 4b6e...

En el siguiente ejemplo de código, se muestra cómo utilizar Get-CFCloudFrontOriginAccessIdentityConfig.

Herramientas para PowerShell V4

Ejemplo 1: Este ejemplo devuelve información de configuración sobre una única identidad de acceso de origen de Amazon CloudFront, especificada mediante el parámetro -Id. Se producen errores si no se especifica ningún parámetro -Id..

Get-CFCloudFrontOriginAccessIdentityConfig -Id E3XXXXXXXXXXRT

Salida:

CallerReference Comment --------------- ------- mycallerreference: 2/1/2011 1:16:32 PM Caller reference: 2/1/2011 1:16:32 PM

En el siguiente ejemplo de código, se muestra cómo utilizar Get-CFCloudFrontOriginAccessIdentityList.

Herramientas para PowerShell V4

Ejemplo 1: Este ejemplo devuelve una lista de identidades de acceso de origen de Amazon CloudFront. Como el parámetro -MaxItem especifica un valor de 2, los resultados incluyen dos identidades.

Get-CFCloudFrontOriginAccessIdentityList -MaxItem 2

Salida:

IsTruncated : True Items : {E326XXXXXXXXXT, E1YWXXXXXXX9B} Marker : MaxItems : 2 NextMarker : E1YXXXXXXXXX9B Quantity : 2

En el siguiente ejemplo de código, se muestra cómo utilizar Get-CFDistribution.

Herramientas para PowerShell V4

Ejemplo 1: Recupera la información de una distribución específica.

Get-CFDistribution -Id EXAMPLE0000ID
  • Para obtener información sobre la API, consulte GetDistribution en la Referencia de cmdlet de Herramientas de AWS para PowerShell (V4).

En el siguiente ejemplo de código, se muestra cómo utilizar Get-CFDistributionConfig.

Herramientas para PowerShell V4

Ejemplo 1: Recupera la configuración de una distribución específica.

Get-CFDistributionConfig -Id EXAMPLE0000ID
  • Para obtener información sobre la API, consulte GetDistributionConfig en la Referencia de Cmdlets de Herramientas de AWS para PowerShell (V4).

En el siguiente ejemplo de código, se muestra cómo utilizar Get-CFDistributionList.

Herramientas para PowerShell V4

Ejemplo 1: Devuelve distribuciones.

Get-CFDistributionList
  • Para obtener información sobre la API, consulte ListDistributions en la Referencia de Cmdlet de Herramientas de AWS para PowerShell (V4).

En el siguiente ejemplo de código, se muestra cómo utilizar New-CFDistribution.

Herramientas para PowerShell V4

Ejemplo 1: Crea una distribución básica de CloudFront, configurada con registro y almacenamiento en caché.

$origin = New-Object Amazon.CloudFront.Model.Origin $origin.DomainName = "amzn-s3-demo-bucket.s3.amazonaws.com" $origin.Id = "UniqueOrigin1" $origin.S3OriginConfig = New-Object Amazon.CloudFront.Model.S3OriginConfig $origin.S3OriginConfig.OriginAccessIdentity = "" New-CFDistribution ` -DistributionConfig_Enabled $true ` -DistributionConfig_Comment "Test distribution" ` -Origins_Item $origin ` -Origins_Quantity 1 ` -Logging_Enabled $true ` -Logging_IncludeCookie $true ` -Logging_Bucket amzn-s3-demo-logging-bucket.s3.amazonaws.com ` -Logging_Prefix "help/" ` -DistributionConfig_CallerReference Client1 ` -DistributionConfig_DefaultRootObject index.html ` -DefaultCacheBehavior_TargetOriginId $origin.Id ` -ForwardedValues_QueryString $true ` -Cookies_Forward all ` -WhitelistedNames_Quantity 0 ` -TrustedSigners_Enabled $false ` -TrustedSigners_Quantity 0 ` -DefaultCacheBehavior_ViewerProtocolPolicy allow-all ` -DefaultCacheBehavior_MinTTL 1000 ` -DistributionConfig_PriceClass "PriceClass_All" ` -CacheBehaviors_Quantity 0 ` -Aliases_Quantity 0
  • Para obtener información sobre la API, consulte CreateDistribution en la Referencia de Cmdlet de Herramientas de AWS para PowerShell (V4).

En el siguiente ejemplo de código, se muestra cómo utilizar New-CFInvalidation.

Herramientas para PowerShell V4

Ejemplo 1: En este ejemplo se crea una nueva invalidación en una distribución con un ID de EXAMPLENSTXAXE. CallerReference es un identificador único elegido por el usuario; en este caso, se utiliza una marca temporal que representa el 15 de mayo de 2019 a las 9:00 h. La variable $Paths almacena tres rutas a archivos multimedia y de imagen que el usuario no desea que formen parte de la memoria caché de la distribución. El valor del parámetro -Paths_Quantity es el número total de rutas especificadas en el parámetro -Paths_Item.

$Paths = "/images/*.gif", "/images/image1.jpg", "/videos/*.mp4" New-CFInvalidation -DistributionId "EXAMPLENSTXAXE" -InvalidationBatch_CallerReference 20190515090000 -Paths_Item $Paths -Paths_Quantity 3

Salida:

Invalidation Location ------------ -------- Amazon.CloudFront.Model.Invalidation https://cloudfront.amazonaws.com/2018-11-05/distribution/EXAMPLENSTXAXE/invalidation/EXAMPLE8NOK9H
  • Para obtener información sobre la API, consulte CreateDistribution en la Referencia de Cmdlet de Herramientas de AWS para PowerShell (V4).

En el siguiente ejemplo de código, se muestra cómo utilizar New-CFSignedCookie.

Herramientas para PowerShell V4

Ejemplo 1: Crea una cookie firmada en el recurso especificado mediante una política predefinida. La cookie tendrá una validez de un año.

$params = @{ "ResourceUri"="http://xyz.cloudfront.net/image1.jpeg" "KeyPairId"="AKIAIOSFODNN7EXAMPLE" "PrivateKeyFile"="C:\pk-AKIAIOSFODNN7EXAMPLE.pem" "ExpiresOn"=(Get-Date).AddYears(1) } New-CFSignedCookie @params

Salida:

Expires ------- [CloudFront-Expires, 1472227284]

Ejemplo 2: Crea una cookie firmada en los recursos especificados mediante una política personalizada. La cookie será válida a partir de 24 horas y caducará una semana después.

$start = (Get-Date).AddHours(24) $params = @{ "ResourceUri"="http://xyz.cloudfront.net/content/*.jpeg" "KeyPairId"="AKIAIOSFODNN7EXAMPLE" "PrivateKeyFile"="C:\pk-AKIAIOSFODNN7EXAMPLE.pem" "ExpiresOn"=$start.AddDays(7) "ActiveFrom"=$start } New-CFSignedCookie @params

Salida:

Policy ------ [CloudFront-Policy, eyJTd...wIjo...

Ejemplo 3: Crea una cookie firmada en los recursos especificados mediante una política personalizada. La cookie será válida a partir de 24 horas y caducará una semana después. El acceso a los recursos está restringido al intervalo de IP especificado.

$start = (Get-Date).AddHours(24) $params = @{ "ResourceUri"="http://xyz.cloudfront.net/content/*.jpeg" "KeyPairId"="AKIAIOSFODNN7EXAMPLE" "PrivateKeyFile"="C:\pk-AKIAIOSFODNN7EXAMPLE.pem" "ExpiresOn"=$start.AddDays(7) "ActiveFrom"=$start "IpRange"="192.0.2.0/24" } New-CFSignedCookie @params

Salida:

Policy ------ [CloudFront-Policy, eyJTd...wIjo...
  • Para obtener información sobre la API, consulte New-CFSignedCookie en la Referencia de cmdlets de Herramientas de AWS para PowerShell (V4).

En el siguiente ejemplo de código, se muestra cómo utilizar New-CFSignedUrl.

Herramientas para PowerShell V4

Ejemplo 1: Crea una URL firmada en el recurso especificado mediante una política predefinida. La URL tendrá una validez de una hora. Se envía a la canalización un objeto System.Uri que contiene la URL firmada.

$params = @{ "ResourceUri"="https://cdn.example.com/index.html" "KeyPairId"="AKIAIOSFODNN7EXAMPLE" "PrivateKeyFile"="C:\pk-AKIAIOSFODNN7EXAMPLE.pem" "ExpiresOn"=(Get-Date).AddHours(1) } New-CFSignedUrl @params

Ejemplo 2: Crea una URL firmada en el recurso especificado mediante una política personalizada. La URL será válida a partir de 24 horas y caducará una semana después.

$start = (Get-Date).AddHours(24) $params = @{ "ResourceUri"="https://cdn.example.com/index.html" "KeyPairId"="AKIAIOSFODNN7EXAMPLE" "PrivateKeyFile"="C:\pk-AKIAIOSFODNN7EXAMPLE.pem" "ExpiresOn"=(Get-Date).AddDays(7) "ActiveFrom"=$start } New-CFSignedUrl @params

Ejemplo 3: Crea una URL firmada en el recurso especificado mediante una política personalizada. La URL será válida a partir de 24 horas y caducará una semana después. El acceso al recurso está restringido al intervalo de IP especificado.

$start = (Get-Date).AddHours(24) $params = @{ "ResourceUri"="https://cdn.example.com/index.html" "KeyPairId"="AKIAIOSFODNN7EXAMPLE" "PrivateKeyFile"="C:\pk-AKIAIOSFODNN7EXAMPLE.pem" "ExpiresOn"=(Get-Date).AddDays(7) "ActiveFrom"=$start "IpRange"="192.0.2.0/24" } New-CFSignedUrl @params
  • Para obtener información sobre la API, consulte New-CFSignedUrl en la Referencia de cmdlets de Herramientas de AWS para PowerShell (V4).