p0 request
Overview
Manually request just-in-time access to resources across AWS, Azure AD, GCP, Okta, SSH, and Google Workspace.
Create a time-boxed access request instead of granting standing permissions.
Send the request for approval and, once approved, automatically provision permissions for your specified duration.
Apply your organization’s guardrails, including auto-revocation at expiry.
Generate a complete audit trail showing who requested what, when, and why.
Attach a reason for audit logging and approval context.
Optionally block (
--wait) until provisioning completes, then execute the underlying command (e.g.,aws,gcloud,ssh).Integrate with Slack (or your configured notification channel) for approval workflows and notifications.
Enforce your organization’s TTL policy and auto-revoke rights at expiry.
Prerequisites
Logged-in user
Network access: allow HTTPS to
https://api.p0.app/o/<org-slug>/command/.
Syntax
p0 request <provider> <subcommand> [resource-args…]
[--reason <text>]
[-w | --wait]<provider>awsazure-adgcloudoktasshworkspace
<subcommand>& resource-argsProvider-specific; run
p0 request <provider> --helpfor details.
--reason <text>Justification for audit and approver context.
-w, --waitBlock until access is provisioned and then execute the underlying tooling command.
Global Flags
--helpShow help for any command.
--reason <text>Provide a justification string.
-w, --waitWait for provisioning before returning.
Supported Providers
AWS
p0 request aws role <role-name>p0 request aws resource <ARN>
Azure AD
p0 request azure-ad user <UPN>p0 request azure-ad group <group-name>
GCP
p0 request gcloud role <role-name>p0 request gcloud resource <resource-path>p0 request gcloud permission <permission-name>(GitHub)
Okta
p0 request okta group <group-name>
SSH
p0 request ssh destination <instance-id>
Workspace
p0 request workspace drive <file-id>p0 request workspace group <group-email>
Examples
AWS IAM Role
p0 request aws role MyReadOnlyRole \ --account 123456789012 \ --reason "Investigating S3 access issues" \ --waitOutcome: Requests the
MyReadOnlyRolerole in account123456789012; blocks until provisioned, then you can run AWS commands under that role.GCP Viewer Role
p0 request gcloud role roles/viewer \ --project my-gcp-project \ --reason "Ad-hoc data audit" \ --waitOutcome: Creates a GCP IAM request for the `roles/view
Last updated