TeamsAccountArgs

data class TeamsAccountArgs(val accountId: Output<String>? = null, val activityLogEnabled: Output<Boolean>? = null, val antivirus: Output<TeamsAccountAntivirusArgs>? = null, val blockPage: Output<TeamsAccountBlockPageArgs>? = null, val bodyScanning: Output<TeamsAccountBodyScanningArgs>? = null, val customCertificate: Output<TeamsAccountCustomCertificateArgs>? = null, val extendedEmailMatching: Output<TeamsAccountExtendedEmailMatchingArgs>? = null, val fips: Output<TeamsAccountFipsArgs>? = null, val logging: Output<TeamsAccountLoggingArgs>? = null, val nonIdentityBrowserIsolationEnabled: Output<Boolean>? = null, val payloadLog: Output<TeamsAccountPayloadLogArgs>? = null, val protocolDetectionEnabled: Output<Boolean>? = null, val proxy: Output<TeamsAccountProxyArgs>? = null, val sshSessionLog: Output<TeamsAccountSshSessionLogArgs>? = null, val tlsDecryptEnabled: Output<Boolean>? = null, val urlBrowserIsolationEnabled: Output<Boolean>? = null) : ConvertibleToJava<TeamsAccountArgs>

Provides a Cloudflare Teams Account resource. The Teams Account resource defines configuration for secure web gateway.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as cloudflare from "@pulumi/cloudflare";
const example = new cloudflare.TeamsAccount("example", {
accountId: "f037e56e89293a057740de681ac9abbe",
tlsDecryptEnabled: true,
protocolDetectionEnabled: true,
blockPage: {
footerText: "hello",
headerText: "hello",
logoPath: "https://example.com/logo.jpg",
backgroundColor: "#000000",
},
bodyScanning: {
inspectionMode: "deep",
},
antivirus: {
enabledDownloadPhase: true,
enabledUploadPhase: false,
failClosed: true,
notificationSettings: {
enabled: true,
message: "you are blocked",
supportUrl: "https://example.com/blocked",
},
},
fips: {
tls: true,
},
proxy: {
tcp: true,
udp: true,
rootCa: true,
},
urlBrowserIsolationEnabled: true,
logging: {
redactPii: true,
settingsByRuleType: {
dns: {
logAll: false,
logBlocks: true,
},
http: {
logAll: true,
logBlocks: true,
},
l4: {
logAll: false,
logBlocks: true,
},
},
},
extendedEmailMatching: {
enabled: true,
},
});
import pulumi
import pulumi_cloudflare as cloudflare
example = cloudflare.TeamsAccount("example",
account_id="f037e56e89293a057740de681ac9abbe",
tls_decrypt_enabled=True,
protocol_detection_enabled=True,
block_page=cloudflare.TeamsAccountBlockPageArgs(
footer_text="hello",
header_text="hello",
logo_path="https://example.com/logo.jpg",
background_color="#000000",
),
body_scanning=cloudflare.TeamsAccountBodyScanningArgs(
inspection_mode="deep",
),
antivirus=cloudflare.TeamsAccountAntivirusArgs(
enabled_download_phase=True,
enabled_upload_phase=False,
fail_closed=True,
notification_settings=cloudflare.TeamsAccountAntivirusNotificationSettingsArgs(
enabled=True,
message="you are blocked",
support_url="https://example.com/blocked",
),
),
fips=cloudflare.TeamsAccountFipsArgs(
tls=True,
),
proxy=cloudflare.TeamsAccountProxyArgs(
tcp=True,
udp=True,
root_ca=True,
),
url_browser_isolation_enabled=True,
logging=cloudflare.TeamsAccountLoggingArgs(
redact_pii=True,
settings_by_rule_type=cloudflare.TeamsAccountLoggingSettingsByRuleTypeArgs(
dns=cloudflare.TeamsAccountLoggingSettingsByRuleTypeDnsArgs(
log_all=False,
log_blocks=True,
),
http=cloudflare.TeamsAccountLoggingSettingsByRuleTypeHttpArgs(
log_all=True,
log_blocks=True,
),
l4=cloudflare.TeamsAccountLoggingSettingsByRuleTypeL4Args(
log_all=False,
log_blocks=True,
),
),
),
extended_email_matching=cloudflare.TeamsAccountExtendedEmailMatchingArgs(
enabled=True,
))
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Cloudflare = Pulumi.Cloudflare;
return await Deployment.RunAsync(() =>
{
var example = new Cloudflare.TeamsAccount("example", new()
{
AccountId = "f037e56e89293a057740de681ac9abbe",
TlsDecryptEnabled = true,
ProtocolDetectionEnabled = true,
BlockPage = new Cloudflare.Inputs.TeamsAccountBlockPageArgs
{
FooterText = "hello",
HeaderText = "hello",
LogoPath = "https://example.com/logo.jpg",
BackgroundColor = "#000000",
},
BodyScanning = new Cloudflare.Inputs.TeamsAccountBodyScanningArgs
{
InspectionMode = "deep",
},
Antivirus = new Cloudflare.Inputs.TeamsAccountAntivirusArgs
{
EnabledDownloadPhase = true,
EnabledUploadPhase = false,
FailClosed = true,
NotificationSettings = new Cloudflare.Inputs.TeamsAccountAntivirusNotificationSettingsArgs
{
Enabled = true,
Message = "you are blocked",
SupportUrl = "https://example.com/blocked",
},
},
Fips = new Cloudflare.Inputs.TeamsAccountFipsArgs
{
Tls = true,
},
Proxy = new Cloudflare.Inputs.TeamsAccountProxyArgs
{
Tcp = true,
Udp = true,
RootCa = true,
},
UrlBrowserIsolationEnabled = true,
Logging = new Cloudflare.Inputs.TeamsAccountLoggingArgs
{
RedactPii = true,
SettingsByRuleType = new Cloudflare.Inputs.TeamsAccountLoggingSettingsByRuleTypeArgs
{
Dns = new Cloudflare.Inputs.TeamsAccountLoggingSettingsByRuleTypeDnsArgs
{
LogAll = false,
LogBlocks = true,
},
Http = new Cloudflare.Inputs.TeamsAccountLoggingSettingsByRuleTypeHttpArgs
{
LogAll = true,
LogBlocks = true,
},
L4 = new Cloudflare.Inputs.TeamsAccountLoggingSettingsByRuleTypeL4Args
{
LogAll = false,
LogBlocks = true,
},
},
},
ExtendedEmailMatching = new Cloudflare.Inputs.TeamsAccountExtendedEmailMatchingArgs
{
Enabled = true,
},
});
});
package main
import (
"github.com/pulumi/pulumi-cloudflare/sdk/v5/go/cloudflare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudflare.NewTeamsAccount(ctx, "example", &cloudflare.TeamsAccountArgs{
AccountId: pulumi.String("f037e56e89293a057740de681ac9abbe"),
TlsDecryptEnabled: pulumi.Bool(true),
ProtocolDetectionEnabled: pulumi.Bool(true),
BlockPage: &cloudflare.TeamsAccountBlockPageArgs{
FooterText: pulumi.String("hello"),
HeaderText: pulumi.String("hello"),
LogoPath: pulumi.String("https://example.com/logo.jpg"),
BackgroundColor: pulumi.String("#000000"),
},
BodyScanning: &cloudflare.TeamsAccountBodyScanningArgs{
InspectionMode: pulumi.String("deep"),
},
Antivirus: &cloudflare.TeamsAccountAntivirusArgs{
EnabledDownloadPhase: pulumi.Bool(true),
EnabledUploadPhase: pulumi.Bool(false),
FailClosed: pulumi.Bool(true),
NotificationSettings: &cloudflare.TeamsAccountAntivirusNotificationSettingsArgs{
Enabled: pulumi.Bool(true),
Message: pulumi.String("you are blocked"),
SupportUrl: pulumi.String("https://example.com/blocked"),
},
},
Fips: &cloudflare.TeamsAccountFipsArgs{
Tls: pulumi.Bool(true),
},
Proxy: &cloudflare.TeamsAccountProxyArgs{
Tcp: pulumi.Bool(true),
Udp: pulumi.Bool(true),
RootCa: pulumi.Bool(true),
},
UrlBrowserIsolationEnabled: pulumi.Bool(true),
Logging: &cloudflare.TeamsAccountLoggingArgs{
RedactPii: pulumi.Bool(true),
SettingsByRuleType: &cloudflare.TeamsAccountLoggingSettingsByRuleTypeArgs{
Dns: &cloudflare.TeamsAccountLoggingSettingsByRuleTypeDnsArgs{
LogAll: pulumi.Bool(false),
LogBlocks: pulumi.Bool(true),
},
Http: &cloudflare.TeamsAccountLoggingSettingsByRuleTypeHttpArgs{
LogAll: pulumi.Bool(true),
LogBlocks: pulumi.Bool(true),
},
L4: &cloudflare.TeamsAccountLoggingSettingsByRuleTypeL4Args{
LogAll: pulumi.Bool(false),
LogBlocks: pulumi.Bool(true),
},
},
},
ExtendedEmailMatching: &cloudflare.TeamsAccountExtendedEmailMatchingArgs{
Enabled: pulumi.Bool(true),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cloudflare.TeamsAccount;
import com.pulumi.cloudflare.TeamsAccountArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountBlockPageArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountBodyScanningArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountAntivirusArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountAntivirusNotificationSettingsArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountFipsArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountProxyArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountLoggingArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountLoggingSettingsByRuleTypeArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountLoggingSettingsByRuleTypeDnsArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountLoggingSettingsByRuleTypeHttpArgs;
import com.pulumi.cloudflare.inputs.TeamsAccountLoggingSettingsByRuleTypeL4Args;
import com.pulumi.cloudflare.inputs.TeamsAccountExtendedEmailMatchingArgs;
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 example = new TeamsAccount("example", TeamsAccountArgs.builder()
.accountId("f037e56e89293a057740de681ac9abbe")
.tlsDecryptEnabled(true)
.protocolDetectionEnabled(true)
.blockPage(TeamsAccountBlockPageArgs.builder()
.footerText("hello")
.headerText("hello")
.logoPath("https://example.com/logo.jpg")
.backgroundColor("#000000")
.build())
.bodyScanning(TeamsAccountBodyScanningArgs.builder()
.inspectionMode("deep")
.build())
.antivirus(TeamsAccountAntivirusArgs.builder()
.enabledDownloadPhase(true)
.enabledUploadPhase(false)
.failClosed(true)
.notificationSettings(TeamsAccountAntivirusNotificationSettingsArgs.builder()
.enabled(true)
.message("you are blocked")
.supportUrl("https://example.com/blocked")
.build())
.build())
.fips(TeamsAccountFipsArgs.builder()
.tls(true)
.build())
.proxy(TeamsAccountProxyArgs.builder()
.tcp(true)
.udp(true)
.rootCa(true)
.build())
.urlBrowserIsolationEnabled(true)
.logging(TeamsAccountLoggingArgs.builder()
.redactPii(true)
.settingsByRuleType(TeamsAccountLoggingSettingsByRuleTypeArgs.builder()
.dns(TeamsAccountLoggingSettingsByRuleTypeDnsArgs.builder()
.logAll(false)
.logBlocks(true)
.build())
.http(TeamsAccountLoggingSettingsByRuleTypeHttpArgs.builder()
.logAll(true)
.logBlocks(true)
.build())
.l4(TeamsAccountLoggingSettingsByRuleTypeL4Args.builder()
.logAll(false)
.logBlocks(true)
.build())
.build())
.build())
.extendedEmailMatching(TeamsAccountExtendedEmailMatchingArgs.builder()
.enabled(true)
.build())
.build());
}
}
resources:
example:
type: cloudflare:TeamsAccount
properties:
accountId: f037e56e89293a057740de681ac9abbe
tlsDecryptEnabled: true
protocolDetectionEnabled: true
blockPage:
footerText: hello
headerText: hello
logoPath: https://example.com/logo.jpg
backgroundColor: '#000000'
bodyScanning:
inspectionMode: deep
antivirus:
enabledDownloadPhase: true
enabledUploadPhase: false
failClosed: true
notificationSettings:
enabled: true
message: you are blocked
supportUrl: https://example.com/blocked
fips:
tls: true
proxy:
tcp: true
udp: true
rootCa: true
urlBrowserIsolationEnabled: true
logging:
redactPii: true
settingsByRuleType:
dns:
logAll: false
logBlocks: true
http:
logAll: true
logBlocks: true
l4:
logAll: false
logBlocks: true
extendedEmailMatching:
enabled: true

