Class FirewallService

Hierarchy

  • FirewallService

Constructors

Methods

  • Assign Droplets to a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const dropletIds = [
    'droplet-id-1',
    'droplet-id-2'
    ];
    await client.firewalls.addDropletsToFirewall('firewall-id', dropletIds);

    Parameters

    • firewallId: string
    • dropletIds: number[]

    Returns Promise<void>

  • Add additional access rules to a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const inboundRules = [
    {
    "protocol": "tcp",
    "ports": "3306",
    "sources": {
    "droplet_ids": [
    49696269
    ]
    }
    }
    ];
    outboundRules = [
    {
    "protocol": "tcp",
    "ports": "3306",
    "destinations": {
    "droplet_ids": [
    49696269
    ]
    }
    }
    ];
    await client.firewalls.addRulesToFirewall('firewall-id', inboundRules, outboundRules);

    Parameters

    Returns Promise<void>

  • Assign a Tag representing a group of Droplets to a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const tags = [
    'my-tag-1',
    'my-tag-2'
    ];
    await client.firewalls.addTagsToFirewall('firewall-id', tags);

    Parameters

    • firewallId: string
    • tags: string[]

    Returns Promise<void>

  • Create a new Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const newFirewall = {
    "name": "firewall",
    "inbound_rules": [
    {
    "protocol": "tcp",
    "ports": "80",
    "sources": {
    "load_balancer_uids": [
    "4de7ac8b-495b-4884-9a69-1050c6793cd6"
    ]
    }
    },
    {
    "protocol": "tcp",
    "ports": 22,
    "sources": {
    "tags": [
    "gateway"
    ],
    "addresses": [
    "18.0.0.0/8"
    ]
    }
    }
    ],
    "outbound_rules": [
    {
    "protocol": "tcp",
    "ports": "80",
    "destinations": {
    "addresses": [
    "0.0.0.0/0",
    "::/0"
    ]
    }
    }
    ],
    "droplet_ids": [
    8043964
    ],
    "tags": null
    };
    const firewall = await client.firewalls.createFirewall(newFirewall);

    Parameters

    Returns Promise<Firewall>

  • Delete a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    await client.firewalls.deleteFirewall('firewall-id');

    Parameters

    • firewallId: string

    Returns Promise<void>

  • Show information about an existing Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const firewall = await client.firewalls.getExistingFirewall('firewall-id');

    Parameters

    • firewallId: string

    Returns Promise<Firewall>

  • Remove Droplets from a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const dropletIds = [
    'droplet-id-1',
    'droplet-id-2'
    ];
    await client.firewalls.removeDropletsFromFirewall('firewall-id', dropletIds);

    Parameters

    • firewallId: string
    • dropletIds: number[]

    Returns Promise<void>

  • Remove access rules from a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const inboundRules = [
    {
    "protocol": "tcp",
    "ports": "3306",
    "sources": {
    "droplet_ids": [
    49696269
    ]
    }
    }
    ];
    outboundRules = [
    {
    "protocol": "tcp",
    "ports": "3306",
    "destinations": {
    "droplet_ids": [
    49696269
    ]
    }
    }
    ];
    await client.firewalls.removeRulesFromFirewall('firewall-id', inboundRules, outboundRules);

    Parameters

    Returns Promise<void>

  • Remove a Tag representing a group of Droplets from a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const tags = [
    'my-tag-1',
    'my-tag-2'
    ];
    await client.firewalls.removeTagsFromFirewall('firewall-id', tags);

    Parameters

    • firewallId: string
    • tags: string[]

    Returns Promise<void>

  • Update the configuration of an existing Cloud Firewall

    NOTE: Any attributes that are not provided will be reset to their default values.

    Example

    import { DigitalOcean } from 'digitalocean-js';

    const client = new DigitalOcean('your-api-key');
    const updatedFirewall = {
    "name": "firewall",
    "inbound_rules": [
    {
    "protocol": "tcp",
    "ports": "8080",
    "sources": {
    "load_balancer_uids": [
    "4de7ac8b-495b-4884-9a69-1050c6793cd6"
    ]
    }
    },
    {
    "protocol": "tcp",
    "ports": 22,
    "sources": {
    "tags": [
    "gateway"
    ],
    "addresses": [
    "18.0.0.0/8"
    ]
    }
    }
    ],
    "outbound_rules": [
    {
    "protocol": "tcp",
    "ports": "8080",
    "destinations": {
    "addresses": [
    "0.0.0.0/0",
    "::/0"
    ]
    }
    }
    ],
    "droplet_ids": [
    8043964
    ],
    "tags": [
    "frontend"
    ]
    };
    const firewall = await client.firewalls.updateFirewall(updatedFirewall);

    Parameters

    Returns Promise<Firewall>

Generated using TypeDoc