@Generated(value="OracleSDKGenerator", comments="API Version: 20160918") public final class NetworkSecurityGroup extends Object
A network security group (NSG) provides virtual firewall rules for a specific set of
Vnic
in a VCN. Compare NSGs with SecurityList
,
which provide virtual firewall rules to all the VNICs in a subnet.
A network security group consists of two items:
The set of 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 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
createVnicDetails
). Or you can add an existing
instance to an NSG with updateVnic
.
To add security rules to an NSG, see
addNetworkSecurityGroupSecurityRules
.
To list the VNICs in an NSG, see
listNetworkSecurityGroupVnics
.
To list the security rules in an NSG, see
listNetworkSecurityGroupSecurityRules
.
For more information about network security groups, see [Network Security Groups](https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/networksecuritygroups.htm).
*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 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](https://docs.cloud.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm).
Note: Objects should always be created or deserialized using the NetworkSecurityGroup.Builder
. This model distinguishes fields
that are null
because they are unset from fields that are explicitly set to null
. This is done in
the setter methods of the NetworkSecurityGroup.Builder
, which maintain a set of all explicitly set fields called
__explicitlySet__
. The hashCode()
and equals(Object)
methods are implemented to take
__explicitlySet__
into account. The constructor, on the other hand, does not set __explicitlySet__
(since the constructor cannot distinguish explicit null
from unset null
).
Modifier and Type | Class and Description |
---|---|
static class |
NetworkSecurityGroup.Builder |
static class |
NetworkSecurityGroup.LifecycleState
The network security group’s current state.
|
Constructor and Description |
---|
NetworkSecurityGroup(String compartmentId,
Map<String,Map<String,Object>> definedTags,
String displayName,
Map<String,String> freeformTags,
String id,
NetworkSecurityGroup.LifecycleState lifecycleState,
Date timeCreated,
String vcnId)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
static NetworkSecurityGroup.Builder |
builder()
Create a new builder.
|
boolean |
equals(Object o) |
Set<String> |
get__explicitlySet__() |
String |
getCompartmentId()
The OCID of the compartment the network security group is in.
|
Map<String,Map<String,Object>> |
getDefinedTags()
Defined tags for this resource.
|
String |
getDisplayName()
A user-friendly name.
|
Map<String,String> |
getFreeformTags()
Free-form tags for this resource.
|
String |
getId()
The OCID of the network security group.
|
NetworkSecurityGroup.LifecycleState |
getLifecycleState()
The network security group’s current state.
|
Date |
getTimeCreated()
The date and time the network security group was created, in the format defined by RFC3339.
|
String |
getVcnId()
The OCID of the network security group’s VCN.
|
int |
hashCode() |
NetworkSecurityGroup.Builder |
toBuilder() |
String |
toString() |
@ConstructorProperties(value={"compartmentId","definedTags","displayName","freeformTags","id","lifecycleState","timeCreated","vcnId"}) @Deprecated public NetworkSecurityGroup(String compartmentId, Map<String,Map<String,Object>> definedTags, String displayName, Map<String,String> freeformTags, String id, NetworkSecurityGroup.LifecycleState lifecycleState, Date timeCreated, String vcnId)
public static NetworkSecurityGroup.Builder builder()
Create a new builder.
public NetworkSecurityGroup.Builder toBuilder()
public String getCompartmentId()
The OCID of the compartment the network security group is in.
public Map<String,Map<String,Object>> getDefinedTags()
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
public String getDisplayName()
A user-friendly name. Does not have to be unique. Avoid entering confidential information.
public Map<String,String> getFreeformTags()
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\"}`
public NetworkSecurityGroup.LifecycleState getLifecycleState()
The network security group’s current state.
public Date getTimeCreated()
The date and time the network security group was created, in the format defined by RFC3339.
Example: `2016-08-25T21:10:29.600Z`
Copyright © 2016–2021. All rights reserved.