diff --git a/docs/img/enterprise/plugins/pagerduty/new-access-req-incident.png b/docs/img/enterprise/plugins/pagerduty/new-access-req-incident.png new file mode 100644 index 0000000000000..0ef6a8ed2dcd5 Binary files /dev/null and b/docs/img/enterprise/plugins/pagerduty/new-access-req-incident.png differ diff --git a/docs/img/enterprise/plugins/pagerduty/pagerduty-api-integration.png b/docs/img/enterprise/plugins/pagerduty/pagerduty-api-integration.png new file mode 100644 index 0000000000000..763d7184b2605 Binary files /dev/null and b/docs/img/enterprise/plugins/pagerduty/pagerduty-api-integration.png differ diff --git a/docs/img/enterprise/plugins/pagerduty/pagerduty-integrations.png b/docs/img/enterprise/plugins/pagerduty/pagerduty-integrations.png new file mode 100644 index 0000000000000..f3478c5a044e0 Binary files /dev/null and b/docs/img/enterprise/plugins/pagerduty/pagerduty-integrations.png differ diff --git a/docs/pages/access-controls/access-request-plugins/ssh-approval-pagerduty.mdx b/docs/pages/access-controls/access-request-plugins/ssh-approval-pagerduty.mdx index dc3170abdd796..fcc618bae6c32 100644 --- a/docs/pages/access-controls/access-request-plugins/ssh-approval-pagerduty.mdx +++ b/docs/pages/access-controls/access-request-plugins/ssh-approval-pagerduty.mdx @@ -1,56 +1,393 @@ --- -title: SSH login approval via Pager Duty -description: How to configure SSH login approval using PagerDuty and Teleport -h1: SSH Login Approval using PagerDuty -videoBanner: RzTB4Lsm09M +title: Access Requests with PagerDuty +description: How to set up Teleport's PagerDuty plugin for privilege elevation approvals. --- -This guide will talk through how to setup Teleport with PagerDuty. Teleport's -PagerDuty integration allows you to treat Teleport access and permission -requests as PagerDuty incidents, notify the appropriate team, and approve -or deny the requests via PagerDuty special action. +With Teleport's PagerDuty integration, engineers can access the infrastructure +they need to resolve incidents quickly—without longstanding admin permissions +that can become a vector for attacks. -## Setup +Teleport's PagerDuty integration allows you to treat Teleport Role Access +Requests as PagerDuty incidents, notify the appropriate on-call team, and +approve or deny the requests via PagerDuty. You can also configure the plugin to +approve Role Access Requests automatically if the user making the request is on +the on-call team for a service affected by an incident. -### Prerequisites +This guide will explain how to set up Teleport's Access Request plugin for +PagerDuty. -This guide assumes that you have: + -Teleport Cloud requires that plugins connect through the Proxy Service (`mytenant.teleport.sh:443`). Open Source and Enterprise installations can connect to the Auth Service (`auth.example.com:3025`) directly. +## Prerequisites + +(!/docs/pages/includes/commercial-prereqs-tabs.mdx!) + +- A PagerDuty account with the "Admin", "Global Admin", or "Account Owner" + roles. These roles are necessary for generating an API token that can list and + look up user profiles. + + You can see your role by visiting your user page in PagerDuty, navigating to + the "Permissions & Teams" tab, and checking the value of the "Base Role" + field. + +- A host where you will run the PagerDuty plugin. + + + +We recommend installing Teleport plugins on the same host as the Teleport Proxy +Service. This is an ideal location as plugins have a low memory footprint, and +will require both public internet access and Teleport Auth Service access. + + + + + +Install the Teleport PagerDuty plugin on a host that can access both your +Teleport Cloud tenant and PagerDuty. + + (!docs/pages/includes/tctl.mdx!) -### Create a user and role for access +## Step 1/8. Create services -(!docs/pages/includes/plugins/rbac.mdx!) +To demonstrate the PagerDuty plugin, create two services in PagerDuty. For each +service, fill in only the "Name" field and skip all other configuration screens, +leaving options as the defaults: -### Export the access-plugin certificate +- `Teleport Access Request Notifications` +- `My Critical Service` -(!docs/pages/includes/plugins/identity-export.mdx!) +We will configure the PagerDuty plugin to create an incident in the `Teleport +Access Request Notifications` service when certain users create an Access +Request. -We'll reference these files later when [configuring the plugins](#config-file). +For users on the on-call team for `My Critical Service` (in this case, your +PagerDuty user), we will configure the PagerDuy plugin to approve Access +Requests automatically, letting them investigate incidents on the service +quickly. +## Step 2/8. Define RBAC resources -### Setting up a PagerDuty API key +The Teleport PagerDuty plugin works by receiving Access Request events from the +Teleport Auth Service and, based on these events, interacting with the PagerDuty +API. -In your PagerDuty dashboard, go to **Configuration → API Access → Create New API Key**, add a key description, and save the key. We'll use the key in the plugin config file later. +In this section, we will show you how to configure the PagerDuty plugin by +defining the following RBAC resources: -**Create a PagerDuty API key** -![Create a service account](../../../img/enterprise/plugins/pagerduty/pagerduty-api-key.png) +- A role called `editor-requester`, which can request the built-in `editor` + role. We will configure this role to open a PagerDuty incident whenever a + user requests it, notifying the on-call team for the `Teleport Access Request + Notifications` service. +- A role called `demo-role-requester`, which can request a role called + `demo-role`. We will configure the PagerDuty plugin to auto-approve this + request whenever the user making it is on the on-call team for `My Critical + Service`. +- A user and role called `access-plugin` that the PagerDuty plugin will assume + in order to authenticate to the Teleport Auth Service. This role will have + permissions to approve Access Requests from users on the on-call team for `My + Critical Service` automatically. +- A role called `access-plugin-impersonator` that allows you to generate signed + credentials that the PagerDuty plugin can use to authenticate with your + Teleport cluster. -**Create a service account** -![Create a service account](../../../img/enterprise/plugins/pagerduty/create-new-service-pd.png) +### `editor-requester` -## Downloading and installing the plugin +Create a file called `editor-request-rbac.yaml` with the following content, +which defines a role called `editor-reviewer` that can review requests for the +`editor` role, plus an `editor-requester` role that can request this role. + +```yaml +kind: role +version: v5 +metadata: + name: editor-reviewer +spec: + allow: + review_requests: + roles: ['editor'] +--- +kind: role +version: v5 +metadata: + name: editor-requester +spec: + allow: + request: + roles: ['editor'] + thresholds: + - approve: 1 + deny: 1 + annotations: + pagerduty_notify_service: ["Teleport Access Request Notifications"] +``` + +The Teleport Auth Service *annotates* Access Request events with metadata based +on the roles of the Teleport user submitting the Access Request. The PagerDuty +plugin reads these annotations to determine how to respond to a new Access +Request event. + +Whenever a user with the `editor-requester` role requests the `editor` role, the +PagerDuty plugin will read the `pagerduty_notify_service` annotation and notify +PagerDuty to open an incident in the specified service, `Teleport Access Request +Notifications`, until someone with the `editor-reviewer` role approves or denies +the request. + +Create the roles you defined: + +```code +$ tctl create -f editor-request-rbac.yaml +role 'editor-reviewer' has been created +role 'editor-requester' has been created +``` + +### `demo-role-requester` + +Create a file called `demo-role-requester.yaml` with the following content: + +```yaml +kind: role +version: v5 +metadata: + name: demo-role +--- +kind: role +version: v5 +metadata: + name: demo-role-requester +spec: + allow: + request: + roles: ['demo-role'] + thresholds: + - approve: 1 + deny: 1 + annotations: + pagerduty_services: ["My Critical Service"] +``` + +Users with the `demo-role-requester` role can request the `demo-role` role. When +such a user makes this request, the PagerDuty plugin will read the +`pagerduty_services` annotation. If the user making the request is on the +on-call team for a service listed as a value for the annotation, the plugin will +approve the Access Request automatically. + +In this case, the PagerDuty plugin will approve any requests from users on the +on-call team for `My Critical Service`. + +Create the resources: + +```code +$ tctl create -f demo-role-requester.yaml; +``` + + + +For auto-approval to work, the user creating an Access Request must have a +Teleport username that is also the email address associated with a PagerDuty +account. In this guide, we will add the `demo-role-requester` role to your own +Teleport account—which we assume is also your email address for PagerDuty—so you +can request the `demo-role` role. + + + +### `access-plugin` + +Teleport's Access Request plugins authenticate to your Teleport cluster as a +user with permissions to list, read, and update Access Requests. This way, +plugins can retrieve Access Requests from the Teleport Auth Service, present +them to reviewers, and modify them after a review. + +Define a user and role called `access-plugin` by adding the following content to +a file called `access-plugin.yaml`: + +```yaml +kind: role +version: v5 +metadata: + name: access-plugin +spec: + allow: + rules: + - resources: ['access_request'] + verbs: ['list', 'read', 'update'] + - resources: ['access_plugin_data'] + verbs: ['update'] + review_requests: + roles: ['demo-role'] + where: 'contains(request.system_annotations["pagerduty_services"], "My Critical Service")' +--- +kind: user +metadata: + name: access-plugin +spec: + roles: ['access-plugin'] +version: v2 +``` + +Notice that the `access-plugin` role includes an `allow.review_requests.roles` +field with `demo-role` as a value. This allows the plugin to review requests for +the `demo-role` role. + +We are also restricting the `access-plugin` role to reviewing only Access +Requests associated with `My Critical Service`. To do so, we have defined a +*predicate expression* in the `review_requests.where` field. This expression +indicates that the plugin *cannot* review requests for `demo-role` unless the +request contains an annotation with the key `pagerduty_services` and the value +`My Critical Service`. + +
+ +The `where` field includes a predicate expression that determines whether a +reviewer is allowed to review a specific request. You can include two functions +in a predicate expression: + +|Function|Description|Example| +|---|---|---| +|`equals`|A field is equivalent to a value.|`equals(request.reason, "resolve an incident")` +|`contains`|A list of strings includes a value.|`contains(reviewer.traits["team"], "devops")`| + +When you use the `where` field, you can include the following fields in your +predicate expression: + +|Field|Type|Description| +|---|---|---| +|`reviewer.roles`|`[]string`|A list of the reviewer's Teleport role names| +|`reviewer.traits`|`map[string][]string`|A map of the reviewer's Teleport traits by the name of the trait| +|`request.roles`|`[]string`|A list of the Teleport roles a user is requesting| +|`request.reason`|`string`|The reason attached to the request| +|`request.system_annotations`| `map[string][]string`|A map of annotations for the request by annotation key, e.g., `pagerduty_services`| + +You can combine functions using the following operators: + +|Operator|Format|Description| +|---|---|---| +|`&&`|`function && function`|Evaluates to true if both functions evaluate to true| +|`\|\|`|`function \|\| function`|Evalutes to true if either one or both functions evaluate to true| +|`!`| `!function`|Evaluates to true if the function evaluates to false| + +An example of a function is `equals(request.reason, "resolve an incident")`. To +configure an `allow` condition to match any Access Request that does not include +the reason, "resolve an incident", you could use the function, +`!equals(request.reason, "resolve an incident")`. + +
+ +Create the user and role: + +```code +$ tctl create -f access-plugin.yaml +``` + +### `access-plugin-impersonator` + +As with all Teleport users, the Teleport Auth Service authenticates the +`access-plugin` user by issuing short-lived TLS credentials. In this case, we +will need to request the credentials manually by *impersonating* the +`access-plugin` role and user. + +If you are using `tctl` from the Auth +Service host, you will already have impersonation privileges. + +To grant your user impersonation privileges for `access-plugin`, define a role +called `access-plugin-impersonator` by pasting the following YAML document into +a file called `access-plugin-impersonator.yaml`: + +```yaml +kind: role +version: v5 +metadata: + name: access-plugin-impersonator +spec: + allow: + impersonate: + roles: + - access-plugin + users: + - access-plugin +``` + +Create the `access-plugin-impersonator` role: + +```code +$ tctl create -f access-plugin-impersonator.yaml +``` + +### Add roles to your user + +Later in this guide, your Teleport user will take three actions that require +additional permissions: + +- Generate signed credentials that the PagerDuty plugin will use to connect to + your Teleport Cluster +- Manually review an Access Request for the `editor` role +- Create an Access Request for the `demo-role` role + +To grant these permissions to your user, give your user the `editor-reviewer`, +`access-plugin-impersonator`, and `demo-role-requester` roles we defined +earlier. + +Retrieve your user definition: + +```code +$ TELEPORT_USER=$(tsh status --format=json | jq -r .active.username) +$ tctl get users/${TELEPORT_USER?} > myuser.yaml +``` -We recommend installing Teleport plugins alongside the Teleport Proxy. This is an ideal -location as plugins have a low memory footprint, and will require both public internet access -and Teleport Auth Service access. +Edit `myuser.yaml` to include the roles you just created: + +```diff + roles: + - access + - auditor + - editor ++ - editor-reviewer ++ - access-plugin-impersonator ++ - demo-role-requester +``` + +Apply your changes: + +```code +$ tctl create -f myuser.yaml +``` + +Log out of your Teleport cluster and log in again. You will now be able to +review requests for the `editor` role, request the `demo-role` role, and +generate signed certificates for the `access-plugin` role and user. + +### Create a user who will request access + +Create a user called `myuser` who has the `editor-requester` role. Later in this +guide, you will create an Access Request as this user to test the PagerDuty +plugin: + +```code +$ tctl users add myuser --roles=editor-requester +``` + +`tctl` will print an invitation URL to your terminal. Visit the URL and log in +as `myuser` for the first time, registering credentials as configured for your +Teleport cluster. + +## Step 3/8. Install the Teleport PagerDuty plugin + +We currently only provide `linux-amd64` binaries. You can also compile these +plugins from source. You can run the plugin from a remote host or your local +development machine. @@ -58,11 +395,15 @@ and Teleport Auth Service access. $ curl -L -O https://get.gravitational.com/teleport-access-pagerduty-v(=teleport.plugin.version=)-linux-amd64-bin.tar.gz $ tar -xzf teleport-access-pagerduty-v(=teleport.plugin.version=)-linux-amd64-bin.tar.gz $ cd teleport-access-pagerduty - $ ./install + $ sudo ./install + Teleport PagerDuty Plugin binaries have been copied to /usr/local/bin + You can run teleport-pagerduty configure > /etc/teleport-pagerduty.toml to + bootstrap your config file. ``` - To install from source you need `git` and `go` installed. If you do not have Go installed, visit the Go [downloads page](https://go.dev/dl/). + To install from source you need `git` and `go` installed. If you do not have + Go installed, visit the Go [downloads page](https://go.dev/dl/). ```code # Checkout teleport-plugins @@ -70,46 +411,157 @@ and Teleport Auth Service access. $ cd teleport-plugins/access/pagerduty $ make ``` -Run `./install` from `teleport-pagerduty` or place the executable in the appropriate `/usr/bin` or `/usr/local/bin` on the server installation. + +Run `./install` from `teleport-pagerduty`. + ```code - $ docker pull quay.io/gravitational/teleport-plugin-pagerduty:(=teleport.plugin.version=) + $ docker pull public.ecr.aws/gravitational/teleport-plugin-pagerduty:(=teleport.plugin.version=) ``` -### Config file +## Step 4/8. Export the access plugin identity + +(!docs/pages/includes/plugins/identity-export.mdx!) + +## Step 5/8. Set up a PagerDuty API key + +Generate an API key that the PagerDuty plugin will use to create and modify +incidents as well as list users, services, and on-call policies. + +In your PagerDuty dashboard, go to **Integrations → API Access Keys** and click +**Create New API Key**. Add a key description, e.g., "Teleport integration". +Leave "Read-only API Key" unchecked. Copy the key to a file on your local +machine. We'll use the key in the plugin config file later. -Teleport's PagerDuty plugin has its own configuration file in TOML format. Before starting the plugin for the first time, you'll need to generate and edit that config file. +![Create an API +key](../../../img/enterprise/plugins/pagerduty/pagerduty-integrations.png) + +## Step 6/8. Configure the PagerDuty plugin + +At this point, you have generated credentials that the PagerDuty plugin will use +to connect to Teleport and the PagerDuty API. You will now configure the +PagerDuty plugin to use these credentials, plus adjust any settings required for +your environment. + +Teleport's PagerDuty plugin has its own configuration file in TOML format. On +the host where you will run the PagerDuty plugin, generate a boilerplate config +by running the following commands: ```code $ teleport-pagerduty configure > teleport-pagerduty.toml $ sudo mv teleport-pagerduty.toml /etc ``` -#### Editing the config file +
+ +The PagerDuty plugin expects the configuration to be in +`/etc/teleport-pagerduty.toml`, but you can override this with the `--config` +flag when you run the plugin binary later in this guide. + +
+ +Edit the configuration file in `/etc/teleport-pagerduty.toml` as explained +below: -After generating the config, edit it as follows: +### `[teleport]` + +The PagerDuty plugin uses this section to connect to your Teleport cluster: + + + +The address and credentials you configure depend on whether your plugin can +access the Auth Service directly: - -```yaml -(!examples/resources/plugins/teleport-pagerduty-self.toml!) + + +Set `addr` to your Proxy Service address with port `443`. + +Set `identity` to the identity file generated earlier: + +```toml +[teleport] +addr = "mytenant.teleport.sh:443" +identity = "/var/lib/teleport/plugins/slack/auth.pem" +``` + + + +Set `addr` to the address and port of your Auth Service. This address must be +reachable from the Teleport PagerDuty plugin. + +Set `client_key`, `client_crt`, and `root_cas` to the identity files +generated earlier: + +```toml +[teleport] +addr = "localhost:3025" +client_key = "/var/lib/teleport/plugins/slack/auth.key" # Teleport GRPC client secret key +client_crt = "/var/lib/teleport/plugins/slack/auth.crt" # Teleport GRPC client certificate +root_cas = "/var/lib/teleport/plugins/slack/auth.cas" # Teleport cluster CA certs ``` - + + + + + +Set `addr` to your Teleport Cloud tenant address with port `443`. + +Set `identity` to the identity file generated earlier: + +```toml +[teleport] +addr = "mytenant.teleport.sh:443" +identity = "/var/lib/teleport/plugins/slack/auth.pem" +``` + + + +### `[pagerduty]` + +Assign `api_key` to the PagerDuty API key you generated earlier. + +Assign `user_email` to the email address of a PagerDuty user on the account +associated with your API key. When the PagerDuty plugin creates a new incident, +PagerDuty will display this incident as created by that user. + +
+ +This guide has assumed that the Teleport PagerDuty plugin uses +`pagerduty_notify_service` annotation to determine which services to notify of +new Access Request events and the `pagerduty_services` annotation to configure +auto-approval. + +If you would like to use a different name for these annotations in your Teleport +roles, you can assign the `pagerduty.notify_service` and `pagerduty.services` +fields. + +
+ +The final configuration should resemble the following: + + + ```yaml (!examples/resources/plugins/teleport-pagerduty-cloud.toml!) ``` + +```yaml +(!examples/resources/plugins/teleport-pagerduty-self.toml!) +``` + -### Testing the plugin +## Step 7/8. Test the PagerDuty plugin -With the config above, you should be able to run the plugin invoking -`teleport-pagerduty start -d`. The will provide some debug information to make sure -the bot can connect to PagerDuty. +After you configure the PagerDuty plugin, run the following command to start it. +The `-d` flag will provide debug information to ensure that the plugin can +connect to PagerDuty and your Teleport cluster: ```code $ teleport-pagerduty start -d @@ -124,58 +576,92 @@ $ teleport-pagerduty start -d # DEBU Setting up the webhook extensions pagerduty/main.go:178 ``` -By default, `teleport-pagerduty` will assume its config is in `/etc/teleport-pagerduty.toml`, but you can override it with `--config` option. +### Create an Access Request -### Set up systemd +As the Teleport user `myuser`, create an Access Request for the `editor` role: -In production, we recommend starting the Teleport plugin daemon via an init system like systemd. Here's the recommended Teleport plugin service unit file for systemd: +(!docs/pages/includes/plugins/create-request.mdx!) -```code -(!examples/systemd/plugins/teleport-pagerduty.service!) +You should see a log resembling the following on your PagerDuty plugin host: + +``` +INFO Successfully created PagerDuty incident pd_incident_id:00000000000000 +pd_service_name:Teleport Access Request Notifications +request_id:00000000-0000-0000-0000-000000000000 request_op:put +request_state:PENDING pagerduty/app.go:366 ``` -Save this as `teleport-pagerduty.service`. +In PagerDuty, you will see a new incident containing information about the +Access Request: -#### Example PagerDuty request +![PagerDuty dashboard showing an Access +Request](../../../img/enterprise/plugins/pagerduty/new-access-req-incident.png) - +(!docs/pages/includes/plugins/resolve-request.mdx!) + + + +When the PagerDuty plugin sends a notification, anyone who receives the +notification can follow the enclosed link to an Access Reqeust URL. While users +must be authorized via their Teleport roles to review Access Request, you +should still check the Teleport audit log to ensure that the right users are +reviewing the right requests. + +When auditing Access Request reviews, check for events with the type `Access +Request Reviewed` in the Teleport Web UI and `access_request.review` if reviewing the audit log on the +Auth Service host. + + + +### Trigger an auto-approval -## On-call auto-approval +As your Teleport user, create an Access Request for the `demo-role` role. -The PagerDuty plugin has an option to auto-approve Access Requests. This -feature will map an external SSO identity to a PagerDuty on-call email address. -If the user requesting matches the person on call the request will be -automatically approved. +You will see a log similar to the following on your PagerDuty plugin host: -This feature can be enabled via the PagerDuty config file using `auto_approve = true`. +``` +INFO Successfully submitted a request approval +pd_user_email:myuser@example.com pd_user_name:My User +request_id:00000000-0000-0000-0000-000000000000 request_op:put +request_state:PENDING pagerduty/app.go:511 +``` + +Your Access Request will appear as `APPROVED`: +```code +$ tsh requests ls +ID User Roles Created (UTC) Status +------------------------------------ ------------------ --------- ------------------- -------- +00000000-0000-0000-0000-000000000000 myuser@example.com demo-role 12 Aug 22 18:30 UTC APPROVED ``` -# Example teleport-pagerduty.toml snippet -#... -[pagerduty] -api_key = "key" # PagerDuty API Key -user_email = "me@example.com" # PagerDuty bot user email (Could be admin email) -service_id = "PIJ90N7" # PagerDuty service id -auto_approve = true # Auto approve + +## Step 8/8. Set up systemd + +In production, we recommend starting the Teleport plugin daemon via an init +system like systemd. Here's the recommended Teleport plugin service unit file +for systemd: + +```ini +(!examples/systemd/plugins/teleport-pagerduty.service!) ``` -## Audit log +Save this as `teleport-pagerduty.service` in either `/usr/lib/systemd/system/` +or another [unit file load +path](https://www.freedesktop.org/software/systemd/man/systemd.unit.html#Unit%20File%20Load%20Path) +supported by systemd. + +Enable and start the plugin: -The plugin will let anyone with access to the PagerDuty account so it's -important to review Teleport's audit log. +```code +$ sudo systemctl enable teleport-pagerduty +$ sudo systemctl start teleport-pagerduty +``` ## Feedback -If you have any issues with this plugin please create an [issue here](https://github.com/gravitational/teleport-plugins/issues/new). +If you have any issues with this plugin please create a [GitHub +issue](https://github.com/gravitational/teleport-plugins/issues/new). diff --git a/docs/pages/includes/commercial-prereqs-tabs.mdx b/docs/pages/includes/commercial-prereqs-tabs.mdx index 69d6c0cea7ec9..7b65d6fd35708 100644 --- a/docs/pages/includes/commercial-prereqs-tabs.mdx +++ b/docs/pages/includes/commercial-prereqs-tabs.mdx @@ -2,8 +2,9 @@ -- A running Teleport cluster. For details on how to set this up, see our Enterprise - [Getting Started](/docs/enterprise/getting-started) guide. +- A running Teleport cluster, including the Auth Service and Proxy Service. For + details on how to set this up, see our Enterprise [Getting + Started](/docs/enterprise/getting-started) guide. - The `tctl` admin tool and `tsh` client tool version >= (=teleport.version=), which you can download by visiting the @@ -21,8 +22,9 @@ -- A Teleport Cloud account. If you do not have one, visit the - [sign up page](https://goteleport.com/signup/) to begin your free trial. +- A Teleport Cloud account, which includes a running Auth Service and Proxy + Service. If you do not have a Teleport Cloud account, visit the [sign up + page](https://goteleport.com/signup/) to begin your free trial. - The `tctl` admin tool and `tsh` client tool version >= (=cloud.version=). To download these tools, visit the [Downloads](/docs/cloud/downloads) page. @@ -36,4 +38,4 @@ ``` - \ No newline at end of file + diff --git a/examples/resources/plugins/teleport-pagerduty-cloud.toml b/examples/resources/plugins/teleport-pagerduty-cloud.toml index 1331624d4140a..f9a7899517108 100644 --- a/examples/resources/plugins/teleport-pagerduty-cloud.toml +++ b/examples/resources/plugins/teleport-pagerduty-cloud.toml @@ -6,21 +6,7 @@ identity = "/var/lib/teleport/plugins/pagerduty/auth.pem" # Identity file path [pagerduty] api_key = "key" # PagerDuty API Key user_email = "me@example.com" # PagerDuty bot user email (Could be admin email) -service_id = "PIJ90N7" # PagerDuty service id - -[http] -public_addr = "example.com" # URL on which callback server is accessible externally, e.g. [https://]teleport-pagerduty.example.com -# listen_addr = ":8081" # Network address in format [addr]:port on which callback server listens, e.g. 0.0.0.0:443 -https_key_file = "/var/lib/teleport/plugins/pagerduty/server.key" # TLS private key -https_cert_file = "/var/lib/teleport/plugins/pagerduty/server.crt" # TLS certificate - -[http.tls] -verify_client_cert = true # The preferred way to authenticate webhooks on Pagerduty. See more: https://developer.pagerduty.com/docs/webhooks/webhooks-mutual-tls - -[http.basic_auth] -user = "user" -password = "password" # If you prefer to use basic auth for Pagerduty Webhooks authentication, use this section to store user and password [log] output = "stderr" # Logger output. Could be "stdout", "stderr" or "/var/lib/teleport/pagerduty.log" -severity = "INFO" # Logger severity. Could be "INFO", "ERROR", "DEBUG" or "WARN". \ No newline at end of file +severity = "INFO" # Logger severity. Could be "INFO", "ERROR", "DEBUG" or "WARN". diff --git a/examples/resources/plugins/teleport-pagerduty-self.toml b/examples/resources/plugins/teleport-pagerduty-self.toml index ad361bfa21672..d935a451fae0b 100644 --- a/examples/resources/plugins/teleport-pagerduty-self.toml +++ b/examples/resources/plugins/teleport-pagerduty-self.toml @@ -8,21 +8,7 @@ root_cas = "/var/lib/teleport/plugins/pagerduty/auth.cas" # Teleport cluster C [pagerduty] api_key = "key" # PagerDuty API Key user_email = "me@example.com" # PagerDuty bot user email (Could be admin email) -service_id = "PIJ90N7" # PagerDuty service id - -[http] -public_addr = "example.com" # URL on which callback server is accessible externally, e.g. [https://]teleport-pagerduty.example.com -# listen_addr = ":8081" # Network address in format [addr]:port on which callback server listens, e.g. 0.0.0.0:443 -https_key_file = "/var/lib/teleport/plugins/pagerduty/server.key" # TLS private key -https_cert_file = "/var/lib/teleport/plugins/pagerduty/server.crt" # TLS certificate - -[http.tls] -verify_client_cert = true # The preferred way to authenticate webhooks on Pagerduty. See more: https://developer.pagerduty.com/docs/webhooks/webhooks-mutual-tls - -[http.basic_auth] -user = "user" -password = "password" # If you prefer to use basic auth for Pagerduty Webhooks authentication, use this section to store user and password [log] output = "stderr" # Logger output. Could be "stdout", "stderr" or "/var/lib/teleport/pagerduty.log" -severity = "INFO" # Logger severity. Could be "INFO", "ERROR", "DEBUG" or "WARN". \ No newline at end of file +severity = "INFO" # Logger severity. Could be "INFO", "ERROR", "DEBUG" or "WARN".