mirror of
https://github.com/prowler-cloud/prowler.git
synced 2026-07-24 21:11:53 +00:00
chore(oci): rename OCI provider to oraclecloud with oci alias (#9126)
This commit is contained in:
@@ -22,13 +22,13 @@ class Migration(migrations.Migration):
|
||||
("kubernetes", "Kubernetes"),
|
||||
("m365", "M365"),
|
||||
("github", "GitHub"),
|
||||
("oci", "Oracle Cloud Infrastructure"),
|
||||
("oraclecloud", "Oracle Cloud Infrastructure"),
|
||||
],
|
||||
default="aws",
|
||||
),
|
||||
),
|
||||
migrations.RunSQL(
|
||||
"ALTER TYPE provider ADD VALUE IF NOT EXISTS 'oci';",
|
||||
"ALTER TYPE provider ADD VALUE IF NOT EXISTS 'oraclecloud';",
|
||||
reverse_sql=migrations.RunSQL.noop,
|
||||
),
|
||||
]
|
||||
|
||||
@@ -285,7 +285,7 @@ class Provider(RowLevelSecurityProtectedModel):
|
||||
M365 = "m365", _("M365")
|
||||
GITHUB = "github", _("GitHub")
|
||||
IAC = "iac", _("IaC")
|
||||
OCI = "oci", _("Oracle Cloud Infrastructure")
|
||||
ORACLECLOUD = "oraclecloud", _("Oracle Cloud Infrastructure")
|
||||
|
||||
@staticmethod
|
||||
def validate_aws_uid(value):
|
||||
@@ -370,14 +370,14 @@ class Provider(RowLevelSecurityProtectedModel):
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
def validate_oci_uid(value):
|
||||
def validate_oraclecloud_uid(value):
|
||||
if not re.match(
|
||||
r"^ocid1\.([a-z0-9_-]+)\.([a-z0-9_-]+)\.([a-z0-9_-]*)\.([a-z0-9]+)$", value
|
||||
):
|
||||
raise ModelValidationError(
|
||||
detail="Oracle Cloud Infrastructure provider ID must be a valid tenancy OCID in the format: "
|
||||
"ocid1.<resource_type>.<realm>.<region>.<unique_id>",
|
||||
code="oci-uid",
|
||||
code="oraclecloud-uid",
|
||||
pointer="/data/attributes/uid",
|
||||
)
|
||||
|
||||
|
||||
@@ -869,7 +869,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -878,7 +878,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -887,14 +887,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -902,7 +902,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -913,7 +913,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -1403,7 +1403,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -1412,7 +1412,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -1421,14 +1421,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -1436,7 +1436,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -1447,7 +1447,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -1845,7 +1845,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -1854,7 +1854,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -1863,14 +1863,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -1878,7 +1878,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -1889,7 +1889,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -2285,7 +2285,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -2294,7 +2294,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -2303,14 +2303,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -2318,7 +2318,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -2329,7 +2329,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -2713,7 +2713,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -2722,7 +2722,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -2731,14 +2731,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -2746,7 +2746,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -2757,7 +2757,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -4545,7 +4545,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -4554,7 +4554,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -4563,14 +4563,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -4578,7 +4578,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -4589,7 +4589,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -4729,7 +4729,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -4738,7 +4738,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -4747,14 +4747,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -4762,7 +4762,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -4773,7 +4773,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -4979,7 +4979,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -4988,7 +4988,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -4997,14 +4997,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -5012,7 +5012,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -5023,7 +5023,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -5709,7 +5709,7 @@ paths:
|
||||
name: filter[provider]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -5718,7 +5718,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -5727,14 +5727,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -5742,7 +5742,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -5752,14 +5752,14 @@ paths:
|
||||
* `kubernetes` - Kubernetes
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -5767,7 +5767,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -5775,14 +5775,14 @@ paths:
|
||||
* `kubernetes` - Kubernetes
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -5790,7 +5790,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -5800,7 +5800,7 @@ paths:
|
||||
* `kubernetes` - Kubernetes
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- name: filter[search]
|
||||
@@ -6398,7 +6398,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -6407,7 +6407,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -6416,14 +6416,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -6431,7 +6431,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -6442,7 +6442,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -6770,7 +6770,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -6779,7 +6779,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -6788,14 +6788,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -6803,7 +6803,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -6814,7 +6814,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -7043,7 +7043,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -7052,7 +7052,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -7061,14 +7061,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -7076,7 +7076,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -7087,7 +7087,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -7322,7 +7322,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -7331,7 +7331,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -7340,14 +7340,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -7355,7 +7355,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -7366,7 +7366,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -8164,7 +8164,7 @@ paths:
|
||||
name: filter[provider_type]
|
||||
schema:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -8173,7 +8173,7 @@ paths:
|
||||
- iac
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
* `azure` - Azure
|
||||
@@ -8182,14 +8182,14 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
- in: query
|
||||
name: filter[provider_type__in]
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
enum:
|
||||
- aws
|
||||
- azure
|
||||
@@ -8197,7 +8197,7 @@ paths:
|
||||
- github
|
||||
- kubernetes
|
||||
- m365
|
||||
- oci
|
||||
- oraclecloud
|
||||
description: |-
|
||||
Multiple values may be separated by commas.
|
||||
|
||||
@@ -8208,7 +8208,7 @@ paths:
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `iac` - IaC
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
explode: false
|
||||
style: form
|
||||
- in: query
|
||||
@@ -15280,7 +15280,7 @@ components:
|
||||
- kubernetes
|
||||
- m365
|
||||
- github
|
||||
- oci
|
||||
- oraclecloud
|
||||
type: string
|
||||
description: |-
|
||||
* `aws` - AWS
|
||||
@@ -15289,8 +15289,8 @@ components:
|
||||
* `kubernetes` - Kubernetes
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
uid:
|
||||
type: string
|
||||
title: Unique identifier for the provider, set by the provider
|
||||
@@ -15402,9 +15402,9 @@ components:
|
||||
- kubernetes
|
||||
- m365
|
||||
- github
|
||||
- oci
|
||||
- oraclecloud
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
description: |-
|
||||
Type of provider to create.
|
||||
|
||||
@@ -15414,7 +15414,7 @@ components:
|
||||
* `kubernetes` - Kubernetes
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
uid:
|
||||
type: string
|
||||
title: Unique identifier for the provider, set by the provider
|
||||
@@ -15458,9 +15458,9 @@ components:
|
||||
- kubernetes
|
||||
- m365
|
||||
- github
|
||||
- oci
|
||||
- oraclecloud
|
||||
type: string
|
||||
x-spec-enum-id: 6f034074d7104650
|
||||
x-spec-enum-id: 7087703783970b51
|
||||
description: |-
|
||||
Type of provider to create.
|
||||
|
||||
@@ -15470,7 +15470,7 @@ components:
|
||||
* `kubernetes` - Kubernetes
|
||||
* `m365` - M365
|
||||
* `github` - GitHub
|
||||
* `oci` - Oracle Cloud Infrastructure
|
||||
* `oraclecloud` - Oracle Cloud Infrastructure
|
||||
uid:
|
||||
type: string
|
||||
minLength: 3
|
||||
|
||||
@@ -22,7 +22,7 @@ from prowler.providers.azure.azure_provider import AzureProvider
|
||||
from prowler.providers.gcp.gcp_provider import GcpProvider
|
||||
from prowler.providers.kubernetes.kubernetes_provider import KubernetesProvider
|
||||
from prowler.providers.m365.m365_provider import M365Provider
|
||||
from prowler.providers.oraclecloud.oci_provider import OciProvider
|
||||
from prowler.providers.oraclecloud.oraclecloud_provider import OraclecloudProvider
|
||||
|
||||
|
||||
class TestMergeDicts:
|
||||
@@ -109,7 +109,7 @@ class TestReturnProwlerProvider:
|
||||
(Provider.ProviderChoices.AZURE.value, AzureProvider),
|
||||
(Provider.ProviderChoices.KUBERNETES.value, KubernetesProvider),
|
||||
(Provider.ProviderChoices.M365.value, M365Provider),
|
||||
(Provider.ProviderChoices.OCI.value, OciProvider),
|
||||
(Provider.ProviderChoices.ORACLECLOUD.value, OraclecloudProvider),
|
||||
],
|
||||
)
|
||||
def test_return_prowler_provider(self, provider_type, expected_provider):
|
||||
@@ -206,7 +206,7 @@ class TestGetProwlerProviderKwargs:
|
||||
{"organizations": ["provider_uid"]},
|
||||
),
|
||||
(
|
||||
Provider.ProviderChoices.OCI.value,
|
||||
Provider.ProviderChoices.ORACLECLOUD.value,
|
||||
{},
|
||||
),
|
||||
],
|
||||
|
||||
@@ -2022,7 +2022,7 @@ class TestProviderSecretViewSet:
|
||||
),
|
||||
# OCI with API key credentials (with key_content)
|
||||
(
|
||||
Provider.ProviderChoices.OCI.value,
|
||||
Provider.ProviderChoices.ORACLECLOUD.value,
|
||||
ProviderSecret.TypeChoices.STATIC,
|
||||
{
|
||||
"user": "ocid1.user.oc1..aaaaaaaakldibrbov4ubh25aqdeiroklxjngwka7u6w7no3glmdq3n5sxtkq",
|
||||
@@ -2034,7 +2034,7 @@ class TestProviderSecretViewSet:
|
||||
),
|
||||
# OCI with API key credentials (with key_file)
|
||||
(
|
||||
Provider.ProviderChoices.OCI.value,
|
||||
Provider.ProviderChoices.ORACLECLOUD.value,
|
||||
ProviderSecret.TypeChoices.STATIC,
|
||||
{
|
||||
"user": "ocid1.user.oc1..aaaaaaaakldibrbov4ubh25aqdeiroklxjngwka7u6w7no3glmdq3n5sxtkq",
|
||||
@@ -2046,7 +2046,7 @@ class TestProviderSecretViewSet:
|
||||
),
|
||||
# OCI with API key credentials (with passphrase)
|
||||
(
|
||||
Provider.ProviderChoices.OCI.value,
|
||||
Provider.ProviderChoices.ORACLECLOUD.value,
|
||||
ProviderSecret.TypeChoices.STATIC,
|
||||
{
|
||||
"user": "ocid1.user.oc1..aaaaaaaakldibrbov4ubh25aqdeiroklxjngwka7u6w7no3glmdq3n5sxtkq",
|
||||
|
||||
@@ -21,7 +21,7 @@ from prowler.providers.github.github_provider import GithubProvider
|
||||
from prowler.providers.iac.iac_provider import IacProvider
|
||||
from prowler.providers.kubernetes.kubernetes_provider import KubernetesProvider
|
||||
from prowler.providers.m365.m365_provider import M365Provider
|
||||
from prowler.providers.oraclecloud.oci_provider import OciProvider
|
||||
from prowler.providers.oraclecloud.oraclecloud_provider import OraclecloudProvider
|
||||
|
||||
|
||||
class CustomOAuth2Client(OAuth2Client):
|
||||
@@ -70,7 +70,7 @@ def return_prowler_provider(
|
||||
| IacProvider
|
||||
| KubernetesProvider
|
||||
| M365Provider
|
||||
| OciProvider
|
||||
| OraclecloudProvider
|
||||
]:
|
||||
"""Return the Prowler provider class based on the given provider type.
|
||||
|
||||
@@ -78,7 +78,7 @@ def return_prowler_provider(
|
||||
provider (Provider): The provider object containing the provider type and associated secrets.
|
||||
|
||||
Returns:
|
||||
AwsProvider | AzureProvider | GcpProvider | GithubProvider | IacProvider | KubernetesProvider | M365Provider | OciProvider: The corresponding provider class.
|
||||
AwsProvider | AzureProvider | GcpProvider | GithubProvider | IacProvider | KubernetesProvider | M365Provider | OraclecloudProvider: The corresponding provider class.
|
||||
|
||||
Raises:
|
||||
ValueError: If the provider type specified in `provider.provider` is not supported.
|
||||
@@ -98,8 +98,8 @@ def return_prowler_provider(
|
||||
prowler_provider = GithubProvider
|
||||
case Provider.ProviderChoices.IAC.value:
|
||||
prowler_provider = IacProvider
|
||||
case Provider.ProviderChoices.OCI.value:
|
||||
prowler_provider = OciProvider
|
||||
case Provider.ProviderChoices.ORACLECLOUD.value:
|
||||
prowler_provider = OraclecloudProvider
|
||||
case _:
|
||||
raise ValueError(f"Provider type {provider.provider} not supported")
|
||||
return prowler_provider
|
||||
@@ -166,7 +166,7 @@ def initialize_prowler_provider(
|
||||
| IacProvider
|
||||
| KubernetesProvider
|
||||
| M365Provider
|
||||
| OciProvider
|
||||
| OraclecloudProvider
|
||||
):
|
||||
"""Initialize a Prowler provider instance based on the given provider type.
|
||||
|
||||
@@ -176,7 +176,7 @@ def initialize_prowler_provider(
|
||||
|
||||
Returns:
|
||||
AwsProvider | AzureProvider | GcpProvider | GithubProvider | IacProvider | KubernetesProvider | M365Provider | OciProvider: An instance of the corresponding provider class
|
||||
(`AwsProvider`, `AzureProvider`, `GcpProvider`, `GithubProvider`, `IacProvider`, `KubernetesProvider`, `M365Provider` or `OciProvider`) initialized with the
|
||||
(`AwsProvider`, `AzureProvider`, `GcpProvider`, `GithubProvider`, `IacProvider`, `KubernetesProvider`, `M365Provider` or `OraclecloudProvider`) initialized with the
|
||||
provider's secrets.
|
||||
"""
|
||||
prowler_provider = return_prowler_provider(provider)
|
||||
|
||||
@@ -1368,7 +1368,7 @@ class BaseWriteProviderSecretSerializer(BaseWriteSerializer):
|
||||
serializer = KubernetesProviderSecret(data=secret)
|
||||
elif provider_type == Provider.ProviderChoices.M365.value:
|
||||
serializer = M365ProviderSecret(data=secret)
|
||||
elif provider_type == Provider.ProviderChoices.OCI.value:
|
||||
elif provider_type == Provider.ProviderChoices.ORACLECLOUD.value:
|
||||
serializer = OracleCloudProviderSecret(data=secret)
|
||||
else:
|
||||
raise serializers.ValidationError(
|
||||
|
||||
@@ -501,7 +501,7 @@ def providers_fixture(tenants_fixture):
|
||||
tenant_id=tenant.id,
|
||||
)
|
||||
provider7 = Provider.objects.create(
|
||||
provider="oci",
|
||||
provider="oraclecloud",
|
||||
uid="ocid1.tenancy.oc1..aaaaaaaa3dwoazoox4q7wrvriywpokp5grlhgnkwtyt6dmwyou7no6mdmzda",
|
||||
alias="oci_testing",
|
||||
tenant_id=tenant.id,
|
||||
|
||||
@@ -32,7 +32,7 @@ from prowler.lib.outputs.compliance.cis.cis_gcp import GCPCIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_github import GithubCIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_kubernetes import KubernetesCIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_m365 import M365CIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_oci import OCICIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_oraclecloud import OracleCloudCIS
|
||||
from prowler.lib.outputs.compliance.ens.ens_aws import AWSENS
|
||||
from prowler.lib.outputs.compliance.ens.ens_azure import AzureENS
|
||||
from prowler.lib.outputs.compliance.ens.ens_gcp import GCPENS
|
||||
@@ -117,8 +117,8 @@ COMPLIANCE_CLASS_MAP = {
|
||||
# IaC provider doesn't have specific compliance frameworks yet
|
||||
# Trivy handles its own compliance checks
|
||||
],
|
||||
"oci": [
|
||||
(lambda name: name.startswith("cis_"), OCICIS),
|
||||
"oraclecloud": [
|
||||
(lambda name: name.startswith("cis_"), OracleCloudCIS),
|
||||
],
|
||||
}
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ All notable changes to the **Prowler SDK** are documented in this file.
|
||||
- Update AWS FSx service metadata to new format [(#9006)](https://github.com/prowler-cloud/prowler/pull/9006)
|
||||
- Update AWS Glacier service metadata to new format [(#9007)](https://github.com/prowler-cloud/prowler/pull/9007)
|
||||
- Update AWS CodeArtifact service metadata to new format [(#8850)](https://github.com/prowler-cloud/prowler/pull/8850)
|
||||
- Rename OCI provider to oraclecloud with oci alias [(#9126)](https://github.com/prowler-cloud/prowler/pull/9126)
|
||||
|
||||
---
|
||||
|
||||
|
||||
+4
-4
@@ -61,7 +61,7 @@ from prowler.lib.outputs.compliance.cis.cis_gcp import GCPCIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_github import GithubCIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_kubernetes import KubernetesCIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_m365 import M365CIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_oci import OCICIS
|
||||
from prowler.lib.outputs.compliance.cis.cis_oraclecloud import OracleCloudCIS
|
||||
from prowler.lib.outputs.compliance.compliance import display_compliance_table
|
||||
from prowler.lib.outputs.compliance.ens.ens_aws import AWSENS
|
||||
from prowler.lib.outputs.compliance.ens.ens_azure import AzureENS
|
||||
@@ -334,7 +334,7 @@ def prowler():
|
||||
output_options = IACOutputOptions(args, bulk_checks_metadata)
|
||||
elif provider == "llm":
|
||||
output_options = LLMOutputOptions(args, bulk_checks_metadata)
|
||||
elif provider == "oci":
|
||||
elif provider == "oraclecloud":
|
||||
output_options = OCIOutputOptions(
|
||||
args, bulk_checks_metadata, global_provider.identity
|
||||
)
|
||||
@@ -969,7 +969,7 @@ def prowler():
|
||||
generated_outputs["compliance"].append(generic_compliance)
|
||||
generic_compliance.batch_write_data_to_file()
|
||||
|
||||
elif provider == "oci":
|
||||
elif provider == "oraclecloud":
|
||||
for compliance_name in input_compliance_frameworks:
|
||||
if compliance_name.startswith("cis_"):
|
||||
# Generate CIS Finding Object
|
||||
@@ -977,7 +977,7 @@ def prowler():
|
||||
f"{output_options.output_directory}/compliance/"
|
||||
f"{output_options.output_filename}_{compliance_name}.csv"
|
||||
)
|
||||
cis = OCICIS(
|
||||
cis = OracleCloudCIS(
|
||||
findings=finding_outputs,
|
||||
compliance=bulk_compliance_frameworks[compliance_name],
|
||||
file_path=filename,
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@
|
||||
"Framework": "CIS",
|
||||
"Name": "CIS Oracle Cloud Infrastructure Foundations Benchmark v3.0.0",
|
||||
"Version": "3.0",
|
||||
"Provider": "OCI",
|
||||
"Provider": "OracleCloud",
|
||||
"Description": "The CIS Oracle Cloud Infrastructure Foundations Benchmark provides prescriptive guidance for configuring security options for Oracle Cloud Infrastructure with an emphasis on foundational, testable, and architecture agnostic settings.",
|
||||
"Requirements": [
|
||||
{
|
||||
@@ -33,7 +33,7 @@ class Provider(str, Enum):
|
||||
IAC = "iac"
|
||||
NHN = "nhn"
|
||||
MONGODBATLAS = "mongodbatlas"
|
||||
OCI = "oci"
|
||||
ORACLECLOUD = "oraclecloud"
|
||||
|
||||
|
||||
# Compliance
|
||||
|
||||
@@ -438,16 +438,8 @@ def execute_checks(
|
||||
service = check_name.split("_")[0]
|
||||
try:
|
||||
try:
|
||||
# Map CLI provider names to directory names (for cases where they differ)
|
||||
provider_directory_map = {
|
||||
"oci": "oraclecloud", # OCI SDK conflict avoidance
|
||||
}
|
||||
provider_directory = provider_directory_map.get(
|
||||
global_provider.type, global_provider.type
|
||||
)
|
||||
|
||||
# Import check module
|
||||
check_module_path = f"prowler.providers.{provider_directory}.services.{service}.{check_name}.{check_name}"
|
||||
check_module_path = f"prowler.providers.{global_provider.type}.services.{service}.{check_name}.{check_name}"
|
||||
lib = import_check(check_module_path)
|
||||
# Recover functions from check
|
||||
check_to_execute = getattr(lib, check_name)
|
||||
@@ -526,16 +518,8 @@ def execute_checks(
|
||||
)
|
||||
try:
|
||||
try:
|
||||
# Map CLI provider names to directory names (for cases where they differ)
|
||||
provider_directory_map = {
|
||||
"oci": "oraclecloud", # oci SDK conflict avoidance
|
||||
}
|
||||
provider_directory = provider_directory_map.get(
|
||||
global_provider.type, global_provider.type
|
||||
)
|
||||
|
||||
# Import check module
|
||||
check_module_path = f"prowler.providers.{provider_directory}.services.{service}.{check_name}.{check_name}"
|
||||
check_module_path = f"prowler.providers.{global_provider.type}.services.{service}.{check_name}.{check_name}"
|
||||
lib = import_check(check_module_path)
|
||||
# Recover functions from check
|
||||
check_to_execute = getattr(lib, check_name)
|
||||
|
||||
@@ -46,14 +46,8 @@ def recover_checks_from_provider(
|
||||
|
||||
# List all available modules in the selected provider and service
|
||||
def list_modules(provider: str, service: str):
|
||||
# Map CLI provider names to directory names (for cases where they differ)
|
||||
provider_directory_map = {
|
||||
"oci": "oraclecloud", # OCI SDK conflict avoidance
|
||||
}
|
||||
provider_directory = provider_directory_map.get(provider, provider)
|
||||
|
||||
# This module path requires the full path including "prowler."
|
||||
module_path = f"prowler.providers.{provider_directory}.services"
|
||||
module_path = f"prowler.providers.{provider}.services"
|
||||
if service:
|
||||
module_path += f".{service}"
|
||||
return walk_packages(
|
||||
|
||||
@@ -26,17 +26,17 @@ class ProwlerArgumentParser:
|
||||
self.parser = argparse.ArgumentParser(
|
||||
prog="prowler",
|
||||
formatter_class=RawTextHelpFormatter,
|
||||
usage="prowler [-h] [--version] {aws,azure,gcp,kubernetes,m365,github,nhn,mongodbatlas,oci,dashboard,iac} ...",
|
||||
usage="prowler [-h] [--version] {aws,azure,gcp,kubernetes,m365,github,nhn,mongodbatlas,oraclecloud,dashboard,iac} ...",
|
||||
epilog="""
|
||||
Available Cloud Providers:
|
||||
{aws,azure,gcp,kubernetes,m365,github,iac,llm,nhn,mongodbatlas,oci}
|
||||
{aws,azure,gcp,kubernetes,m365,github,iac,llm,nhn,mongodbatlas,oraclecloud}
|
||||
aws AWS Provider
|
||||
azure Azure Provider
|
||||
gcp GCP Provider
|
||||
kubernetes Kubernetes Provider
|
||||
m365 Microsoft 365 Provider
|
||||
github GitHub Provider
|
||||
oci Oracle Cloud Infrastructure Provider
|
||||
oraclecloud Oracle Cloud Infrastructure Provider
|
||||
iac IaC Provider (Beta)
|
||||
llm LLM Provider (Beta)
|
||||
nhn NHN Provider (Unofficial)
|
||||
@@ -113,6 +113,9 @@ Detailed documentation at https://docs.prowler.com
|
||||
# Microsoft 365
|
||||
elif sys.argv[1] == "microsoft365":
|
||||
sys.argv[1] = "m365"
|
||||
# Oracle Cloud Infrastructure
|
||||
elif sys.argv[1] == "oci":
|
||||
sys.argv[1] = "oraclecloud"
|
||||
|
||||
# Parse arguments
|
||||
args = self.parser.parse_args()
|
||||
|
||||
+7
-7
@@ -1,20 +1,20 @@
|
||||
from prowler.config.config import timestamp
|
||||
from prowler.lib.check.compliance_models import Compliance
|
||||
from prowler.lib.outputs.compliance.cis.models import OCICISModel
|
||||
from prowler.lib.outputs.compliance.cis.models import OracleCloudCISModel
|
||||
from prowler.lib.outputs.compliance.compliance_output import ComplianceOutput
|
||||
from prowler.lib.outputs.finding import Finding
|
||||
|
||||
|
||||
class OCICIS(ComplianceOutput):
|
||||
class OracleCloudCIS(ComplianceOutput):
|
||||
"""
|
||||
This class represents the OCI CIS compliance output.
|
||||
This class represents the Oracle Cloud CIS compliance output.
|
||||
|
||||
Attributes:
|
||||
- _data (list): A list to store transformed data from findings.
|
||||
- _file_descriptor (TextIOWrapper): A file descriptor to write data to a file.
|
||||
|
||||
Methods:
|
||||
- transform: Transforms findings into OCI CIS compliance format.
|
||||
- transform: Transforms findings into Oracle Cloud CIS compliance format.
|
||||
"""
|
||||
|
||||
def transform(
|
||||
@@ -24,7 +24,7 @@ class OCICIS(ComplianceOutput):
|
||||
compliance_name: str,
|
||||
) -> None:
|
||||
"""
|
||||
Transforms a list of findings into OCI CIS compliance format.
|
||||
Transforms a list of findings into Oracle Cloud CIS compliance format.
|
||||
|
||||
Parameters:
|
||||
- findings (list): A list of findings.
|
||||
@@ -40,7 +40,7 @@ class OCICIS(ComplianceOutput):
|
||||
for requirement in compliance.Requirements:
|
||||
if requirement.Id in finding_requirements:
|
||||
for attribute in requirement.Attributes:
|
||||
compliance_row = OCICISModel(
|
||||
compliance_row = OracleCloudCISModel(
|
||||
Provider=finding.provider,
|
||||
Description=compliance.Description,
|
||||
TenancyId=finding.account_uid,
|
||||
@@ -74,7 +74,7 @@ class OCICIS(ComplianceOutput):
|
||||
for requirement in compliance.Requirements:
|
||||
if not requirement.Checks:
|
||||
for attribute in requirement.Attributes:
|
||||
compliance_row = OCICISModel(
|
||||
compliance_row = OracleCloudCISModel(
|
||||
Provider=compliance.Provider.lower(),
|
||||
Description=compliance.Description,
|
||||
TenancyId="",
|
||||
@@ -207,9 +207,9 @@ class GithubCISModel(BaseModel):
|
||||
Name: str
|
||||
|
||||
|
||||
class OCICISModel(BaseModel):
|
||||
class OracleCloudCISModel(BaseModel):
|
||||
"""
|
||||
OCICISModel generates a finding's output in OCI CIS Compliance format.
|
||||
OracleCloudCISModel generates a finding's output in Oracle Cloud CIS Compliance format.
|
||||
"""
|
||||
|
||||
Provider: str
|
||||
@@ -248,7 +248,7 @@ CIS_GCP = GCPCISModel
|
||||
CIS_Kubernetes = KubernetesCISModel
|
||||
CIS_M365 = M365CISModel
|
||||
CIS_Github = GithubCISModel
|
||||
CIS_OCI = OCICISModel
|
||||
CIS_OracleCloud = OracleCloudCISModel
|
||||
|
||||
|
||||
# TODO: Create a parent class for the common fields of CIS and have the specific classes from each provider to inherit from it.
|
||||
|
||||
@@ -330,7 +330,7 @@ class Finding(BaseModel):
|
||||
output_data["resource_uid"] = check_output.model
|
||||
output_data["region"] = check_output.model
|
||||
|
||||
elif provider.type == "oci":
|
||||
elif provider.type == "oraclecloud":
|
||||
output_data["auth_method"] = (
|
||||
f"Profile: {get_nested_attribute(provider, 'session.profile')}"
|
||||
)
|
||||
@@ -418,7 +418,7 @@ class Finding(BaseModel):
|
||||
# For IaC, we don't have resource_line_range in the Finding model
|
||||
# It would need to be extracted from the resource metadata if needed
|
||||
finding.resource_line_range = "" # Set empty for compatibility
|
||||
elif provider.type == "oci":
|
||||
elif provider.type == "oraclecloud":
|
||||
finding.compartment_id = getattr(finding, "compartment_id", "")
|
||||
|
||||
finding.check_metadata = CheckMetadata(
|
||||
|
||||
@@ -28,7 +28,7 @@ def stdout_report(finding, color, verbose, status, fix):
|
||||
details = finding.check_metadata.CheckID
|
||||
if finding.check_metadata.Provider == "iac":
|
||||
details = finding.check_metadata.CheckID
|
||||
if finding.check_metadata.Provider == "oci":
|
||||
if finding.check_metadata.Provider == "oraclecloud":
|
||||
details = finding.region
|
||||
|
||||
if (verbose or fix) and (not status or finding.status in status):
|
||||
|
||||
@@ -67,7 +67,7 @@ def display_summary_table(
|
||||
elif provider.type == "llm":
|
||||
entity_type = "LLM"
|
||||
audited_entities = provider.model
|
||||
elif provider.type == "oci":
|
||||
elif provider.type == "oraclecloud":
|
||||
entity_type = "Tenancy"
|
||||
audited_entities = (
|
||||
provider.identity.tenancy_name
|
||||
|
||||
@@ -351,16 +351,8 @@ class Scan:
|
||||
# Recover service from check name
|
||||
service = get_service_name_from_check_name(check_name)
|
||||
try:
|
||||
# Map CLI provider names to directory names (for cases where they differ)
|
||||
provider_directory_map = {
|
||||
"oci": "oraclecloud", # OCI SDK conflict avoidance
|
||||
}
|
||||
provider_directory = provider_directory_map.get(
|
||||
self._provider.type, self._provider.type
|
||||
)
|
||||
|
||||
# Import check module
|
||||
check_module_path = f"prowler.providers.{provider_directory}.services.{service}.{check_name}.{check_name}"
|
||||
check_module_path = f"prowler.providers.{self._provider.type}.services.{service}.{check_name}.{check_name}"
|
||||
lib = import_check(check_module_path)
|
||||
# Recover functions from check
|
||||
check_to_execute = getattr(lib, check_name)
|
||||
|
||||
@@ -16,15 +16,9 @@ def init_providers_parser(self):
|
||||
providers = Provider.get_available_providers()
|
||||
for provider in providers:
|
||||
try:
|
||||
# Map CLI provider names to directory names (for cases where they differ)
|
||||
provider_directory_map = {
|
||||
"oci": "oraclecloud", # OCI SDK conflict avoidance
|
||||
}
|
||||
provider_directory = provider_directory_map.get(provider, provider)
|
||||
|
||||
getattr(
|
||||
import_module(
|
||||
f"{providers_path}.{provider_directory}.{provider_arguments_lib_path}"
|
||||
f"{providers_path}.{provider}.{provider_arguments_lib_path}"
|
||||
),
|
||||
init_provider_arguments_function,
|
||||
)(self)
|
||||
@@ -38,18 +32,10 @@ def init_providers_parser(self):
|
||||
def validate_provider_arguments(arguments: Namespace) -> tuple[bool, str]:
|
||||
"""validate_provider_arguments returns {True, "} if the provider arguments passed are valid and can be used together"""
|
||||
try:
|
||||
# Map CLI provider names to directory names (for cases where they differ)
|
||||
provider_directory_map = {
|
||||
"oci": "oraclecloud", # OCI SDK conflict avoidance
|
||||
}
|
||||
provider_directory = provider_directory_map.get(
|
||||
arguments.provider, arguments.provider
|
||||
)
|
||||
|
||||
# Provider function must be located at prowler.providers.<provider>.lib.arguments.arguments.validate_arguments
|
||||
return getattr(
|
||||
import_module(
|
||||
f"{providers_path}.{provider_directory}.{provider_arguments_lib_path}"
|
||||
f"{providers_path}.{arguments.provider}.{provider_arguments_lib_path}"
|
||||
),
|
||||
validate_provider_arguments_function,
|
||||
)(arguments)
|
||||
|
||||
@@ -146,24 +146,8 @@ class Provider(ABC):
|
||||
@staticmethod
|
||||
def init_global_provider(arguments: Namespace) -> None:
|
||||
try:
|
||||
# Map CLI provider names to directory names (for cases where they differ)
|
||||
provider_directory_map = {
|
||||
"oci": "oraclecloud", # oci SDK conflict avoidance
|
||||
}
|
||||
# Map CLI provider names to provider file names (for cases where they differ)
|
||||
provider_file_map = {
|
||||
"oci": "oci", # oraclecloud directory but oci_provider.py file
|
||||
}
|
||||
|
||||
provider_directory = provider_directory_map.get(
|
||||
arguments.provider, arguments.provider
|
||||
)
|
||||
provider_file = provider_file_map.get(
|
||||
arguments.provider, arguments.provider
|
||||
)
|
||||
|
||||
provider_class_path = (
|
||||
f"{providers_path}.{provider_directory}.{provider_file}_provider"
|
||||
f"{providers_path}.{arguments.provider}.{arguments.provider}_provider"
|
||||
)
|
||||
provider_class_name = f"{arguments.provider.capitalize()}Provider"
|
||||
provider_class = getattr(
|
||||
@@ -291,7 +275,7 @@ class Provider(ABC):
|
||||
mutelist_path=arguments.mutelist_file,
|
||||
fixer_config=fixer_config,
|
||||
)
|
||||
elif "oci" in provider_class_name.lower():
|
||||
elif "oraclecloud" in provider_class_name.lower():
|
||||
provider_class(
|
||||
oci_config_file=arguments.oci_config_file,
|
||||
profile=arguments.profile,
|
||||
|
||||
@@ -5,9 +5,11 @@ from prowler.providers.oraclecloud.config import OCI_DEFAULT_CONFIG_FILE, OCI_RE
|
||||
|
||||
|
||||
def init_parser(self):
|
||||
"""Init the OCI Provider CLI parser"""
|
||||
"""Init the Oracle Cloud Infrastructure Provider CLI parser"""
|
||||
oci_parser = self.subparsers.add_parser(
|
||||
"oci", parents=[self.common_providers_parser], help="OCI Provider"
|
||||
"oraclecloud",
|
||||
parents=[self.common_providers_parser],
|
||||
help="Oracle Cloud Infrastructure Provider",
|
||||
)
|
||||
|
||||
# Config File Authentication Options
|
||||
@@ -109,15 +111,4 @@ def validate_arguments(arguments: Namespace) -> tuple[bool, str]:
|
||||
"Cannot use --use-instance-principal with --oci-config-file or --profile options",
|
||||
)
|
||||
|
||||
# # Validate compartment OCIDs if provided
|
||||
# if arguments.compartment_id:
|
||||
# for compartment_id in arguments.compartment_id:
|
||||
# if not OciProvider.validate_ocid(compartment_id, "compartment"):
|
||||
# # Check if it's a tenancy OCID (root compartment)
|
||||
# if not OciProvider.validate_ocid(compartment_id, "tenancy"):
|
||||
# return (
|
||||
# False,
|
||||
# f"Invalid compartment OCID: {compartment_id}",
|
||||
# )
|
||||
|
||||
return (True, "")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
from concurrent.futures import ThreadPoolExecutor, as_completed
|
||||
|
||||
from prowler.lib.logger import logger
|
||||
from prowler.providers.oraclecloud.oci_provider import OciProvider
|
||||
from prowler.providers.oraclecloud.oraclecloud_provider import OraclecloudProvider
|
||||
|
||||
MAX_WORKERS = 10
|
||||
|
||||
@@ -16,13 +16,13 @@ class OCIService:
|
||||
- Handles compartment traversal
|
||||
"""
|
||||
|
||||
def __init__(self, service: str, provider: OciProvider):
|
||||
def __init__(self, service: str, provider: OraclecloudProvider):
|
||||
"""
|
||||
Initialize the OCIService base class.
|
||||
|
||||
Args:
|
||||
service (str): The OCI service name (e.g., 'compute', 'object_storage').
|
||||
provider (OciProvider): The OCI provider instance.
|
||||
provider (OraclecloudProvider): The Oracle Cloud Infrastructure provider instance.
|
||||
"""
|
||||
# Audit Information
|
||||
self.provider = provider
|
||||
|
||||
+15
-15
@@ -40,9 +40,9 @@ from prowler.providers.oraclecloud.models import (
|
||||
)
|
||||
|
||||
|
||||
class OciProvider(Provider):
|
||||
class OraclecloudProvider(Provider):
|
||||
"""
|
||||
OciProvider class is the main class for the OCI provider.
|
||||
OraclecloudProvider class is the main class for the Oracle Cloud Infrastructure provider.
|
||||
|
||||
This class is responsible for initializing the OCI provider, setting up the OCI session,
|
||||
validating the OCI credentials, getting the OCI identity, and managing compartments and regions.
|
||||
@@ -58,7 +58,7 @@ class OciProvider(Provider):
|
||||
audit_metadata (Audit_Metadata): The audit metadata.
|
||||
"""
|
||||
|
||||
_type: str = "oci"
|
||||
_type: str = "oraclecloud"
|
||||
_identity: OCIIdentityInfo
|
||||
_session: OCISession
|
||||
_audit_config: dict
|
||||
@@ -118,11 +118,11 @@ class OciProvider(Provider):
|
||||
or
|
||||
- export OCI_CLI_AUTH=instance_principal (for instance principal)
|
||||
- To create a new OCI provider object:
|
||||
- oci = OciProvider()
|
||||
- oci = OciProvider(profile="profile_name")
|
||||
- oci = OciProvider(oci_config_file="/path/to/config")
|
||||
- oci = OciProvider(use_instance_principal=True)
|
||||
- oci = OciProvider(user="ocid1...", fingerprint="...", key_content="...", tenancy="ocid1...", region="us-ashburn-1")
|
||||
- oci = OraclecloudProvider()
|
||||
- oci = OraclecloudProvider(profile="profile_name")
|
||||
- oci = OraclecloudProvider(oci_config_file="/path/to/config")
|
||||
- oci = OraclecloudProvider(use_instance_principal=True)
|
||||
- oci = OraclecloudProvider(user="ocid1...", fingerprint="...", key_content="...", tenancy="ocid1...", region="us-ashburn-1")
|
||||
"""
|
||||
|
||||
logger.info("Initializing OCI provider ...")
|
||||
@@ -439,7 +439,7 @@ class OciProvider(Provider):
|
||||
)
|
||||
|
||||
# Validate tenancy OCID format
|
||||
if not OciProvider.validate_ocid(tenancy_id, "tenancy"):
|
||||
if not OraclecloudProvider.validate_ocid(tenancy_id, "tenancy"):
|
||||
raise OCIInvalidTenancyError(
|
||||
file=pathlib.Path(__file__).name,
|
||||
message=f"Invalid tenancy OCID format: {tenancy_id}",
|
||||
@@ -817,11 +817,11 @@ class OciProvider(Provider):
|
||||
Exception: If there is an unexpected error.
|
||||
|
||||
Examples:
|
||||
>>> OciProvider.test_connection(profile="DEFAULT", raise_on_exception=False)
|
||||
>>> OraclecloudProvider.test_connection(profile="DEFAULT", raise_on_exception=False)
|
||||
Connection(is_connected=True, Error=None)
|
||||
>>> OciProvider.test_connection(use_instance_principal=True, raise_on_exception=False)
|
||||
>>> OraclecloudProvider.test_connection(use_instance_principal=True, raise_on_exception=False)
|
||||
Connection(is_connected=True, Error=None)
|
||||
>>> OciProvider.test_connection(
|
||||
>>> OraclecloudProvider.test_connection(
|
||||
user="ocid1.user.oc1..aaaaaa...",
|
||||
fingerprint="12:34:56:78:...",
|
||||
key_content="base64_encoded_key",
|
||||
@@ -890,13 +890,13 @@ class OciProvider(Provider):
|
||||
session = OCISession(config=config, signer=None, profile=None)
|
||||
else:
|
||||
# Use traditional config file or instance principal authentication
|
||||
session = OciProvider.setup_session(
|
||||
session = OraclecloudProvider.setup_session(
|
||||
oci_config_file=oci_config_file,
|
||||
profile=profile,
|
||||
use_instance_principal=use_instance_principal,
|
||||
)
|
||||
|
||||
identity = OciProvider.set_identity(
|
||||
identity = OraclecloudProvider.set_identity(
|
||||
session=session,
|
||||
region=region,
|
||||
)
|
||||
@@ -1032,7 +1032,7 @@ class OciProvider(Provider):
|
||||
set: A set of region names.
|
||||
|
||||
Example:
|
||||
>>> OciProvider.get_regions()
|
||||
>>> OraclecloudProvider.get_regions()
|
||||
{"us-ashburn-1", "us-phoenix-1", ...}
|
||||
"""
|
||||
return set(OCI_REGIONS.keys())
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "analytics_instance_access_restricted",
|
||||
"CheckTitle": "Ensure Oracle Analytics Cloud (OAC) access is restricted to allowed sources or deployed within a Virtual Cloud Network",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "audit_log_retention_period_365_days",
|
||||
"CheckTitle": "Ensure audit log retention period is set to 365 days or greater",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "blockstorage_block_volume_encrypted_with_cmk",
|
||||
"CheckTitle": "Ensure Block Volumes are encrypted with Customer Managed Keys",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "blockstorage_boot_volume_encrypted_with_cmk",
|
||||
"CheckTitle": "Ensure Boot Volumes are encrypted with Customer Managed Key",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "cloudguard_enabled",
|
||||
"CheckTitle": "Ensure Cloud Guard is enabled in the root compartment of the tenancy",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "compute_instance_in_transit_encryption_enabled",
|
||||
"CheckTitle": "Ensure In-transit Encryption is enabled on Compute Instance",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "compute_instance_legacy_metadata_endpoint_disabled",
|
||||
"CheckTitle": "Ensure Compute Instance Legacy Metadata service endpoint is disabled",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "compute_instance_secure_boot_enabled",
|
||||
"CheckTitle": "Ensure Secure Boot is enabled on Compute Instance",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "database_autonomous_database_access_restricted",
|
||||
"CheckTitle": "Ensure Oracle Autonomous Shared Database (ADB) access is restricted or deployed within a VCN",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_notification_topic_and_subscription_exists",
|
||||
"CheckTitle": "Create at least one notification topic and subscription to receive monitoring alerts",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_cloudguard_problems",
|
||||
"CheckTitle": "Ensure a notification is configured for Oracle Cloud Guard problems detected",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_iam_group_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for IAM group changes",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_iam_policy_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for IAM policy changes",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_identity_provider_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for Identity Provider changes",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_idp_group_mapping_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for IdP group mapping changes",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_local_user_authentication",
|
||||
"CheckTitle": "Ensure a notification is configured for Local OCI User Authentication",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_network_gateway_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for changes to network gateways",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_network_security_group_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for network security group changes",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_route_table_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for changes to route tables",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_security_list_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for security list changes",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_user_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for user changes",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "events_rule_vcn_changes",
|
||||
"CheckTitle": "Ensure a notification is configured for VCN changes",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "filestorage_file_system_encrypted_with_cmk",
|
||||
"CheckTitle": "Ensure File Storage Systems are encrypted with Customer Managed Keys",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_iam_admins_cannot_update_tenancy_admins",
|
||||
"CheckTitle": "Ensure IAM administrators cannot update tenancy Administrators group",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_instance_principal_used",
|
||||
"CheckTitle": "Ensure Instance Principal authentication is used for OCI instances, OCI Cloud Databases and OCI Functions to access OCI resources",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_no_resources_in_root_compartment",
|
||||
"CheckTitle": "Ensure no resources are created in the root compartment",
|
||||
"CheckType": [],
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_non_root_compartment_exists",
|
||||
"CheckTitle": "Create at least one non-root compartment in your tenancy to store cloud resources",
|
||||
"CheckType": [],
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_password_policy_expires_within_365_days",
|
||||
"CheckTitle": "Ensure IAM password policy expires passwords within 365 days",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_password_policy_minimum_length_14",
|
||||
"CheckTitle": "Ensure IAM password policy requires minimum length of 14 or greater",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_password_policy_prevents_reuse",
|
||||
"CheckTitle": "Ensure IAM password policy prevents password reuse",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_service_level_admins_exist",
|
||||
"CheckTitle": "Ensure service level admins are created to manage resources of particular service",
|
||||
"CheckType": [],
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_tenancy_admin_permissions_limited",
|
||||
"CheckTitle": "Ensure permissions on all resources are given only to the tenancy administrator group",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_tenancy_admin_users_no_api_keys",
|
||||
"CheckTitle": "Ensure API keys are not created for tenancy administrator users",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_user_api_keys_rotated_90_days",
|
||||
"CheckTitle": "Ensure user API keys rotate within 90 days or less",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_user_auth_tokens_rotated_90_days",
|
||||
"CheckTitle": "Ensure user auth tokens rotate within 90 days or less",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_user_customer_secret_keys_rotated_90_days",
|
||||
"CheckTitle": "Ensure user customer secret keys rotate within 90 days or less",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_user_db_passwords_rotated_90_days",
|
||||
"CheckTitle": "Ensure user IAM Database Passwords rotate within 90 days",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_user_mfa_enabled_console_access",
|
||||
"CheckTitle": "Ensure MFA is enabled for all users with a console password",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "identity_user_valid_email_address",
|
||||
"CheckTitle": "Ensure all OCI IAM user accounts have a valid and current email address",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "integration_instance_access_restricted",
|
||||
"CheckTitle": "Ensure Oracle Integration Cloud (OIC) access is restricted to allowed sources",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "kms_key_rotation_enabled",
|
||||
"CheckTitle": "Ensure customer created Customer Managed Key (CMK) is rotated at least annually",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "network_default_security_list_restricts_traffic",
|
||||
"CheckTitle": "Ensure the default security list of every VCN restricts all traffic except ICMP",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "network_security_group_ingress_from_internet_to_rdp_port",
|
||||
"CheckTitle": "Ensure no network security groups allow ingress from 0.0.0.0/0 to port 3389",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "network_security_group_ingress_from_internet_to_ssh_port",
|
||||
"CheckTitle": "Ensure no network security groups allow ingress from 0.0.0.0/0 to port 22",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "network_security_list_ingress_from_internet_to_rdp_port",
|
||||
"CheckTitle": "Ensure no security lists allow ingress from 0.0.0.0/0 to port 3389",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "network_security_list_ingress_from_internet_to_ssh_port",
|
||||
"CheckTitle": "Ensure no security lists allow ingress from 0.0.0.0/0 to port 22",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "network_vcn_subnet_flow_logs_enabled",
|
||||
"CheckTitle": "Ensure VCN flow logging is enabled for all subnets",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "objectstorage_bucket_encrypted_with_cmk",
|
||||
"CheckTitle": "Ensure Object Storage Buckets are encrypted with a Customer Managed Key (CMK)",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "objectstorage_bucket_logging_enabled",
|
||||
"CheckTitle": "Ensure write level Object Storage logging is enabled for all buckets",
|
||||
"CheckType": [],
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "objectstorage_bucket_not_publicly_accessible",
|
||||
"CheckTitle": "Ensure no Object Storage buckets are publicly visible",
|
||||
"CheckType": [
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"Provider": "oci",
|
||||
"Provider": "oraclecloud",
|
||||
"CheckID": "objectstorage_bucket_versioning_enabled",
|
||||
"CheckTitle": "Ensure Versioning is Enabled for Object Storage Buckets",
|
||||
"CheckType": [
|
||||
|
||||
@@ -17,7 +17,7 @@ prowler_command = "prowler"
|
||||
|
||||
# capsys
|
||||
# https://docs.pytest.org/en/7.1.x/how-to/capture-stdout-stderr.html
|
||||
prowler_default_usage_error = "usage: prowler [-h] [--version] {aws,azure,gcp,kubernetes,m365,github,nhn,mongodbatlas,oci,dashboard,iac} ..."
|
||||
prowler_default_usage_error = "usage: prowler [-h] [--version] {aws,azure,gcp,kubernetes,m365,github,nhn,mongodbatlas,oraclecloud,dashboard,iac} ..."
|
||||
|
||||
|
||||
def mock_get_available_providers():
|
||||
@@ -31,7 +31,7 @@ def mock_get_available_providers():
|
||||
"iac",
|
||||
"nhn",
|
||||
"mongodbatlas",
|
||||
"oci",
|
||||
"oraclecloud",
|
||||
]
|
||||
|
||||
|
||||
|
||||
@@ -18,27 +18,27 @@ class MockOCIModule(MagicMock):
|
||||
return MagicMock()
|
||||
|
||||
|
||||
# Only mock if oci import fails (missing dependencies)
|
||||
# Only mock if oraclecloud import fails (missing dependencies)
|
||||
try:
|
||||
pass
|
||||
except (ImportError, ModuleNotFoundError):
|
||||
# Create mock OCI module
|
||||
mock_oci = MockOCIModule()
|
||||
sys.modules["oci"] = mock_oci
|
||||
sys.modules["oci.auth"] = mock_oci.auth
|
||||
sys.modules["oci.config"] = mock_oci.config
|
||||
sys.modules["oci.identity"] = mock_oci.identity
|
||||
sys.modules["oci.core"] = mock_oci.core
|
||||
sys.modules["oci.object_storage"] = mock_oci.object_storage
|
||||
sys.modules["oci.key_management"] = mock_oci.key_management
|
||||
sys.modules["oci.file_storage"] = mock_oci.file_storage
|
||||
sys.modules["oci.block_storage"] = mock_oci.block_storage
|
||||
sys.modules["oci.database"] = mock_oci.database
|
||||
sys.modules["oci.events"] = mock_oci.events
|
||||
sys.modules["oci.cloud_guard"] = mock_oci.cloud_guard
|
||||
sys.modules["oci.audit"] = mock_oci.audit
|
||||
sys.modules["oci.analytics"] = mock_oci.analytics
|
||||
sys.modules["oci.integration"] = mock_oci.integration
|
||||
sys.modules["oci.logging"] = mock_oci.logging
|
||||
sys.modules["oci.pagination"] = mock_oci.pagination
|
||||
sys.modules["oci.exceptions"] = mock_oci.exceptions
|
||||
sys.modules["oraclecloud"] = mock_oci
|
||||
sys.modules["oraclecloud.auth"] = mock_oci.auth
|
||||
sys.modules["oraclecloud.config"] = mock_oci.config
|
||||
sys.modules["oraclecloud.identity"] = mock_oci.identity
|
||||
sys.modules["oraclecloud.core"] = mock_oci.core
|
||||
sys.modules["oraclecloud.object_storage"] = mock_oci.object_storage
|
||||
sys.modules["oraclecloud.key_management"] = mock_oci.key_management
|
||||
sys.modules["oraclecloud.file_storage"] = mock_oci.file_storage
|
||||
sys.modules["oraclecloud.block_storage"] = mock_oci.block_storage
|
||||
sys.modules["oraclecloud.database"] = mock_oci.database
|
||||
sys.modules["oraclecloud.events"] = mock_oci.events
|
||||
sys.modules["oraclecloud.cloud_guard"] = mock_oci.cloud_guard
|
||||
sys.modules["oraclecloud.audit"] = mock_oci.audit
|
||||
sys.modules["oraclecloud.analytics"] = mock_oci.analytics
|
||||
sys.modules["oraclecloud.integration"] = mock_oci.integration
|
||||
sys.modules["oraclecloud.logging"] = mock_oci.logging
|
||||
sys.modules["oraclecloud.pagination"] = mock_oci.pagination
|
||||
sys.modules["oraclecloud.exceptions"] = mock_oci.exceptions
|
||||
|
||||
@@ -16,7 +16,7 @@ OCI_USER_ID = "ocid1.user.oc1..aaaaaaaexample"
|
||||
OCI_REGION = "us-ashburn-1"
|
||||
|
||||
|
||||
def set_mocked_oci_provider(
|
||||
def set_mocked_oraclecloud_provider(
|
||||
tenancy_id: str = OCI_TENANCY_ID,
|
||||
tenancy_name: str = OCI_TENANCY_NAME,
|
||||
user_id: str = OCI_USER_ID,
|
||||
@@ -24,7 +24,7 @@ def set_mocked_oci_provider(
|
||||
) -> MagicMock:
|
||||
"""Create a mocked OCI provider for testing"""
|
||||
provider = MagicMock()
|
||||
provider.type = "oci"
|
||||
provider.type = "oraclecloud"
|
||||
|
||||
# Mock session
|
||||
provider.session = OCISession(
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_analytics_instance_access_restricted:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.analytics.analytics_instance_access_restricted.analytics_instance_access_restricted.analytics_client",
|
||||
@@ -102,7 +102,7 @@ class Test_analytics_instance_access_restricted:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.analytics.analytics_instance_access_restricted.analytics_instance_access_restricted.analytics_client",
|
||||
@@ -136,7 +136,7 @@ class Test_analytics_instance_access_restricted:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "analytics_instance_access_restricted"
|
||||
@@ -187,7 +187,7 @@ class Test_analytics_instance_access_restricted:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.analytics.analytics_instance_access_restricted.analytics_instance_access_restricted.analytics_client",
|
||||
@@ -221,7 +221,7 @@ class Test_analytics_instance_access_restricted:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "analytics_instance_access_restricted"
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oci_provider
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oraclecloud_provider
|
||||
|
||||
|
||||
class TestAnalyticsService:
|
||||
def test_service(self):
|
||||
"""Test that analytics service can be instantiated and mocked"""
|
||||
oci_provider = set_mocked_oci_provider()
|
||||
oraclecloud_provider = set_mocked_oraclecloud_provider()
|
||||
|
||||
# Mock the entire service initialization
|
||||
with patch(
|
||||
@@ -17,14 +17,14 @@ class TestAnalyticsService:
|
||||
Analytics,
|
||||
)
|
||||
|
||||
analytics_client = Analytics(oci_provider)
|
||||
analytics_client = Analytics(oraclecloud_provider)
|
||||
|
||||
# Manually set required attributes since __init__ was mocked
|
||||
analytics_client.service = "analytics"
|
||||
analytics_client.provider = oci_provider
|
||||
analytics_client.provider = oraclecloud_provider
|
||||
analytics_client.audited_compartments = {}
|
||||
analytics_client.regional_clients = {}
|
||||
|
||||
# Verify service name
|
||||
assert analytics_client.service == "analytics"
|
||||
assert analytics_client.provider == oci_provider
|
||||
assert analytics_client.provider == oraclecloud_provider
|
||||
|
||||
+4
-4
@@ -3,7 +3,7 @@ from unittest import mock
|
||||
from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ class Test_audit_log_retention_period_365_days:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.audit.audit_log_retention_period_365_days.audit_log_retention_period_365_days.audit_client",
|
||||
@@ -51,7 +51,7 @@ class Test_audit_log_retention_period_365_days:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.audit.audit_log_retention_period_365_days.audit_log_retention_period_365_days.audit_client",
|
||||
@@ -84,7 +84,7 @@ class Test_audit_log_retention_period_365_days:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.audit.audit_log_retention_period_365_days.audit_log_retention_period_365_days.audit_client",
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oci_provider
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oraclecloud_provider
|
||||
|
||||
|
||||
class TestAuditService:
|
||||
def test_service(self):
|
||||
"""Test that audit service can be instantiated and mocked"""
|
||||
oci_provider = set_mocked_oci_provider()
|
||||
oraclecloud_provider = set_mocked_oraclecloud_provider()
|
||||
|
||||
# Mock the entire service initialization
|
||||
with patch(
|
||||
@@ -15,14 +15,14 @@ class TestAuditService:
|
||||
):
|
||||
from prowler.providers.oraclecloud.services.audit.audit_service import Audit
|
||||
|
||||
audit_client = Audit(oci_provider)
|
||||
audit_client = Audit(oraclecloud_provider)
|
||||
|
||||
# Manually set required attributes since __init__ was mocked
|
||||
audit_client.service = "audit"
|
||||
audit_client.provider = oci_provider
|
||||
audit_client.provider = oraclecloud_provider
|
||||
audit_client.audited_compartments = {}
|
||||
audit_client.regional_clients = {}
|
||||
|
||||
# Verify service name
|
||||
assert audit_client.service == "audit"
|
||||
assert audit_client.provider == oci_provider
|
||||
assert audit_client.provider == oraclecloud_provider
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ class Test_blockstorage_block_volume_encrypted_with_cmk:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.blockstorage.blockstorage_block_volume_encrypted_with_cmk.blockstorage_block_volume_encrypted_with_cmk.blockstorage_client",
|
||||
@@ -106,7 +106,7 @@ class Test_blockstorage_block_volume_encrypted_with_cmk:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.blockstorage.blockstorage_block_volume_encrypted_with_cmk.blockstorage_block_volume_encrypted_with_cmk.blockstorage_client",
|
||||
@@ -140,7 +140,7 @@ class Test_blockstorage_block_volume_encrypted_with_cmk:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "blockstorage_block_volume_encrypted_with_cmk"
|
||||
@@ -193,7 +193,7 @@ class Test_blockstorage_block_volume_encrypted_with_cmk:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.blockstorage.blockstorage_block_volume_encrypted_with_cmk.blockstorage_block_volume_encrypted_with_cmk.blockstorage_client",
|
||||
@@ -227,7 +227,7 @@ class Test_blockstorage_block_volume_encrypted_with_cmk:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "blockstorage_block_volume_encrypted_with_cmk"
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ class Test_blockstorage_boot_volume_encrypted_with_cmk:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.blockstorage.blockstorage_boot_volume_encrypted_with_cmk.blockstorage_boot_volume_encrypted_with_cmk.blockstorage_client",
|
||||
@@ -106,7 +106,7 @@ class Test_blockstorage_boot_volume_encrypted_with_cmk:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.blockstorage.blockstorage_boot_volume_encrypted_with_cmk.blockstorage_boot_volume_encrypted_with_cmk.blockstorage_client",
|
||||
@@ -140,7 +140,7 @@ class Test_blockstorage_boot_volume_encrypted_with_cmk:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "blockstorage_boot_volume_encrypted_with_cmk"
|
||||
@@ -193,7 +193,7 @@ class Test_blockstorage_boot_volume_encrypted_with_cmk:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.blockstorage.blockstorage_boot_volume_encrypted_with_cmk.blockstorage_boot_volume_encrypted_with_cmk.blockstorage_client",
|
||||
@@ -227,7 +227,7 @@ class Test_blockstorage_boot_volume_encrypted_with_cmk:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "blockstorage_boot_volume_encrypted_with_cmk"
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oci_provider
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oraclecloud_provider
|
||||
|
||||
|
||||
class TestBlockStorageService:
|
||||
def test_service(self):
|
||||
"""Test that blockstorage service can be instantiated and mocked"""
|
||||
oci_provider = set_mocked_oci_provider()
|
||||
oraclecloud_provider = set_mocked_oraclecloud_provider()
|
||||
|
||||
# Mock the entire service initialization
|
||||
with patch(
|
||||
@@ -17,14 +17,14 @@ class TestBlockStorageService:
|
||||
BlockStorage,
|
||||
)
|
||||
|
||||
blockstorage_client = BlockStorage(oci_provider)
|
||||
blockstorage_client = BlockStorage(oraclecloud_provider)
|
||||
|
||||
# Manually set required attributes since __init__ was mocked
|
||||
blockstorage_client.service = "blockstorage"
|
||||
blockstorage_client.provider = oci_provider
|
||||
blockstorage_client.provider = oraclecloud_provider
|
||||
blockstorage_client.audited_compartments = {}
|
||||
blockstorage_client.regional_clients = {}
|
||||
|
||||
# Verify service name
|
||||
assert blockstorage_client.service == "blockstorage"
|
||||
assert blockstorage_client.provider == oci_provider
|
||||
assert blockstorage_client.provider == oraclecloud_provider
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_cloudguard_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.cloudguard.cloudguard_enabled.cloudguard_enabled.cloudguard_client",
|
||||
@@ -102,7 +102,7 @@ class Test_cloudguard_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.cloudguard.cloudguard_enabled.cloudguard_enabled.cloudguard_client",
|
||||
@@ -136,7 +136,7 @@ class Test_cloudguard_enabled:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID == "cloudguard_enabled"
|
||||
)
|
||||
@@ -186,7 +186,7 @@ class Test_cloudguard_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.cloudguard.cloudguard_enabled.cloudguard_enabled.cloudguard_client",
|
||||
@@ -220,7 +220,7 @@ class Test_cloudguard_enabled:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID == "cloudguard_enabled"
|
||||
)
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oci_provider
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oraclecloud_provider
|
||||
|
||||
|
||||
class TestCloudguardService:
|
||||
def test_service(self):
|
||||
"""Test that cloudguard service can be instantiated and mocked"""
|
||||
oci_provider = set_mocked_oci_provider()
|
||||
oraclecloud_provider = set_mocked_oraclecloud_provider()
|
||||
|
||||
# Mock the entire service initialization
|
||||
with patch(
|
||||
@@ -17,14 +17,14 @@ class TestCloudguardService:
|
||||
CloudGuard,
|
||||
)
|
||||
|
||||
cloudguard_client = CloudGuard(oci_provider)
|
||||
cloudguard_client = CloudGuard(oraclecloud_provider)
|
||||
|
||||
# Manually set required attributes since __init__ was mocked
|
||||
cloudguard_client.service = "cloudguard"
|
||||
cloudguard_client.provider = oci_provider
|
||||
cloudguard_client.provider = oraclecloud_provider
|
||||
cloudguard_client.audited_compartments = {}
|
||||
cloudguard_client.regional_clients = {}
|
||||
|
||||
# Verify service name
|
||||
assert cloudguard_client.service == "cloudguard"
|
||||
assert cloudguard_client.provider == oci_provider
|
||||
assert cloudguard_client.provider == oraclecloud_provider
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_compute_instance_in_transit_encryption_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_in_transit_encryption_enabled.compute_instance_in_transit_encryption_enabled.compute_client",
|
||||
@@ -102,7 +102,7 @@ class Test_compute_instance_in_transit_encryption_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_in_transit_encryption_enabled.compute_instance_in_transit_encryption_enabled.compute_client",
|
||||
@@ -136,7 +136,7 @@ class Test_compute_instance_in_transit_encryption_enabled:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "compute_instance_in_transit_encryption_enabled"
|
||||
@@ -187,7 +187,7 @@ class Test_compute_instance_in_transit_encryption_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_in_transit_encryption_enabled.compute_instance_in_transit_encryption_enabled.compute_client",
|
||||
@@ -221,7 +221,7 @@ class Test_compute_instance_in_transit_encryption_enabled:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "compute_instance_in_transit_encryption_enabled"
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_compute_instance_legacy_metadata_endpoint_disabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_legacy_metadata_endpoint_disabled.compute_instance_legacy_metadata_endpoint_disabled.compute_client",
|
||||
@@ -102,7 +102,7 @@ class Test_compute_instance_legacy_metadata_endpoint_disabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_legacy_metadata_endpoint_disabled.compute_instance_legacy_metadata_endpoint_disabled.compute_client",
|
||||
@@ -136,7 +136,7 @@ class Test_compute_instance_legacy_metadata_endpoint_disabled:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "compute_instance_legacy_metadata_endpoint_disabled"
|
||||
@@ -187,7 +187,7 @@ class Test_compute_instance_legacy_metadata_endpoint_disabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_legacy_metadata_endpoint_disabled.compute_instance_legacy_metadata_endpoint_disabled.compute_client",
|
||||
@@ -221,7 +221,7 @@ class Test_compute_instance_legacy_metadata_endpoint_disabled:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "compute_instance_legacy_metadata_endpoint_disabled"
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_compute_instance_secure_boot_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_secure_boot_enabled.compute_instance_secure_boot_enabled.compute_client",
|
||||
@@ -102,7 +102,7 @@ class Test_compute_instance_secure_boot_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_secure_boot_enabled.compute_instance_secure_boot_enabled.compute_client",
|
||||
@@ -136,7 +136,7 @@ class Test_compute_instance_secure_boot_enabled:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "compute_instance_secure_boot_enabled"
|
||||
@@ -187,7 +187,7 @@ class Test_compute_instance_secure_boot_enabled:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.compute.compute_instance_secure_boot_enabled.compute_instance_secure_boot_enabled.compute_client",
|
||||
@@ -221,7 +221,7 @@ class Test_compute_instance_secure_boot_enabled:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "compute_instance_secure_boot_enabled"
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oci_provider
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oraclecloud_provider
|
||||
|
||||
|
||||
class TestComputeService:
|
||||
def test_service(self):
|
||||
"""Test that compute service can be instantiated and mocked"""
|
||||
oci_provider = set_mocked_oci_provider()
|
||||
oraclecloud_provider = set_mocked_oraclecloud_provider()
|
||||
|
||||
# Mock the entire service initialization
|
||||
with patch(
|
||||
@@ -17,14 +17,14 @@ class TestComputeService:
|
||||
Compute,
|
||||
)
|
||||
|
||||
compute_client = Compute(oci_provider)
|
||||
compute_client = Compute(oraclecloud_provider)
|
||||
|
||||
# Manually set required attributes since __init__ was mocked
|
||||
compute_client.service = "compute"
|
||||
compute_client.provider = oci_provider
|
||||
compute_client.provider = oraclecloud_provider
|
||||
compute_client.audited_compartments = {}
|
||||
compute_client.regional_clients = {}
|
||||
|
||||
# Verify service name
|
||||
assert compute_client.service == "compute"
|
||||
assert compute_client.provider == oci_provider
|
||||
assert compute_client.provider == oraclecloud_provider
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_database_autonomous_database_access_restricted:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.database.database_autonomous_database_access_restricted.database_autonomous_database_access_restricted.database_client",
|
||||
@@ -102,7 +102,7 @@ class Test_database_autonomous_database_access_restricted:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.database.database_autonomous_database_access_restricted.database_autonomous_database_access_restricted.database_client",
|
||||
@@ -136,7 +136,7 @@ class Test_database_autonomous_database_access_restricted:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "database_autonomous_database_access_restricted"
|
||||
@@ -187,7 +187,7 @@ class Test_database_autonomous_database_access_restricted:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.database.database_autonomous_database_access_restricted.database_autonomous_database_access_restricted.database_client",
|
||||
@@ -221,7 +221,7 @@ class Test_database_autonomous_database_access_restricted:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "database_autonomous_database_access_restricted"
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oci_provider
|
||||
from tests.providers.oraclecloud.oci_fixtures import set_mocked_oraclecloud_provider
|
||||
|
||||
|
||||
class TestDatabaseService:
|
||||
def test_service(self):
|
||||
"""Test that database service can be instantiated and mocked"""
|
||||
oci_provider = set_mocked_oci_provider()
|
||||
oraclecloud_provider = set_mocked_oraclecloud_provider()
|
||||
|
||||
# Mock the entire service initialization
|
||||
with patch(
|
||||
@@ -17,14 +17,14 @@ class TestDatabaseService:
|
||||
Database,
|
||||
)
|
||||
|
||||
database_client = Database(oci_provider)
|
||||
database_client = Database(oraclecloud_provider)
|
||||
|
||||
# Manually set required attributes since __init__ was mocked
|
||||
database_client.service = "database"
|
||||
database_client.provider = oci_provider
|
||||
database_client.provider = oraclecloud_provider
|
||||
database_client.audited_compartments = {}
|
||||
database_client.regional_clients = {}
|
||||
|
||||
# Verify service name
|
||||
assert database_client.service == "database"
|
||||
assert database_client.provider == oci_provider
|
||||
assert database_client.provider == oraclecloud_provider
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_events_notification_topic_and_subscription_exists:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_notification_topic_and_subscription_exists.events_notification_topic_and_subscription_exists.events_client",
|
||||
@@ -102,7 +102,7 @@ class Test_events_notification_topic_and_subscription_exists:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_notification_topic_and_subscription_exists.events_notification_topic_and_subscription_exists.events_client",
|
||||
@@ -136,7 +136,7 @@ class Test_events_notification_topic_and_subscription_exists:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "events_notification_topic_and_subscription_exists"
|
||||
@@ -187,7 +187,7 @@ class Test_events_notification_topic_and_subscription_exists:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_notification_topic_and_subscription_exists.events_notification_topic_and_subscription_exists.events_client",
|
||||
@@ -221,7 +221,7 @@ class Test_events_notification_topic_and_subscription_exists:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "events_notification_topic_and_subscription_exists"
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_events_rule_cloudguard_problems:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_rule_cloudguard_problems.events_rule_cloudguard_problems.events_client",
|
||||
@@ -102,7 +102,7 @@ class Test_events_rule_cloudguard_problems:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_rule_cloudguard_problems.events_rule_cloudguard_problems.events_client",
|
||||
@@ -136,7 +136,7 @@ class Test_events_rule_cloudguard_problems:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "events_rule_cloudguard_problems"
|
||||
@@ -187,7 +187,7 @@ class Test_events_rule_cloudguard_problems:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_rule_cloudguard_problems.events_rule_cloudguard_problems.events_client",
|
||||
@@ -221,7 +221,7 @@ class Test_events_rule_cloudguard_problems:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "events_rule_cloudguard_problems"
|
||||
|
||||
+6
-6
@@ -4,7 +4,7 @@ from tests.providers.oraclecloud.oci_fixtures import (
|
||||
OCI_COMPARTMENT_ID,
|
||||
OCI_REGION,
|
||||
OCI_TENANCY_ID,
|
||||
set_mocked_oci_provider,
|
||||
set_mocked_oraclecloud_provider,
|
||||
)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class Test_events_rule_iam_group_changes:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_rule_iam_group_changes.events_rule_iam_group_changes.events_client",
|
||||
@@ -102,7 +102,7 @@ class Test_events_rule_iam_group_changes:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_rule_iam_group_changes.events_rule_iam_group_changes.events_client",
|
||||
@@ -136,7 +136,7 @@ class Test_events_rule_iam_group_changes:
|
||||
assert pass_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert pass_results[0].check_metadata.Provider == "oci"
|
||||
assert pass_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
pass_results[0].check_metadata.CheckID
|
||||
== "events_rule_iam_group_changes"
|
||||
@@ -187,7 +187,7 @@ class Test_events_rule_iam_group_changes:
|
||||
with (
|
||||
mock.patch(
|
||||
"prowler.providers.common.provider.Provider.get_global_provider",
|
||||
return_value=set_mocked_oci_provider(),
|
||||
return_value=set_mocked_oraclecloud_provider(),
|
||||
),
|
||||
mock.patch(
|
||||
"prowler.providers.oraclecloud.services.events.events_rule_iam_group_changes.events_rule_iam_group_changes.events_client",
|
||||
@@ -221,7 +221,7 @@ class Test_events_rule_iam_group_changes:
|
||||
assert fail_results[0].compartment_id is not None
|
||||
|
||||
# Verify metadata
|
||||
assert fail_results[0].check_metadata.Provider == "oci"
|
||||
assert fail_results[0].check_metadata.Provider == "oraclecloud"
|
||||
assert (
|
||||
fail_results[0].check_metadata.CheckID
|
||||
== "events_rule_iam_group_changes"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user