Skip to content

Commit

Permalink
Merge branch 'develop' into docs/pgd/cli/fixindextonewformat
Browse files Browse the repository at this point in the history
  • Loading branch information
djw-m authored Oct 19, 2023
2 parents 0b7f0ed + a7fe351 commit 4d3f800
Show file tree
Hide file tree
Showing 137 changed files with 9,630 additions and 4,010 deletions.
123 changes: 62 additions & 61 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ When deploying in your cloud account, you need to set up your cloud service prov
BigAnimal's cloud account offers a seamless deployment option if you don't want to set up a separate cloud account for your clusters. You can deploy a cluster in BigAnimal's cloud account instantly.

!!! Note Note
Currently, when you deploy in BigAnimal's cloud account, you can use AWS or Google Cloud as your cloud provider.
Currently, when you deploy in BigAnimal's cloud account, you can use AWS or Google Cloud as your cloud provider. If you want to use your cloud account's Identity and Access Management (IAM) service for database authentication, you must deploy clusters in your own cloud account. If you deploy using BigAnimal's cloud account, the underlying cloud provider is hidden, so you can't manage IAM access.
!!!


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ If you use a single database to host multiple schemas, create a database owner a
```
## IAM authentication for Postgres

Any AWS user with an AWS account connected to a BigAnimal subscription who has the Postgres role of iam_aws can authenticate to the database using their AWS IAM credentials.
Any user with a supported cloud account connected to a BigAnimal subscription who has the Postgres IAM role iam_aws, iam_azure, or iam_gcp can authenticate to the database using their IAM credentials.

### Configuring IAM for Postgres

Expand All @@ -109,32 +109,37 @@ Provision your cluster before configuring IAM for Postgres.
1. Select **Create Cluster** or **Save**.
!!!note
To turn on IAM authentication using the CLI, see [Using IAM authentication on AWS](/biganimal/latest/reference/cli/using_features/#iam-authentication-cli-commands).
1. In AWS, get the ARN of each IAM user requiring database access. In the AWS account connected to BigAnimal, use AWS Identity and Access Management (IAM) to perform user management. See the [AWS documentation](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_manage.html).
1. From your cloud provider, get the user name of each IAM user requiring database access. In the cloud account connected to BigAnimal, use Identity and Access Management (IAM) to perform user management.

1. In Postgres, if the IAM role doesn’t exist yet, run this Postgres command:
1. In Postgres, if the IAM role doesn’t exist yet, use the `CREATE ROLE` command. For example, for AWS, use:

```
CREATE ROLE "iam_aws";
```

1. For each IAM user, run this Postgres command:
1. For each IAM user, run the `CREATE USER` Postgres command. For example, for AWS, use:

```
CREATE USER "<ARN>" IN ROLE iam_aws;
```

Where &lt;ARN> is the Amazon resource name. (For Azure, use the user principal name. For GCP, use the email address.)

### Logging in to Postgres using IAM credentials

If IAM integration is configured for your cluster, you can log in to Postgres using your AWS Amazon Resource Name (ARN) and access key. Using this ARN + access key combination allows you to connect to your Postgres database using your AWS IAM standard credentials.
If IAM integration is configured for your cluster, you can log in to Postgres using your cloud credentials. Alternatively, you can use your token instead of your password. Logging in either way allows you to connect to your Postgres database using your cloud account's IAM standard credentials.

For either method, you must first authenticate to your cloud service provider IAM to get your password or token.

!!! Note
You can continue to log in using your Postgres username and password. However, doing so doesn’t provide IAM authentication even if this feature is configured.

1. Using your AWS CLI or Cloud shell, obtain your ARN and access key. For guidance on obtaining your ARN and access key, see [Managing access keys for IAM users](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html).
1. Get your credentials for your IAM-managed cloud account.
- For AWS, your password is your access key (in the form &lt;access key id>:&lt;secret access key>). To get your access key, see [get-access-key-info](https://docs.aws.amazon.com/cli/latest/reference/sts/get-access-key-info.html) To get your authorization token, see [get-authorization-token](https://docs.aws.amazon.com/cli/latest/reference/ecr-public/get-authorization-token.html).
- For GCP, to get your access token, see [Create a short-lived access token](https://cloud.google.com/iam/docs/create-short-lived-credentials-direct).
- For Azure, to get your access token, see [the get-access-token command](https://learn.microsoft.com/en-us/cli/azure/account?view=azure-cli-latest#az-account-get-access-token()).
1. Connect to Postgres using your IAM credentials.
1. When prompted for the password, enter your access key (`<access key ID><secret access key>`).

### Using IAM authentication CLI commands

For information on integrating with IAM on AWS using the CLI, see [IAM authentication CLI commands](/biganimal/latest/reference/cli/using_features/#iam-authentication-cli-commands).

Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ PostgreSQL contrib extensions/modules:
- pglogical3 (PostgreSQL v12 and v13 only)
- pgrowlocks
- pgstattupple
- postgis
- postgres_fdw
- seg (PostgreSQL v12 only)
- sslinfo
Expand Down Expand Up @@ -70,7 +69,7 @@ EDB extensions:

## Installing extensions

Use the [`CREATE EXTENSION`](https://www.postgresql.org/docs/current/sql-createextension.html) command to install most extensions. You must enable certain extensions, including the EDB Postgres Tuner (pg_tuner) extension and PostGIS on the **DB Configuration** tab of the Create or Edit Cluster page of the BigAnimal portal.
Use the [`CREATE EXTENSION`](https://www.postgresql.org/docs/current/sql-createextension.html) command to install extensions, except for the EDB Postgres Tuner (pg_tuner) extension. You enable edb_pg_tuner on the **DB Configuration** tab of the Create or Edit Cluster page of the BigAnimal portal.


### Example: Installing multiple extensions
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@ redirects:
- /edb_plus/latest/03_installing_edb_plus/install_on_linux/configuring_linux_installation/
---

By default, the `pg_hba.conf` file for the RPM installer enforces `IDENT` authentication. Before invoking EDB\*Plus, you must either modify the `pg_hba.conf` file, changing the authentication method to a form other than `IDENT` (and restarting the server), or perform the following steps to ensure that an `IDENT` server is accessible:
By default, the `pg_hba.conf` file for the RPM installer enforces `IDENT` authentication. Before invoking EDB\*Plus, you must either:
- Modify the `pg_hba.conf` file, changing the authentication method to a form other than `IDENT` (and restarting the server.
- Ensure that an `IDENT` server is accessible.

You must confirm that an `identd` server is installed and running. You can use the `yum` package manager to install an `identd` server by invoking the command:
To ensure an `IDENT` server is accessible, you must confirm that an `identd` server is installed and running. You can use the `yum` package manager to install an `identd` server.

- On RHEL or CentOS 7:

Expand All @@ -21,7 +23,7 @@ You must confirm that an `identd` server is installed and running. You can use t
dnf -y install xinetd authd
```