Import

$ pulumi import cloudflare:index/teamsAccount:TeamsAccount example <account_id>

Constructors

Link copied to clipboard
constructor(accountId: Output<String>? = null, activityLogEnabled: Output<Boolean>? = null, antivirus: Output<TeamsAccountAntivirusArgs>? = null, blockPage: Output<TeamsAccountBlockPageArgs>? = null, bodyScanning: Output<TeamsAccountBodyScanningArgs>? = null, customCertificate: Output<TeamsAccountCustomCertificateArgs>? = null, extendedEmailMatching: Output<TeamsAccountExtendedEmailMatchingArgs>? = null, fips: Output<TeamsAccountFipsArgs>? = null, logging: Output<TeamsAccountLoggingArgs>? = null, nonIdentityBrowserIsolationEnabled: Output<Boolean>? = null, payloadLog: Output<TeamsAccountPayloadLogArgs>? = null, protocolDetectionEnabled: Output<Boolean>? = null, proxy: Output<TeamsAccountProxyArgs>? = null, sshSessionLog: Output<TeamsAccountSshSessionLogArgs>? = null, tlsDecryptEnabled: Output<Boolean>? = null, urlBrowserIsolationEnabled: Output<Boolean>? = null)

Properties

Link copied to clipboard
val accountId: Output<String>? = null

