Policy

class oci.identity.models.Policy(**kwargs)

Bases: object

A document that specifies the type of access a group has to the resources in a compartment. For information about policies and other IAM Service components, see Overview of the IAM Service. If you're new to policies, see Getting Started with Policies.

The word "policy" is used by people in different ways:

  • An individual statement written in the policy language
  • A collection of statements in a single, named "policy" document (which has an Oracle Cloud ID (OCID) assigned to it)
  • The overall body of policies your organization uses to control access to resources

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

LIFECYCLE_STATE_ACTIVE = 'ACTIVE'

A constant which can be used with the lifecycle_state property of a Policy. This constant has a value of "ACTIVE"

LIFECYCLE_STATE_CREATING = 'CREATING'

A constant which can be used with the lifecycle_state property of a Policy. This constant has a value of "CREATING"

LIFECYCLE_STATE_DELETED = 'DELETED'

A constant which can be used with the lifecycle_state property of a Policy. This constant has a value of "DELETED"

LIFECYCLE_STATE_DELETING = 'DELETING'

A constant which can be used with the lifecycle_state property of a Policy. This constant has a value of "DELETING"

LIFECYCLE_STATE_INACTIVE = 'INACTIVE'

A constant which can be used with the lifecycle_state property of a Policy. This constant has a value of "INACTIVE"

__init__(**kwargs)

Initializes a new Policy object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class):

Parameters:
  • id (str) -- The value to assign to the id property of this Policy.
  • compartment_id (str) -- The value to assign to the compartment_id property of this Policy.
  • name (str) -- The value to assign to the name property of this Policy.
  • statements (list[str]) -- The value to assign to the statements property of this Policy.
  • description (str) -- The value to assign to the description property of this Policy.
  • time_created (datetime) -- The value to assign to the time_created property of this Policy.
  • lifecycle_state (str) -- The value to assign to the lifecycle_state property of this Policy. Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
  • inactive_status (int) -- The value to assign to the inactive_status property of this Policy.
  • version_date (datetime) -- The value to assign to the version_date property of this Policy.
  • freeform_tags (dict(str, str)) -- The value to assign to the freeform_tags property of this Policy.
  • defined_tags (dict(str, dict(str, object))) -- The value to assign to the defined_tags property of this Policy.
compartment_id

[Required] Gets the compartment_id of this Policy. The OCID of the compartment containing the policy (either the tenancy or another compartment).

Returns:The compartment_id of this Policy.
Return type:str
defined_tags

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

Returns:The defined_tags of this Policy.
Return type:dict(str, dict(str, object))
description

[Required] Gets the description of this Policy. The description you assign to the policy. Does not have to be unique, and it's changeable.

Returns:The description of this Policy.
Return type:str
freeform_tags

Gets the freeform_tags of this Policy. 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"}

Returns:The freeform_tags of this Policy.
Return type:dict(str, str)
id

[Required] Gets the id of this Policy. The OCID of the policy.

Returns:The id of this Policy.
Return type:str
inactive_status

Gets the inactive_status of this Policy. The detailed status of INACTIVE lifecycleState.

Returns:The inactive_status of this Policy.
Return type:int
lifecycle_state

[Required] Gets the lifecycle_state of this Policy. The policy's current state. After creating a policy, make sure its lifecycleState changes from CREATING to ACTIVE before using it.

Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.

Returns:The lifecycle_state of this Policy.
Return type:str
name

[Required] Gets the name of this Policy. The name you assign to the policy during creation. The name must be unique across all policies in the tenancy and cannot be changed.

Returns:The name of this Policy.
Return type:str
statements

[Required] Gets the statements of this Policy. An array of one or more policy statements written in the policy language.

Returns:The statements of this Policy.
Return type:list[str]
time_created

[Required] Gets the time_created of this Policy. Date and time the policy was created, in the format defined by RFC3339.

Example: 2016-08-25T21:10:29.600Z

Returns:The time_created of this Policy.
Return type:datetime
version_date

Gets the version_date of this Policy. The version of the policy. If null or set to an empty string, when a request comes in for authorization, the policy will be evaluated according to the current behavior of the services at that moment. If set to a particular date (YYYY-MM-DD), the policy will be evaluated according to the behavior of the services on that date.

Returns:The version_date of this Policy.
Return type:datetime