

# Trusted Language Extensions for PostgreSQL の概要
<a name="PostgreSQL_trusted_language_extension.overview"></a>

Trusted Language Extensions for PostgreSQL は PostgreSQL 拡張機能で、他の PostgreSQL 拡張機能をセットアップするのと同じ方法で RDS for PostgreSQL DB インスタンスにインストールします。pgAdmin クライアントツールのサンプルデータベースの次の画像では、`pg_tle` 拡張機能を構成するコンポーネントの一部を確認できます。

![\[TLE 開発キットを占めるコンポーネントの一部を示す画像\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/images/apg-pg_tle-installed-view-in-pgAdmin.png)


以下の詳細を表示できます。

1. Trusted Language Extensions (TLE) for PostgreSQL 開発キットは `pg_tle` 拡張機能としてパッケージ化されています。そのため、`pg_tle` がインストールされているデータベースで使用可能な拡張機能にそれが追加されます。

1. TLE には独自のスキーマ、`pgtle` があります。このスキーマには、作成した拡張機能をインストールおよび管理するためのヘルパー関数 (3) が含まれています。

1. TLE には、拡張機能のインストール、登録、管理のためのヘルパー関数が十数種類用意されています。これらの関数の詳細については、「[Trusted Language Extensions for PostgreSQL の関数リファレンス](PostgreSQL_trusted_language_extension-functions-reference.md)」を参照してください。

`pg_tle` 拡張機能のその他のコンポーネントには、以下のものが含まれています。
+ **`pgtle_admin` ロール** – `pgtle_admin` ロールは、`pg_tle` 拡張機能のインストール時に作成されます。この役職には特権があり、そのように扱われる必要があります。データベースユーザーに `pgtle_admin` ロールを付与する場合は、*最小特権の原則*に従うことを強くお勧めします。つまり、`postgres` のような新しい TLE 拡張機能の作成、インストール、管理が許可されているデータベースユーザーにのみ `pgtle_admin` ロールを付与します。
+ **`pgtle.feature_info` テーブル** – `pgtle.feature_info` テーブルは保護されたテーブルで、TLE、フック、およびそれらが使用するカスタムストアドプロシージャと関数に関する情報が含まれています。`pgtle_admin`権限がある場合は、以下の Trusted Language Extensions の関数を使用して、テーブル内の情報を追加および更新します。
  + [pgtle.register\$1feature](PostgreSQL_trusted_language_extension-functions-reference.md#pgtle.register_feature)
  + [pgtle.register\$1feature\$1if\$1not\$1exists](PostgreSQL_trusted_language_extension-functions-reference.md#pgtle.register_feature_if_not_exists)
  + [pgtle.unregister\$1feature](PostgreSQL_trusted_language_extension-functions-reference.md#pgtle.unregister_feature)
  + [pgtle.unregister\$1feature\$1if\$1exists](PostgreSQL_trusted_language_extension-functions-reference.md#pgtle.unregister_feature_if_exists)