The account identifier to target for the resource.

Link copied to clipboard
val activityLogEnabled: Output<Boolean>? = null

Whether to enable the activity log.

Link copied to clipboard

Configuration block for antivirus traffic scanning.

Link copied to clipboard

Configuration for a custom block page.

Link copied to clipboard

Configuration for body scanning.

Link copied to clipboard

Configuration for custom certificates / BYO-PKI.

Link copied to clipboard

Configuration for extended e-mail matching.

Link copied to clipboard
val fips: Output<TeamsAccountFipsArgs>? = null

Configure compliance with Federal Information Processing Standards.

Link copied to clipboard
val logging: Output<TeamsAccountLoggingArgs>? = null
Link copied to clipboard

Enable non-identity onramp for Browser Isolation. Defaults to false.

Link copied to clipboard

Configuration for DLP Payload Logging.

Link copied to clipboard
val protocolDetectionEnabled: Output<Boolean>? = null

Indicator that protocol detection is enabled.

Link copied to clipboard
val proxy: Output<TeamsAccountProxyArgs>? = null

Configuration block for specifying which protocols are proxied.

Link copied to clipboard

Configuration for SSH Session Logging.

Link copied to clipboard
val tlsDecryptEnabled: Output<Boolean>? = null

Indicator that decryption of TLS traffic is enabled.

Link copied to clipboard
val urlBrowserIsolationEnabled: Output<Boolean>? = null

Safely browse websites in Browser Isolation through a URL. Defaults to false.

Functions

Link copied to clipboard
open override fun toJava(): TeamsAccountArgs