Show / Hide Table of Contents

Class NetworkSecurityGroup

A network security group (NSG) provides virtual firewall rules for a specific set of {@link Vnic} in a VCN. Compare NSGs with {@link SecurityList}, which provide virtual firewall rules to all the VNICs in a subnet.
A network security group consists of two items:

  • The set of {@link Vnic} that all have the same security rule needs (for example, a group of Compute instances all running the same application)
  • A set of NSG {@link SecurityRule} that apply to the VNICs in the group
    After creating an NSG, you can add VNICs and security rules to it. For example, when you create an instance, you can specify one or more NSGs to add the instance to (see {@link #createVnicDetails(CreateVnicDetailsRequest) createVnicDetails}). Or you can add an existing instance to an NSG with {@link #updateVnic(UpdateVnicRequest) updateVnic}.
    To add security rules to an NSG, see {@link #addNetworkSecurityGroupSecurityRules(AddNetworkSecurityGroupSecurityRulesRequest) addNetworkSecurityGroupSecurityRules}.
    To list the VNICs in an NSG, see {@link #listNetworkSecurityGroupVnics(ListNetworkSecurityGroupVnicsRequest) listNetworkSecurityGroupVnics}.
    To list the security rules in an NSG, see {@link #listNetworkSecurityGroupSecurityRules(ListNetworkSecurityGroupSecurityRulesRequest) listNetworkSecurityGroupSecurityRules}.
    For more information about network security groups, see Network Security Groups.
    Important: Oracle Cloud Infrastructure Compute service images automatically include firewall rules (for example, Linux iptables, Windows firewall). If there are issues with some type of access to an instance, make sure all of the following are set correctly:
  • Any security rules in any NSGs the instance's VNIC belongs to
  • Any {@link SecurityList} associated with the instance's subnet
  • The instance's OS firewall rules
    To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.
Inheritance
object
NetworkSecurityGroup
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Oci.CoreService.Models
Assembly: OCI.DotNetSDK.Core.dll
Syntax
public class NetworkSecurityGroup

Properties

CompartmentId

Declaration
[Required(ErrorMessage = "CompartmentId is required.")]
[JsonProperty(PropertyName = "compartmentId")]
public string CompartmentId { get; set; }
Property Value
Type Description
string

The OCID of the compartment the network security group is in.

Remarks

Required

DefinedTags

Declaration
[JsonProperty(PropertyName = "definedTags")]
public Dictionary<string, Dictionary<string, object>> DefinedTags { get; set; }
Property Value
Type Description
Dictionary<string, Dictionary<string, object>>

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: {"Operations": {"CostCenter": "42"}}

DisplayName

Declaration
[JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
Property Value
Type Description
string

A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

FreeformTags

Declaration
[JsonProperty(PropertyName = "freeformTags")]
public Dictionary<string, string> FreeformTags { get; set; }
Property Value
Type Description
Dictionary<string, string>

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
Example: {"Department": "Finance"}

Id

Declaration
[Required(ErrorMessage = "Id is required.")]
[JsonProperty(PropertyName = "id")]
public string Id { get; set; }
Property Value
Type Description
string

The OCID of the network security group.

Remarks

Required

LifecycleState

Declaration
[Required(ErrorMessage = "LifecycleState is required.")]
[JsonProperty(PropertyName = "lifecycleState")]
[JsonConverter(typeof(ResponseEnumConverter))]
public NetworkSecurityGroup.LifecycleStateEnum? LifecycleState { get; set; }
Property Value
Type Description
NetworkSecurityGroup.LifecycleStateEnum?

The network security group's current state.

Remarks

Required

TimeCreated

Declaration
[Required(ErrorMessage = "TimeCreated is required.")]
[JsonProperty(PropertyName = "timeCreated")]
public DateTime? TimeCreated { get; set; }
Property Value
Type Description
DateTime?

The date and time the network security group was created, in the format defined by RFC3339.
Example: 2016-08-25T21:10:29.600Z

Remarks

Required

VcnId

Declaration
[Required(ErrorMessage = "VcnId is required.")]
[JsonProperty(PropertyName = "vcnId")]
public string VcnId { get; set; }
Property Value
Type Description
string

The OCID of the network security group's VCN.

Remarks

Required

In this article
Back to top