What You Get
- Every alert Ultra raises, delivered as gzip-compressed NDJSON files (one alert per line)
- Alerts raised from the moment you enable delivery. Earlier alerts are not backfilled.
Prerequisites
- Owner or admin role in Ultra Hub
- An AWS account where you can create an S3 bucket and an IAM role
- A Panther account with permission to add log sources and schemas
Connect Amazon S3
First, connect Ultra Hub to your S3 bucket. In Ultra Hub, go to Settings > Integrations. Under Available integrations, click Add next to Panther. Ultra walks you through the S3 connection and shows the Panther settings on the last step. For another SIEM that reads newline-delimited JSON from S3, click Add next to Amazon S3 instead. The steps are the same, without the Panther step.1
Enter the connection details
Fill in:
Click Continue.
2
Create the IAM role in AWS
Ultra Hub shows two policies generated for your connection:
- A trust policy that lets Ultra assume the role, using an external ID unique to your connection
- A permissions policy that allows writing to your bucket and prefix only
If you chose SSE-KMS and your key policy does not delegate access to IAM, also allow this role in the key policy.
3
Finish setup in Ultra Hub
Paste the new role’s ARN into Customer role ARN and review the summary.
- From the Panther tile, click Continue. The Set up Panther step shows the Panther settings for your bucket and prefix. Follow them, or the steps in Connect Panther, then click Finish setup.
- From the Amazon S3 tile, click Finish setup.
Connect Panther
Next, point Panther at the same bucket, then turn on delivery.1
Add the Ultra schema in Panther
In Panther, go to Schemas and click Create New. Set:Click Run Test, then Save.
Under Schema, click Start on Create your schema from scratch, keep the Default (JSON/XML) parser, and paste this into Fields & Indicators:
2
Add the S3 log source in Panther
In Panther, go to Configure > Log Sources, click Create New, and choose AWS S3 Bucket. Enter the AWS account ID that owns the bucket, the bucket name, and your KMS key ARN if you use SSE-KMS, then set:
Use the CloudFormation or Terraform template Panther provides to create its read-only role and the bucket notifications. See Panther’s S3 source guide for details.
If you use SSE-KMS, give Panther’s read-only role
kms:Decrypt and kms:DescribeKey on the same key, including in the key policy. Don’t add decrypt access to the role Ultra writes with.3
Enable delivery and send a test
In Ultra Hub, open your connection under Settings > Integrations, expand the destination, and click Enable on its alert stream.To confirm everything works, open Configuration from the Alerts page and click Test on any alert source. The test alert appears in Panther with
synthetic set to true.Alert Fields
Each line in an exported file is one alert:
Optional fields are left out when empty, but
synthetic is always present as true or false. Values are exported as-is, including user emails.
Manage the Connection
Open the connection from Settings > Integrations.- Pause delivery: click Disable on the destination’s Alert stream. Deliveries already accepted still finish. Alerts raised while the stream is disabled are not sent when you enable it again.
- Delivery history: in the stream’s menu, choose History.
- Delete a destination: in the destination’s menu, choose Delete destination. Ultra then shows a replacement permissions policy under Update AWS permissions. Apply it to your AWS role, then click Done.
- Delete the connection: in the connection’s menu, choose Delete connection. This also deletes its destinations, streams, and delivery history. Ultra can’t change your AWS role, so remove the trust and permissions policies from it yourself.