PagerDuty
PagerDuty + Sym combine to add critical context for automating your approval and access workflows.
Overview
During an incident, responders need a safe and efficient path to break glass access. The Sym platform gives you the tools you need to create developer access flows that are secure and compliance-friendly. Get started by provisioning your workflows with Symโs Terraform building blocks. Then use On-Call Status, Incidents, and Schedules from PagerDuty to customize your workflow logic with Symโs Python SDK.
This is an SDK Integration
The Sym integration with PagerDuty exposes information about PagerDuty in the Sym SDK. You can use this information to make better decisions when approving access to sensitive resources.
To get started with Sym, please see:
What this integration does
Once you're set up with Sym, you can add PagerDuty as an SDK integration, and then use it in the Sym Python SDK to:
- Check On-Call Status and Schedules for the user making a request
- See whether there is an open Incident
By pulling that context into your Sym Flows, you can easily automate your approval decisions with only a few lines of Python:
from sym.sdk.annotations import hook, reducer
from sym.sdk.integrations import pagerduty, slack
from sym.sdk.templates import ApprovalTemplate
@hook
def on_request(evt):
"""
If this is a fast-tracked request, then auto-approve the workflow.
"""
fvars = evt.flow.vars
if is_fast_tracked(evt):
target = evt.payload.fields["target"]
message = f"{evt.user.email} was fast tracked {target.label} AWS access."
return ApprovalTemplate.approve(reason=message)
def is_fast_tracked(evt):
"""
Determine if this request should be fast tracked or go through
normal approval channels
"""
return pagerduty.is_on_call(evt.user)
Updated 3 months ago