Cloudflare

Pulumi Official
Package maintained by Pulumi
v4.9.0 published on Monday, Jul 18, 2022 by Pulumi

DevicePostureIntegration

Provides a Cloudflare Device Posture Integration resource. Device posture integrations configure third-party data providers for device posture rules.

Example Usage

using Pulumi;
using Cloudflare = Pulumi.Cloudflare;

class MyStack : Stack
{
    public MyStack()
    {
        var thirdPartyDevicesPostureIntegration = new Cloudflare.DevicePostureIntegration("thirdPartyDevicesPostureIntegration", new Cloudflare.DevicePostureIntegrationArgs
        {
            AccountId = "1d5fdc9e88c8a8c4518b068cd94331fe",
            Configs = 
            {
                new Cloudflare.Inputs.DevicePostureIntegrationConfigArgs
                {
                    ApiUrl = "https://example.com/api",
                    AuthUrl = "https://example.com/connect/token",
                    ClientId = "client-id",
                    ClientSecret = "client-secret",
                },
            },
            Interval = "24h",
            Name = "Device posture integration",
            Type = "workspace_one",
        });
    }

}
package main

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

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := cloudflare.NewDevicePostureIntegration(ctx, "thirdPartyDevicesPostureIntegration", &cloudflare.DevicePostureIntegrationArgs{
			AccountId: pulumi.String("1d5fdc9e88c8a8c4518b068cd94331fe"),
			Configs: DevicePostureIntegrationConfigArray{
				&DevicePostureIntegrationConfigArgs{
					ApiUrl:       pulumi.String("https://example.com/api"),
					AuthUrl:      pulumi.String("https://example.com/connect/token"),
					ClientId:     pulumi.String("client-id"),
					ClientSecret: pulumi.String("client-secret"),
				},
			},
			Interval: pulumi.String("24h"),
			Name:     pulumi.String("Device posture integration"),
			Type:     pulumi.String("workspace_one"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import java.util.*;
import java.io.*;
import java.nio.*;
import com.pulumi.*;

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

    public static void stack(Context ctx) {
        var thirdPartyDevicesPostureIntegration = new DevicePostureIntegration("thirdPartyDevicesPostureIntegration", DevicePostureIntegrationArgs.builder()        
            .accountId("1d5fdc9e88c8a8c4518b068cd94331fe")
            .configs(DevicePostureIntegrationConfigArgs.builder()
                .apiUrl("https://example.com/api")
                .authUrl("https://example.com/connect/token")
                .clientId("client-id")
                .clientSecret("client-secret")
                .build())
            .interval("24h")
            .name("Device posture integration")
            .type("workspace_one")
            .build());

    }
}
import pulumi
import pulumi_cloudflare as cloudflare

third_party_devices_posture_integration = cloudflare.DevicePostureIntegration("thirdPartyDevicesPostureIntegration",
    account_id="1d5fdc9e88c8a8c4518b068cd94331fe",
    configs=[cloudflare.DevicePostureIntegrationConfigArgs(
        api_url="https://example.com/api",
        auth_url="https://example.com/connect/token",
        client_id="client-id",
        client_secret="client-secret",
    )],
    interval="24h",
    name="Device posture integration",
    type="workspace_one")
import * as pulumi from "@pulumi/pulumi";
import * as cloudflare from "@pulumi/cloudflare";

const thirdPartyDevicesPostureIntegration = new cloudflare.DevicePostureIntegration("third_party_devices_posture_integration", {
    accountId: "1d5fdc9e88c8a8c4518b068cd94331fe",
    configs: [{
        apiUrl: "https://example.com/api",
        authUrl: "https://example.com/connect/token",
        clientId: "client-id",
        clientSecret: "client-secret",
    }],
    interval: "24h",
    name: "Device posture integration",
    type: "workspace_one",
});
resources:
  thirdPartyDevicesPostureIntegration:
    type: cloudflare:DevicePostureIntegration
    properties:
      accountId: 1d5fdc9e88c8a8c4518b068cd94331fe
      configs:
        - apiUrl: https://example.com/api
          authUrl: https://example.com/connect/token
          clientId: client-id
          clientSecret: client-secret
      interval: 24h
      name: Device posture integration
      type: workspace_one

Create a DevicePostureIntegration Resource

new DevicePostureIntegration(name: string, args: DevicePostureIntegrationArgs, opts?: CustomResourceOptions);
@overload
def DevicePostureIntegration(resource_name: str,
                             opts: Optional[ResourceOptions] = None,
                             account_id: Optional[str] = None,
                             configs: Optional[Sequence[DevicePostureIntegrationConfigArgs]] = None,
                             identifier: Optional[str] = None,
                             interval: Optional[str] = None,
                             name: Optional[str] = None,
                             type: Optional[str] = None)
@overload
def DevicePostureIntegration(resource_name: str,
                             args: DevicePostureIntegrationArgs,
                             opts: Optional[ResourceOptions] = None)
func NewDevicePostureIntegration(ctx *Context, name string, args DevicePostureIntegrationArgs, opts ...ResourceOption) (*DevicePostureIntegration, error)
public DevicePostureIntegration(string name, DevicePostureIntegrationArgs args, CustomResourceOptions? opts = null)
public DevicePostureIntegration(String name, DevicePostureIntegrationArgs args)
public DevicePostureIntegration(String name, DevicePostureIntegrationArgs args, CustomResourceOptions options)
type: cloudflare:DevicePostureIntegration
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args DevicePostureIntegrationArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args DevicePostureIntegrationArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args DevicePostureIntegrationArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args DevicePostureIntegrationArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args DevicePostureIntegrationArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

DevicePostureIntegration Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The DevicePostureIntegration resource accepts the following input properties:

AccountId string

The account to which the device posture integration should be added.

Name string

Name of the device posture integration.

Type string

The device posture integration type. Valid values are workspace_one.

Configs List<DevicePostureIntegrationConfigArgs>

The device posture integration's connection authorization parameters.

Identifier string
Interval string

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

AccountId string

The account to which the device posture integration should be added.

Name string

Name of the device posture integration.

Type string

The device posture integration type. Valid values are workspace_one.

Configs []DevicePostureIntegrationConfigArgs

The device posture integration's connection authorization parameters.

Identifier string
Interval string

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

accountId String

The account to which the device posture integration should be added.

name String

Name of the device posture integration.

type String

The device posture integration type. Valid values are workspace_one.

configs List<DevicePostureIntegrationConfigArgs>

The device posture integration's connection authorization parameters.

identifier String
interval String

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

accountId string

The account to which the device posture integration should be added.

name string

Name of the device posture integration.

type string

The device posture integration type. Valid values are workspace_one.

configs DevicePostureIntegrationConfigArgs[]

The device posture integration's connection authorization parameters.

identifier string
interval string

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

account_id str

The account to which the device posture integration should be added.

name str

Name of the device posture integration.

type str

The device posture integration type. Valid values are workspace_one.

configs Sequence[DevicePostureIntegrationConfigArgs]

The device posture integration's connection authorization parameters.

identifier str
interval str

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

accountId String

The account to which the device posture integration should be added.

name String

Name of the device posture integration.

type String

The device posture integration type. Valid values are workspace_one.

configs List<Property Map>

The device posture integration's connection authorization parameters.

identifier String
interval String

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

Outputs

All input properties are implicitly available as output properties. Additionally, the DevicePostureIntegration resource produces the following output properties:

Id string

The provider-assigned unique ID for this managed resource.

Id string

The provider-assigned unique ID for this managed resource.

id String

The provider-assigned unique ID for this managed resource.

id string

The provider-assigned unique ID for this managed resource.

id str

The provider-assigned unique ID for this managed resource.

id String

The provider-assigned unique ID for this managed resource.

Look up an Existing DevicePostureIntegration Resource

Get an existing DevicePostureIntegration resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: DevicePostureIntegrationState, opts?: CustomResourceOptions): DevicePostureIntegration
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        account_id: Optional[str] = None,
        configs: Optional[Sequence[DevicePostureIntegrationConfigArgs]] = None,
        identifier: Optional[str] = None,
        interval: Optional[str] = None,
        name: Optional[str] = None,
        type: Optional[str] = None) -> DevicePostureIntegration
