get Policy Groups
This data source provides the Ecd Policy Groups of the current Alibaba Cloud user.
NOTE: Available in v1.130.0+.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = new alicloud.eds.EcdPolicyGroup("default", {
policyGroupName: "my-policy-group",
clipboard: "read",
localDrive: "read",
usbRedirect: "off",
watermark: "off",
authorizeAccessPolicyRules: [{
description: "my-description1",
cidrIp: "1.2.3.45/24",
}],
authorizeSecurityPolicyRules: [{
type: "inflow",
policy: "accept",
description: "my-description",
portRange: "80/80",
ipProtocol: "TCP",
priority: "1",
cidrIp: "1.2.3.4/24",
}],
});
const nameRegex = alicloud.eds.getPolicyGroups({
nameRegex: "^my-policy",
});
export const ecdPolicyGroupId = nameRegex.then(nameRegex => nameRegex.groups?.[0]?.id);
Content copied to clipboard
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.eds.EcdPolicyGroup("default",
policy_group_name="my-policy-group",
clipboard="read",
local_drive="read",
usb_redirect="off",
watermark="off",
authorize_access_policy_rules=[{
"description": "my-description1",
"cidr_ip": "1.2.3.45/24",
}],
authorize_security_policy_rules=[{
"type": "inflow",
"policy": "accept",
"description": "my-description",
"port_range": "80/80",
"ip_protocol": "TCP",
"priority": "1",
"cidr_ip": "1.2.3.4/24",
}])
name_regex = alicloud.eds.get_policy_groups(name_regex="^my-policy")
pulumi.export("ecdPolicyGroupId", name_regex.groups[0].id)
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = new AliCloud.Eds.EcdPolicyGroup("default", new()
{
PolicyGroupName = "my-policy-group",
Clipboard = "read",
LocalDrive = "read",
UsbRedirect = "off",
Watermark = "off",
AuthorizeAccessPolicyRules = new[]
{
new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs
{
Description = "my-description1",
CidrIp = "1.2.3.45/24",
},
},
AuthorizeSecurityPolicyRules = new[]
{
new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs
{
Type = "inflow",
Policy = "accept",
Description = "my-description",
PortRange = "80/80",
IpProtocol = "TCP",
Priority = "1",
CidrIp = "1.2.3.4/24",
},
},
});
var nameRegex = AliCloud.Eds.GetPolicyGroups.Invoke(new()
{
NameRegex = "^my-policy",
});
return new Dictionary<string, object?>
{
["ecdPolicyGroupId"] = nameRegex.Apply(getPolicyGroupsResult => getPolicyGroupsResult.Groups[0]?.Id),
};
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := eds.NewEcdPolicyGroup(ctx, "default", &eds.EcdPolicyGroupArgs{
PolicyGroupName: pulumi.String("my-policy-group"),
Clipboard: pulumi.String("read"),
LocalDrive: pulumi.String("read"),
UsbRedirect: pulumi.String("off"),
Watermark: pulumi.String("off"),
AuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{
&eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{
Description: pulumi.String("my-description1"),
CidrIp: pulumi.String("1.2.3.45/24"),
},
},
AuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{
&eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{
Type: pulumi.String("inflow"),
Policy: pulumi.String("accept"),
Description: pulumi.String("my-description"),
PortRange: pulumi.String("80/80"),
IpProtocol: pulumi.String("TCP"),
Priority: pulumi.String("1"),
CidrIp: pulumi.String("1.2.3.4/24"),
},
},
})
if err != nil {
return err
}
nameRegex, err := eds.GetPolicyGroups(ctx, &eds.GetPolicyGroupsArgs{
NameRegex: pulumi.StringRef("^my-policy"),
}, nil)
if err != nil {
return err
}
ctx.Export("ecdPolicyGroupId", nameRegex.Groups[0].Id)
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.eds.EcdPolicyGroup;
import com.pulumi.alicloud.eds.EcdPolicyGroupArgs;
import com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;
import com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;
import com.pulumi.alicloud.eds.EdsFunctions;
import com.pulumi.alicloud.eds.inputs.GetPolicyGroupsArgs;
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) {
var default_ = new EcdPolicyGroup("default", EcdPolicyGroupArgs.builder()
.policyGroupName("my-policy-group")
.clipboard("read")
.localDrive("read")
.usbRedirect("off")
.watermark("off")
.authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()
.description("my-description1")
.cidrIp("1.2.3.45/24")
.build())
.authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()
.type("inflow")
.policy("accept")
.description("my-description")
.portRange("80/80")
.ipProtocol("TCP")
.priority("1")
.cidrIp("1.2.3.4/24")
.build())
.build());
final var nameRegex = EdsFunctions.getPolicyGroups(GetPolicyGroupsArgs.builder()
.nameRegex("^my-policy")
.build());
ctx.export("ecdPolicyGroupId", nameRegex.applyValue(getPolicyGroupsResult -> getPolicyGroupsResult.groups()[0].id()));
}
}
Content copied to clipboard
resources:
default:
type: alicloud:eds:EcdPolicyGroup
properties:
policyGroupName: my-policy-group
clipboard: read
localDrive: read
usbRedirect: off
watermark: off
authorizeAccessPolicyRules:
- description: my-description1
cidrIp: 1.2.3.45/24
authorizeSecurityPolicyRules:
- type: inflow
policy: accept
description: my-description
portRange: 80/80
ipProtocol: TCP
priority: '1'
cidrIp: 1.2.3.4/24
variables:
nameRegex:
fn::invoke:
function: alicloud:eds:getPolicyGroups
arguments:
nameRegex: ^my-policy
outputs:
ecdPolicyGroupId: ${nameRegex.groups[0].id}
Content copied to clipboard
Return
A collection of values returned by getPolicyGroups.
Parameters
argument
A collection of arguments for invoking getPolicyGroups.
suspend fun getPolicyGroups(ids: List<String>? = null, nameRegex: String? = null, outputFile: String? = null, status: String? = null): GetPolicyGroupsResult
Return
A collection of values returned by getPolicyGroups.
Parameters
ids
A list of Policy Group IDs.
name Regex
A regex string to filter results by Policy Group name.
output File
File name where to save data source results (after running pulumi preview
).
status
The status of policy.
See also
suspend fun getPolicyGroups(argument: suspend GetPolicyGroupsPlainArgsBuilder.() -> Unit): GetPolicyGroupsResult
Return
A collection of values returned by getPolicyGroups.
Parameters
argument
Builder for com.pulumi.alicloud.eds.kotlin.inputs.GetPolicyGroupsPlainArgs.