Hay más ejemplos de AWS SDK disponibles en el repositorio de GitHub de ejemplos de AWS SDK de documentos
Utilizar CreateRule con una CLI
Los siguientes ejemplos de código muestran cómo utilizar CreateRule.
- CLI
-
- AWS CLI
-
Ejemplo 1: creación de una regla mediante una condición de ruta y una acción de reenvío
En el siguiente ejemplo de
create-rule, se crea una regla que reenvía las solicitudes al grupo de destino especificado si la dirección URL de la solicitud contiene el patrón especificado.aws elbv2 create-rule \ --listener-arnarn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2\ --priority5\ --conditionsfile://conditions-pattern.json--actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067Contenido de
conditions-pattern.json:[ { "Field": "path-pattern", "PathPatternConfig": { "Values": ["/images/*"] } } ]Ejemplo 2: creación de una regla mediante una condición de host y una respuesta fija
En el siguiente ejemplo de
create-rule, se crea una regla que proporciona una respuesta fija si el nombre de host del encabezado del host coincide con el nombre de host especificado.aws elbv2 create-rule \ --listener-arnarn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2\ --priority10\ --conditionsfile://conditions-host.json\ --actionsfile://actions-fixed-response.jsonContenido de
conditions-host.json[ { "Field": "host-header", "HostHeaderConfig": { "Values": ["*.example.com"] } } ]Contenido de
actions-fixed-response.json[ { "Type": "fixed-response", "FixedResponseConfig": { "MessageBody": "Hello world", "StatusCode": "200", "ContentType": "text/plain" } } ]Ejemplo 3: creación de una regla mediante una condición de dirección IP de origen, una acción de autenticación y una acción de reenvío
En el siguiente ejemplo de
create-rule, se crea una regla que autentica al usuario si la dirección IP de origen coincide con la dirección IP especificada y reenvía la solicitud al grupo de destino especificado si la autenticación se realiza correctamente.aws elbv2 create-rule \ --listener-arnarn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2\ --priority20\ --conditionsfile://conditions-source-ip.json\ --actionsfile://actions-authenticate.jsonContenido de
conditions-source-ip.json[ { "Field": "source-ip", "SourceIpConfig": { "Values": ["192.0.2.0/24", "198.51.100.10/32"] } } ]Contenido de
actions-authenticate.json[ { "Type": "authenticate-oidc", "AuthenticateOidcConfig": { "Issuer": "https://idp-issuer.com", "AuthorizationEndpoint": "https://authorization-endpoint.com", "TokenEndpoint": "https://token-endpoint.com", "UserInfoEndpoint": "https://user-info-endpoint.com", "ClientId": "abcdefghijklmnopqrstuvwxyz123456789", "ClientSecret": "123456789012345678901234567890", "SessionCookieName": "my-cookie", "SessionTimeout": 3600, "Scope": "email", "AuthenticationRequestExtraParams": { "display": "page", "prompt": "login" }, "OnUnauthenticatedRequest": "deny" }, "Order": 1 }, { "Type": "forward", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:880185128111:targetgroup/cli-test/642a97ecb0e0f26b", "Order": 2 } ]-
Para obtener información sobre la API, consulte CreateRule
en la Referencia de comandos de la AWS CLI.
-
- PowerShell
-
- Herramientas para PowerShell V4
-
Ejemplo 1: Este ejemplo crea una nueva regla de oyente con una acción de respuesta fija basada en el valor del encabezado del cliente para el oyente especificado.
$newRuleAction = [Amazon.ElasticLoadBalancingV2.Model.Action]@{ "FixedResponseConfig" = @{ "ContentType" = "text/plain" "MessageBody" = "Hello World" "StatusCode" = "200" } "Type" = [Amazon.ElasticLoadBalancingV2.ActionTypeEnum]::FixedResponse } $newRuleCondition = [Amazon.ElasticLoadBalancingV2.Model.RuleCondition]@{ "httpHeaderConfig" = @{ "HttpHeaderName" = "customHeader" "Values" = "header2","header1" } "Field" = "http-header" } New-ELB2Rule -ListenerArn 'arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/testALB/3e2f03b558e19676/1c84f02aec143e80' -Action $newRuleAction -Condition $newRuleCondition -Priority 10Salida:
Actions : {Amazon.ElasticLoadBalancingV2.Model.Action} Conditions : {Amazon.ElasticLoadBalancingV2.Model.RuleCondition} IsDefault : False Priority : 10 RuleArn : arn:aws:elasticloadbalancing:us-east-1:123456789012:listener-rule/app/testALB/3e2f03b558e19676/1c84f02aec143e80/f4f51dfaa033a8cc-
Para obtener información sobre la API, consulte CreateRule en la Referencia de cmdlets de Herramientas de AWS para PowerShell (V4).
-
- Herramientas para PowerShell V5
-
Ejemplo 1: Este ejemplo crea una nueva regla de oyente con una acción de respuesta fija basada en el valor del encabezado del cliente para el oyente especificado.
$newRuleAction = [Amazon.ElasticLoadBalancingV2.Model.Action]@{ "FixedResponseConfig" = @{ "ContentType" = "text/plain" "MessageBody" = "Hello World" "StatusCode" = "200" } "Type" = [Amazon.ElasticLoadBalancingV2.ActionTypeEnum]::FixedResponse } $newRuleCondition = [Amazon.ElasticLoadBalancingV2.Model.RuleCondition]@{ "httpHeaderConfig" = @{ "HttpHeaderName" = "customHeader" "Values" = "header2","header1" } "Field" = "http-header" } New-ELB2Rule -ListenerArn 'arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/testALB/3e2f03b558e19676/1c84f02aec143e80' -Action $newRuleAction -Condition $newRuleCondition -Priority 10Salida:
Actions : {Amazon.ElasticLoadBalancingV2.Model.Action} Conditions : {Amazon.ElasticLoadBalancingV2.Model.RuleCondition} IsDefault : False Priority : 10 RuleArn : arn:aws:elasticloadbalancing:us-east-1:123456789012:listener-rule/app/testALB/3e2f03b558e19676/1c84f02aec143e80/f4f51dfaa033a8cc-
Para obtener información sobre la API, consulte CreateRule en la Referencia de cmdlets de Herramientas de AWS para PowerShell (V5).
-