Akamai

v3.1.1 published on Tuesday, Nov 1, 2022 by Pulumi

getAppSecAdvancedSettingsEvasivePathMatch

Scopes: Security configuration; security policy

Use the akamai.AppSecAdvancedSettingsEvasivePathMatch data source to retrieve information about the evasive path match for a configuration. This operation applies at the configuration level, and therefore applies to all policies within a configuration. You may retrieve these settings for a particular policy by specifying the policy using the security_policy_id parameter. For more information, see Get evasive path match setting.

Related API Endpoint: /appsec/v1/configs/{configId}/versions/{versionNumber}/security-policies/{policyId}/advanced-settings/evasive-path-match

Example Usage

Basic usage

using Pulumi;
using Akamai = Pulumi.Akamai;

class MyStack : Stack
{
    public MyStack()
    {
        var configuration = Output.Create(Akamai.GetAppSecConfiguration.InvokeAsync(new Akamai.GetAppSecConfigurationArgs
        {
            Name = @var.Security_configuration,
        }));
        var evasivePathMatch = configuration.Apply(configuration => Output.Create(Akamai.GetAppSecAdvancedSettingsEvasivePathMatch.InvokeAsync(new Akamai.GetAppSecAdvancedSettingsEvasivePathMatchArgs
        {
            ConfigId = configuration.ConfigId,
        })));
        this.AdvancedSettingsEvasivePathMatchOutput = evasivePathMatch.Apply(evasivePathMatch => evasivePathMatch.OutputText);
        this.AdvancedSettingsEvasivePathMatchJson = evasivePathMatch.Apply(evasivePathMatch => evasivePathMatch.Json);
        var policyOverride = configuration.Apply(configuration => Output.Create(Akamai.GetAppSecAdvancedSettingsEvasivePathMatch.InvokeAsync(new Akamai.GetAppSecAdvancedSettingsEvasivePathMatchArgs
        {
            ConfigId = configuration.ConfigId,
            SecurityPolicyId = @var.Security_policy_id,
        })));
        this.AdvancedSettingsPolicyEvasivePathMatchOutput = policyOverride.Apply(policyOverride => policyOverride.OutputText);
        this.AdvancedSettingsPolicyEvasivePathMatchJson = policyOverride.Apply(policyOverride => policyOverride.Json);
    }

    [Output("advancedSettingsEvasivePathMatchOutput")]
    public Output<string> AdvancedSettingsEvasivePathMatchOutput { get; set; }
    [Output("advancedSettingsEvasivePathMatchJson")]
    public Output<string> AdvancedSettingsEvasivePathMatchJson { get; set; }
    [Output("advancedSettingsPolicyEvasivePathMatchOutput")]
    public Output<string> AdvancedSettingsPolicyEvasivePathMatchOutput { get; set; }
    [Output("advancedSettingsPolicyEvasivePathMatchJson")]
    public Output<string> AdvancedSettingsPolicyEvasivePathMatchJson { get; set; }
}
package main

