Options
All
  • Public
  • Public/Protected
  • All
Menu

Class FirewallService

Hierarchy

  • FirewallService

Index

Constructors

constructor

Methods

addDropletsToFirewall

  • addDropletsToFirewall(firewallId: string, dropletIds: number[]): Promise<void>
  • Assign Droplets to a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    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>

addRulesToFirewall

  • Add additional access rules to a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    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>

addTagsToFirewall

  • addTagsToFirewall(firewallId: string, tags: string[]): Promise<void>
  • Assign a Tag representing a group of Droplets to a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    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>

createFirewall

  • Create a new Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    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>

deleteFirewall

  • deleteFirewall(firewallId: string): Promise<void>
  • Delete a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    await client.firewalls.deleteFirewall('firewall-id');

    Parameters

    • firewallId: string

    Returns Promise<void>

getAllFirewalls

  • getAllFirewalls(): Promise<Firewall[]>
  • List all of the Cloud Firewalls available on your account

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    const firewall = await client.firewalls.getAllFirewalls();

    Returns Promise<Firewall[]>

getExistingFirewall

  • getExistingFirewall(firewallId: string): Promise<Firewall>
  • Show information about an existing Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    const firewall = await client.firewalls.getExistingFirewall('firewall-id');

    Parameters

    • firewallId: string

    Returns Promise<Firewall>

removeDropletsFromFirewall

  • removeDropletsFromFirewall(firewallId: string, dropletIds: number[]): Promise<void>
  • Remove Droplets from a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    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>

removeRulesFromFirewall

  • Remove access rules from a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    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>

removeTagsFromFirewall

  • removeTagsFromFirewall(firewallId: string, tags: string[]): Promise<void>
  • Remove a Tag representing a group of Droplets from a Cloud Firewall

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    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>

updateFirewall

  • 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-deno';
    
    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