Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

$USERNAME

現在のプロセスのユーザ名を含みます。

Synopsis

$USERNAME

概要

$USERNAME は、現在のプロセスのユーザ名を含みます。これは以下の形式のうちのいずれかです。

  • 現在のユーザ名を返します。例 : Mary。この値は、複数のセキュリティ・ドメインが許可されていない場合に返されます。

  • 現在のユーザの名前とシステム・アドレスを返します。例 : Mary@jupiter。この値は、複数のセキュリティ・ドメインが許可されている場合に返されます。

複数のセキュリティ・ドメインを許可するには、管理ポータルに進み、システム, セキュリティ管理, システムセキュリティ設定, システムワイドセキュリティパラメータ を選択します。[複数セキュリティ・ドメインを許可する] チェック・ボックスにチェックを付けます。この設定に対する変更は、新しく呼び出されたプロセスに適用され、現在のプロセスから返された値には影響を与えません。

SET コマンドまたは NEW コマンドを使用して、この値を変更することはできません。ただし、NEW $ROLES は、現在の $USERNAME の値もスタックに配置します。

一般的に、$USERNAME 値は接続時に指定されたユーザ名になります。ただし、非認証のアクセスが許可されている場合、ユーザ・ターミナルまたは ODBC クライアントがユーザ名を指定せずに Caché に接続する場合があります。この場合、$USERNAME には文字列 “UnknownUser” が含まれます。

JOB コマンドを使用してプロセスを作成すると、その親のプロセスと同じ $USERNAME および $ROLES の値が継承されます。

ユーザ名を作成するには SQL の CREATE USER 文を使用し、削除するには SQL の DROP USER 文を使用します。ユーザのパスワードを変更するには、SQL の ALTER USER 文を使用します。ロールをユーザに割り当てるには、SQL の GRANT 文を使用するか、ロールをユーザに追加するシステム・ユーティリティを使用します。現在のプロセスに割り当てられているロールのリストにアクセスするには、$ROLES 特殊変数を使用します。ロールをユーザから削除するには、SQL の REVOKE 文を使用します。

$USERNAME は、USER、CURRENT_USER、SESSION_USER の既定のフィールド値として Caché SQL で使用されます。

$SYSTEM.Process.UserName()Opens in a new tab メソッドを呼び出すことで、現在のプロセスまたは指定されたプロセスのユーザ名を返すことができます。

以下の例は、現在のプロセスのユーザ名を返します。

   WRITE $USERNAME

以下の例は、現在のプロセスのドメイン名を返します。

   WRITE $PIECE($USERNAME,"@",2)

関連項目

FeedbackOpens in a new tab