The command should create a file named `/etc/xinetd.d/auth` that contains:
The command creates a file named `/etc/xinetd.d/auth` that contains:

```text
service auth
Expand All @@ -37,9 +39,9 @@ server = /usr/sbin/in.authd server_args = -t60 --xerror –os
```

!!! Note
If the file includes a `-E` argument at the end of the server arguments, please erase `-E`.
If the file includes a `-E` argument at the end of the server arguments, delete `-E`.

Then, to start the `identd` server, invoke the following commands:
To start the `identd` server:

```text
systemctl enable xinetd
Expand All @@ -55,18 +57,18 @@ Open the `pg_ident.conf` file and create a user mapping:

Where:

- The name specified in the `map_name` column is a user-defined name that will identify the mapping in the `pg_hba.conf` file.
- The name specified in the `map_name` column is a name you define to identify the mapping in the `pg_hba.conf` file.
- The name specified in the `system_username` column is `enterprisedb`.
- The name specified in the `postgres_username` column is `enterprisedb`.

Then, open the `pg_hba.conf` file and modify the `IDENT` entries:

- If you are using an IPv4 local connection, modify the file entry to read:
- If you're using an IPv4 local connection, modify the file entry to read:

`host all all 127.0.0.0/0 ident map=edbas`

- If you are using an IPv6 local connection, modify the file entry to read:
- If you're using an IPv6 local connection, modify the file entry to read:

`host all all ::1/128 ident map=edbas`

You must restart the Advanced Server service before invoking EDB\*Plus. For detailed information about controlling the Advanced Server service, see the online documentation for [EDB Postgres Advanced Server](/epas/latest/).
You must restart the EDB Postgres Advanced Server service before invoking EDB\*Plus. For detailed information about EDB Postgres Advanced Server, see the [EDB Postgres Advanced Server](/epas/latest/) documentation.
Loading

0 comments on commit 4d3f800

Please sign in to comment.