func GetDevicePostureIntegration(ctx *Context, name string, id IDInput, state *DevicePostureIntegrationState, opts ...ResourceOption) (*DevicePostureIntegration, error)
public static DevicePostureIntegration Get(string name, Input<string> id, DevicePostureIntegrationState? state, CustomResourceOptions? opts = null)
public static DevicePostureIntegration get(String name, Output<String> id, DevicePostureIntegrationState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AccountId string

The account to which the device posture integration should be added.

Configs List<DevicePostureIntegrationConfigArgs>

The device posture integration's connection authorization parameters.

Identifier string
Interval string

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

Name string

Name of the device posture integration.

Type string

The device posture integration type. Valid values are workspace_one.

AccountId string

The account to which the device posture integration should be added.

Configs []DevicePostureIntegrationConfigArgs

The device posture integration's connection authorization parameters.

Identifier string
Interval string

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

Name string

Name of the device posture integration.

Type string

The device posture integration type. Valid values are workspace_one.

accountId String

The account to which the device posture integration should be added.

configs List<DevicePostureIntegrationConfigArgs>

The device posture integration's connection authorization parameters.

identifier String
interval String

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

name String

Name of the device posture integration.

type String

The device posture integration type. Valid values are workspace_one.

accountId string

The account to which the device posture integration should be added.

configs DevicePostureIntegrationConfigArgs[]

The device posture integration's connection authorization parameters.

identifier string
interval string

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

name string

Name of the device posture integration.

type string

The device posture integration type. Valid values are workspace_one.

account_id str

The account to which the device posture integration should be added.

configs Sequence[DevicePostureIntegrationConfigArgs]

The device posture integration's connection authorization parameters.

identifier str
interval str

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

name str

Name of the device posture integration.

type str

The device posture integration type. Valid values are workspace_one.

accountId String

The account to which the device posture integration should be added.

configs List<Property Map>

The device posture integration's connection authorization parameters.

identifier String
interval String

Indicates the frequency with which to poll the third-party API. Must be in the format "1h" or "30m". Valid units are h and m.

name String

Name of the device posture integration.

type String

The device posture integration type. Valid values are workspace_one.

Supporting Types

DevicePostureIntegrationConfig

ApiUrl string

The third-party API's URL.

AuthUrl string

The third-party authorization API URL.

ClientId string

The client identifier for authenticating API calls.

ClientKey string

The client key for authenticating API calls.

ClientSecret string

The client secret for authenticating API calls.

CustomerId string

The customer identifier for authenticating API calls.

ApiUrl string

The third-party API's URL.

AuthUrl string

The third-party authorization API URL.

ClientId string

The client identifier for authenticating API calls.

ClientKey string

The client key for authenticating API calls.

ClientSecret string

The client secret for authenticating API calls.

CustomerId string

The customer identifier for authenticating API calls.

apiUrl String

The third-party API's URL.

authUrl String

The third-party authorization API URL.

clientId String

The client identifier for authenticating API calls.

clientKey String

The client key for authenticating API calls.

clientSecret String

The client secret for authenticating API calls.

customerId String

The customer identifier for authenticating API calls.

apiUrl string

The third-party API's URL.

authUrl string

The third-party authorization API URL.

clientId string

The client identifier for authenticating API calls.

clientKey string

The client key for authenticating API calls.

clientSecret string

The client secret for authenticating API calls.

customerId string

The customer identifier for authenticating API calls.

api_url str

The third-party API's URL.

auth_url str

The third-party authorization API URL.

client_id str

The client identifier for authenticating API calls.

client_key str

The client key for authenticating API calls.

client_secret str

The client secret for authenticating API calls.

customer_id str

The customer identifier for authenticating API calls.

apiUrl String

The third-party API's URL.

authUrl String

The third-party authorization API URL.

clientId String

The client identifier for authenticating API calls.

clientKey String

The client key for authenticating API calls.

clientSecret String

The client secret for authenticating API calls.

customerId String

The customer identifier for authenticating API calls.

Import

Device posture integrations can be imported using a composite ID formed of account ID and device posture integration ID.

 $ pulumi import cloudflare:index/devicePostureIntegration:DevicePostureIntegration corporate_devices cb029e245cfdd66dc8d2e570d5dd3322/0ade592a-62d6-46ab-bac8-01f47c7fa792

Package Details

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

This Pulumi package is based on the cloudflare Terraform Provider.