purestorage.flashblade.purefb_bucket_access module – Manage FlashBlade bucket access policies
Note
This module is part of the purestorage.flashblade collection (version 1.26.0).
You might already have this collection installed if you are using the ansible package.
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install purestorage.flashblade.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: purestorage.flashblade.purefb_bucket_access.
New in purestorage.flashblade 1.20.0
Synopsis
Manage object store bucket policies.
This modules allows the management of both bucket access and cross-origin resource sharing policies and their associated rules.
Requirements
The below requirements are needed on the host that executes this module.
python >= 3.9
py-pure-client
netaddr
datetime
pytz
distro
pycountry
urllib3
Parameters
Parameter |
Comments |
|---|---|
List of permissions to grant. System-wide policy rules cannot be deleted or modified Currently only s3:GetObject is allowed Choices:
Default: |
|
FlashBlade API token for admin privileged user. |
|
ID of the API Client that issues the identity token. Used with private_key_file. |
|
Name of fleet member on which to perform the operation. This requires the array receiving the request is a member of a fleet and the context name to be a member of the same fleet. Default: |
|
Disable insecure certificate warnings Choices:
|
|
Allow S3 requests that match all of the actions item selected. Rules are additive. Choices:
|
|
FlashBlade management IP address or Hostname. |
|
A list of headers that are permitted to be included in cross-origin requests to access a bucket. The only currently supported allowed header is ‘*’. Default: |
|
A pre-signed JWT to authenticate with, as an alternative to api_token. The token is exchanged by the array for a short-lived access token. Requires a matching API Client to be registered on the array (see purestorage.flashblade.purefb_apiclient). |
|
The API Client’s trusted identity issuer registered on the array. Used with private_key_file. |
|
Key ID of the API Client that issues the identity token. Used with private_key_file. |
|
A list of HTTP methods that are permitted for cross-origin requests to access a bucket. The only currently supported combination of allowed methods is all methods. Choices:
Default: |
|
Name of Object Store bucket the policy applies to. |
|
A list of origins (domains) that are permitted to make cross-origin requests to access a bucket. The only currently supported allowed origin is ‘*’. Default: |
|
Type of policy Choices:
|
|
Defines if the rule will apply to all object store users regardless of their origin or principal. Choices:
|
|
Path to the PEM RSA private key used to sign an identity token, as an alternative to api_token. Requires client_id, key_id, issuer and username. |
|
Password protecting private_key_file, if encrypted. |
|
The list of resources which this rule applies to. The only currently supported resource is all objects in a bucket to which the parent policy belongs. Default: |
|
Name of the rule in the Bucket Policy Required if state is present |
|
Create or delete policy or rule. Choices:
|
|
Username the issued token should be granted to. Must be a valid user on the array. Used with private_key_file. |
Notes
Note
You must set
PUREFB_URLandPUREFB_APIenvironment variables if fb_url and api_token arguments are not passed to the module directlyToken-based authentication (id_token, or private_key_file with client_id, key_id, issuer and username) may be used as an alternative to api_token, and requires a matching API Client registered on the array via purestorage.flashblade.purefb_apiclient
Examples
- name: Create a bucket access policy rule for bucket bar
purestorage.flashblade.purefb_bucket_policy:
rule: foo
name: bar
policy_type: access
fb_url: 10.10.10.2
api_token: T-9f276a18-50ab-446e-8a0c-666a3529a1b6
- name: Create a CORS policy rule for bucket bar
purestorage.flashblade.purefb_bucket_policy:
rule: foo
name: bar
policy_type: cors
fb_url: 10.10.10.2
api_token: T-9f276a18-50ab-446e-8a0c-666a3529a1b6
- name: Delete bucket policy rule foo from bucket bar
purestorage.flashblade.purefb_bucket_policy:
rule: foo
name: bar
policy_type: access
state: absent
fb_url: 10.10.10.2
api_token: T-9f276a18-50ab-446e-8a0c-666a3529a1b6
- name: Delete all bucket policy rules from bucket bar
purestorage.flashblade.purefb_bucket_policy:
name: bar
policy_type: access
state: absent
fb_url: 10.10.10.2
api_token: T-9f276a18-50ab-446e-8a0c-666a3529a1b6