import (
	"github.com/pulumi/pulumi-akamai/sdk/v3/go/akamai"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		configuration, err := akamai.LookupAppSecConfiguration(ctx, &GetAppSecConfigurationArgs{
			Name: pulumi.StringRef(_var.Security_configuration),
		}, nil)
		if err != nil {
			return err
		}
		evasivePathMatch, err := akamai.LookupAppSecAdvancedSettingsEvasivePathMatch(ctx, &GetAppSecAdvancedSettingsEvasivePathMatchArgs{
			ConfigId: configuration.ConfigId,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("advancedSettingsEvasivePathMatchOutput", evasivePathMatch.OutputText)
		ctx.Export("advancedSettingsEvasivePathMatchJson", evasivePathMatch.Json)
		policyOverride, err := akamai.LookupAppSecAdvancedSettingsEvasivePathMatch(ctx, &GetAppSecAdvancedSettingsEvasivePathMatchArgs{
			ConfigId:         configuration.ConfigId,
			SecurityPolicyId: pulumi.StringRef(_var.Security_policy_id),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("advancedSettingsPolicyEvasivePathMatchOutput", policyOverride.OutputText)
		ctx.Export("advancedSettingsPolicyEvasivePathMatchJson", policyOverride.Json)
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.akamai.AkamaiFunctions;
import com.pulumi.akamai.inputs.GetAppSecConfigurationArgs;
import com.pulumi.akamai.inputs.GetAppSecAdvancedSettingsEvasivePathMatchArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var configuration = AkamaiFunctions.getAppSecConfiguration(GetAppSecConfigurationArgs.builder()
            .name(var_.security_configuration())
            .build());

        final var evasivePathMatch = AkamaiFunctions.getAppSecAdvancedSettingsEvasivePathMatch(GetAppSecAdvancedSettingsEvasivePathMatchArgs.builder()
            .configId(configuration.applyValue(getAppSecConfigurationResult -> getAppSecConfigurationResult.configId()))
            .build());

        ctx.export("advancedSettingsEvasivePathMatchOutput", evasivePathMatch.applyValue(getAppSecAdvancedSettingsEvasivePathMatchResult -> getAppSecAdvancedSettingsEvasivePathMatchResult.outputText()));
        ctx.export("advancedSettingsEvasivePathMatchJson", evasivePathMatch.applyValue(getAppSecAdvancedSettingsEvasivePathMatchResult -> getAppSecAdvancedSettingsEvasivePathMatchResult.json()));
        final var policyOverride = AkamaiFunctions.getAppSecAdvancedSettingsEvasivePathMatch(GetAppSecAdvancedSettingsEvasivePathMatchArgs.builder()
            .configId(configuration.applyValue(getAppSecConfigurationResult -> getAppSecConfigurationResult.configId()))
            .securityPolicyId(var_.security_policy_id())
            .build());

        ctx.export("advancedSettingsPolicyEvasivePathMatchOutput", policyOverride.applyValue(getAppSecAdvancedSettingsEvasivePathMatchResult -> getAppSecAdvancedSettingsEvasivePathMatchResult.outputText()));
        ctx.export("advancedSettingsPolicyEvasivePathMatchJson", policyOverride.applyValue(getAppSecAdvancedSettingsEvasivePathMatchResult -> getAppSecAdvancedSettingsEvasivePathMatchResult.json()));
    }
}
import pulumi
import pulumi_akamai as akamai

configuration = akamai.get_app_sec_configuration(name=var["security_configuration"])
evasive_path_match = akamai.get_app_sec_advanced_settings_evasive_path_match(config_id=configuration.config_id)
pulumi.export("advancedSettingsEvasivePathMatchOutput", evasive_path_match.output_text)
pulumi.export("advancedSettingsEvasivePathMatchJson", evasive_path_match.json)
policy_override = akamai.get_app_sec_advanced_settings_evasive_path_match(config_id=configuration.config_id,
    security_policy_id=var["security_policy_id"])
pulumi.export("advancedSettingsPolicyEvasivePathMatchOutput", policy_override.output_text)
pulumi.export("advancedSettingsPolicyEvasivePathMatchJson", policy_override.json)
import * as pulumi from "@pulumi/pulumi";
import * as akamai from "@pulumi/akamai";

const configuration = akamai.getAppSecConfiguration({
    name: _var.security_configuration,
});
const evasivePathMatch = configuration.then(configuration => akamai.getAppSecAdvancedSettingsEvasivePathMatch({
    configId: configuration.configId,
}));
export const advancedSettingsEvasivePathMatchOutput = evasivePathMatch.then(evasivePathMatch => evasivePathMatch.outputText);
export const advancedSettingsEvasivePathMatchJson = evasivePathMatch.then(evasivePathMatch => evasivePathMatch.json);
const policyOverride = configuration.then(configuration => akamai.getAppSecAdvancedSettingsEvasivePathMatch({
    configId: configuration.configId,
    securityPolicyId: _var.security_policy_id,
}));
export const advancedSettingsPolicyEvasivePathMatchOutput = policyOverride.then(policyOverride => policyOverride.outputText);
export const advancedSettingsPolicyEvasivePathMatchJson = policyOverride.then(policyOverride => policyOverride.json);
variables:
  configuration:
    Fn::Invoke:
      Function: akamai:getAppSecConfiguration
      Arguments:
        name: ${var.security_configuration}
  evasivePathMatch:
    Fn::Invoke:
      Function: akamai:getAppSecAdvancedSettingsEvasivePathMatch
      Arguments:
        configId: ${configuration.configId}
  policyOverride:
    Fn::Invoke:
      Function: akamai:getAppSecAdvancedSettingsEvasivePathMatch
      Arguments:
        configId: ${configuration.configId}
        securityPolicyId: ${var.security_policy_id}
outputs:
  advancedSettingsEvasivePathMatchOutput: ${evasivePathMatch.outputText}
  advancedSettingsEvasivePathMatchJson: ${evasivePathMatch.json}
  advancedSettingsPolicyEvasivePathMatchOutput: ${policyOverride.outputText}
  advancedSettingsPolicyEvasivePathMatchJson: ${policyOverride.json}

Using getAppSecAdvancedSettingsEvasivePathMatch

Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

function getAppSecAdvancedSettingsEvasivePathMatch(args: GetAppSecAdvancedSettingsEvasivePathMatchArgs, opts?: InvokeOptions): Promise<GetAppSecAdvancedSettingsEvasivePathMatchResult>
function getAppSecAdvancedSettingsEvasivePathMatchOutput(args: GetAppSecAdvancedSettingsEvasivePathMatchOutputArgs, opts?: InvokeOptions): Output<GetAppSecAdvancedSettingsEvasivePathMatchResult>
def get_app_sec_advanced_settings_evasive_path_match(config_id: Optional[int] = None,
                                                     security_policy_id: Optional[str] = None,
                                                     opts: Optional[InvokeOptions] = None) -> GetAppSecAdvancedSettingsEvasivePathMatchResult
def get_app_sec_advanced_settings_evasive_path_match_output(config_id: Optional[pulumi.Input[int]] = None,
                                                     security_policy_id: Optional[pulumi.Input[str]] = None,
                                                     opts: Optional[InvokeOptions] = None) -> Output[GetAppSecAdvancedSettingsEvasivePathMatchResult]
func LookupAppSecAdvancedSettingsEvasivePathMatch(ctx *Context, args *LookupAppSecAdvancedSettingsEvasivePathMatchArgs, opts ...InvokeOption) (*LookupAppSecAdvancedSettingsEvasivePathMatchResult, error)
func LookupAppSecAdvancedSettingsEvasivePathMatchOutput(ctx *Context, args *LookupAppSecAdvancedSettingsEvasivePathMatchOutputArgs, opts ...InvokeOption) LookupAppSecAdvancedSettingsEvasivePathMatchResultOutput

> Note: This function is named LookupAppSecAdvancedSettingsEvasivePathMatch in the Go SDK.

public static class GetAppSecAdvancedSettingsEvasivePathMatch 
{
    public static Task<GetAppSecAdvancedSettingsEvasivePathMatchResult> InvokeAsync(GetAppSecAdvancedSettingsEvasivePathMatchArgs args, InvokeOptions? opts = null)
    public static Output<GetAppSecAdvancedSettingsEvasivePathMatchResult> Invoke(GetAppSecAdvancedSettingsEvasivePathMatchInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetAppSecAdvancedSettingsEvasivePathMatchResult> getAppSecAdvancedSettingsEvasivePathMatch(GetAppSecAdvancedSettingsEvasivePathMatchArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
  function: akamai:index/getAppSecAdvancedSettingsEvasivePathMatch:getAppSecAdvancedSettingsEvasivePathMatch
  arguments:
    # arguments dictionary

The following arguments are supported:

ConfigId int

The configuration ID.

SecurityPolicyId string

The ID of the security policy to use.

ConfigId int

The configuration ID.

SecurityPolicyId string

The ID of the security policy to use.

configId Integer

The configuration ID.

securityPolicyId String

The ID of the security policy to use.

configId number

The configuration ID.

securityPolicyId string

The ID of the security policy to use.

config_id int

The configuration ID.

security_policy_id str

The ID of the security policy to use.

configId Number

The configuration ID.

securityPolicyId String

The ID of the security policy to use.

getAppSecAdvancedSettingsEvasivePathMatch Result

The following output properties are available:

ConfigId int
Id string

The provider-assigned unique ID for this managed resource.

Json string

A JSON-formatted list of information about the evasive path match settings.

OutputText string

A tabular display showing the evasive path match settings.

SecurityPolicyId string
ConfigId int
Id string

The provider-assigned unique ID for this managed resource.

Json string

A JSON-formatted list of information about the evasive path match settings.

OutputText string

A tabular display showing the evasive path match settings.

SecurityPolicyId string
configId Integer
id String

The provider-assigned unique ID for this managed resource.

json String

A JSON-formatted list of information about the evasive path match settings.

outputText String

A tabular display showing the evasive path match settings.

securityPolicyId String
configId number
id string

The provider-assigned unique ID for this managed resource.

json string

A JSON-formatted list of information about the evasive path match settings.

outputText string

A tabular display showing the evasive path match settings.

securityPolicyId string
config_id int
id str

The provider-assigned unique ID for this managed resource.

json str

A JSON-formatted list of information about the evasive path match settings.

output_text str

A tabular display showing the evasive path match settings.

security_policy_id str
configId Number
id String

The provider-assigned unique ID for this managed resource.

json String

A JSON-formatted list of information about the evasive path match settings.

outputText String

A tabular display showing the evasive path match settings.

securityPolicyId String

Package Details

Repository
https://github.com/pulumi/pulumi-akamai
License
Apache-2.0
Notes

This Pulumi package is based on the akamai Terraform Provider.