UDFサーバー - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
ft:locale
ja-JP
ft:lastEdition
2021-03-30
dita:mapPath
ja-JP/jpx1556733107962.ditamap
dita:ditavalPath
ja-JP/jpx1556733107962.ditaval
dita:id
B035-1184
Product Category
Software
Teradata Vantage

保護モードのUDF(セキュア モードのUDFを含む)は、サーバーと呼ばれる別個のプロセスのもとで実行されます。外部のセキュリティを必要とする構成のUDFは、セキュア モードと呼ばれる、保護モードのサブタイプで実行されます。システムは、保護モードとセキュア モードの両方の関数をサポートするために、別個のプロセス(つまりサーバー)を設定します(詳細については<Teradata Vantage™- SQL外部ルーチン プログラミング、B035-1147>を参照)。

セッションで最初にセキュア モードのUDFを呼び出すと、以下の一連のイベントが発生します(このプロセスは、保護モードのUDFの場合と基本的に同じです)。

  1. UDFサーバー設定ロジックが許可情報を調べ、OSユーザーの許可のために設定済みのセキュア サーバー プロセスがあるかどうかを判別します。

    セッションの中でUDFが呼び出されたのはこれが初めてなので、設定済みのセキュア サーバー プロセスはありません。

  2. ユーザー名とパスワードを確認します。
  3. セキュア サーバー プロセスを作成し、UDFを実行します。

セッションでUDFが実行されるのがこれで初めてではない場合、以下の一連のイベントが生じます。

  1. UDFセキュア サーバー設定ロジックが許可情報を読み、この許可で設定済みのセキュア サーバー プロセスがすでにあることを判別します。
  2. UDFは既存のセキュア サーバーを使って実行されます。

最大数のセキュア サーバーが作成済みのところに、確立済みのセキュア サーバーを持たない所定の許可の新規リクエストが出された場合、以下の一連のイベントが生じます。

  1. UDFセキュア サーバー ロジックが、所定の許可のセキュア サーバーを見つけようとします。しかしそれを見つけることができず、最大数のセキュア サーバーが設定済みであることを判別します。
  2. 許可が設定されていないため、プロセスはユーザー名とパスワードを検証することにより、OSユーザーを検証します。

    指定された許可情報を使ってログオンしようとして失敗する場合、システムはセッションにエラーを返します。

  3. UDFセキュア サーバー ロジックは最も使用度の低いセキュア サーバー プロセスを見つけて、それを終了します。
  4. 新しいセキュア サーバー プロセスが作成され、UDFが実行されます。