Audit log streaming can now be configured via GitHub's REST APIs - Private Beta #132308
Replies: 1 comment
-
💬 Your Product Feedback Has Been Submitted 🎉 Thank you for taking the time to share your insights with us! Your feedback is invaluable as we build a better GitHub experience for all our users. Here's what you can expect moving forward ⏩
Where to look to see what's shipping 👀
What you can do in the meantime 💻
As a member of the GitHub community, your participation is essential. While we can't promise that every suggestion will be implemented, we want to emphasize that your feedback is instrumental in guiding our decisions and priorities. Thank you once again for your contribution to making GitHub even better! We're grateful for your ongoing support and collaboration in shaping the future of our platform. ⭐ |
Beta Was this translation helpful? Give feedback.
-
New Private Beta Coming Soon
Summary
This release introduces a set of audit log streaming REST API endpoints that allow Enterprise Admins to perform the following audit log streaming actions:
With these new REST API endpoint, Enterprise administrators can programmatically create, update, delete and list their Enterprise's audit log streams. By allowing programmatic updates to the audit log streaming configuration, customers can programmatically rotate audit log streaming secrets further secure their audit log stream.
Rate Limits
These REST API endpoints will enforce a limit of 15 calls per hour.
GET Endpoint: Retrieve the audit log streaming configurations.
GET /enterprises/{enterprise_id}/audit-log/streams
Request:
GET /enterprises/1234/audit-log/streams
Response
GET /enterprises/{enterprise_id}/audit-log/streams/{stream_id}
Request
GET /enterprises/1234/audit-log/streams/1
Response
Stream Key Endpoint: Provide the customer with an audit streaming key.
When performing a POST or PUT operation, customers will need to transmit encrypted secrets to GitHub to configure audit log
streaming. To do so, the customer will need to have the audit log streaming key as input to the encryption process.
GET /enterprises/{enterprise_id}/audit-log/stream-key
Request
GET /enterprises/1234/audit-log/stream-key
Response
POST Endpoint: Create new audit log stream configurations & PUT Endpoint: Update existing audit log stream configurations.
Prior to performing either a POST or PUT operation for an audit log stream, Enterprise Administrators must first encrypt the secret from their streaming destination (if applicable). To do so, the customer must have the stream-key from the stream key endpoint above. From there, the Enterprise Admin can follow the instructions for Encrypting secrets for the REST API using the stream key as the key. Once complete, the POST or PUT endpoints can be used to create or update the audit log streaming configuration.
PUT /enterprises/{enterprise_id}/audit-log/streams/{stream_id} for DataDog
Request
PUT /enterprises/1234/audit-log/streams/1.
Content-Type: application/json
Response
PUT /enterprises/{enterprise_id}/audit-log/streams/{stream_id} for Splunk
Request
PUT /enterprises/1234/audit-log/streams/2
Content-Type: application/json
Response
PUT /enterprises/{enterprise_id}/audit-log/streams/{stream_id} for Azure Blob Storage
Request
PUT /enterprises/1234/audit-log/streams/3
Content-Type: application/json
Response
PUT /enterprises/{enterprise_id}/audit-log/streams/{stream_id} for Azure Event Hubs
Request
PUT /enterprises/1234/audit-log/streams/4
Content-Type: application/json
Response
PUT /enterprises/{enterprise_id}/audit-log/streams/{stream_id} for Google Cloud Storage
Request
PUT /enterprises/1234/audit-log/streams/5
Content-Type: application/json
Response
PUT /enterprises/{enterprise_id}/audit-log/streams/{stream_id} Amazon S3 with Access Keys
Request
PUT /enterprises/1234/audit-log/streams/1
Content-Type: application/json
Response
PUT /enterprises/{enterprise_id}/audit-log/streams/{stream_id} Amazon S3 with OIDC
Request
PUT /enterprises/1234/audit-log/streams/1
Content-Type: application/json
Response
DELETE Endpoint: Delete existing audit log stream configurations.
DELETE /enterprises/{enterprise_id}/audit-log/streams/{stream_id}
Request
DELETE /enterprises/1234/audit-log/streams/1
Response
Beta Was this translation helpful? Give feedback.
All reactions