Files
prowler/contrib/aws/simulate_policy/simulate_policy_client.py

16 lines
733 B
Python

# prowler/providers/aws/lib/simulate_policy_client.py
from typing import Optional
from prowler.providers.common.provider import Provider
from prowler.providers.aws.lib.simulate_policy.simulate_policy_service import IamSimulator
_iam_simulator_client: Optional[IamSimulator] = None
def get_iam_simulator_client() -> IamSimulator:
global _iam_simulator_client
if _iam_simulator_client is None:
provider = Provider.get_global_provider()
if provider is None:
# Fail fast with a clear message if somehow called too early
raise RuntimeError("Global Provider is not initialized yet for IAM simulator.")
_iam_simulator_client = IamSimulator(provider)
return _iam_simulator_client