1. 程式人生 > 其它 >第二十一章 Caché 變數大全 $USERNAME 變數

第二十一章 Caché 變數大全 $USERNAME 變數

技術標籤:Caché 變數大全CachéCacheusername系統變數基礎變數

文章目錄

第二十一章 Caché 變數大全 $USERNAME 變數

包含當前程序的使用者名稱。

大綱

$USERNAME

描述

$USERNAME包含當前程序的使用者名稱。可以採用以下兩種形式之一:

  • 當前使用者的名稱;例如:Mary。如果不允許多個安全域,則返回此值。
  • 當前使用者的名稱和系統地址;例如:[email protected]。如果允許多個安全域,則返回此值。

要允許多個安全域,請轉到管理門戶,選擇系統管理、安全、系統安全、系統範圍安全引數。選中允許多個安全域複選框。對此設定的更改將應用於新呼叫的程序;更改它不會影響當前程序返回的值。

不能使用set命令或new命令修改此值。但是,新的$ROLES還會堆疊當前的$username值。

通常,$username值是在連線時指定的使用者名稱。但是,如果允許未經驗證的訪問,則使用者終端或ODBC客戶端可以連線到Caché,而無需指定使用者名稱。在本例中,$username包含字串“UnnownUser”

使用JOB命令建立程序時,它繼承與其父程序相同的$USERNAME$ROLES值。

可以使用SQL CREATE USER語句建立使用者名稱,使用SQL DROP USER語句刪除使用者名稱。可以使用SQL ALTER USER語句更改使用者密碼。通過使用SQL GRANT

語句或使用系統實用程式向用戶新增角色,可以為使用者分配角色。您可以使用$ROLES特殊變數訪問分配給當前程序的角色列表。可以使用SQL REVOKE語句撤銷使用者的角色。

$USERNAME在CachéSQL中用作USER、CURRENT_USER和SESSION_USER的預設值。

可以通過呼叫$SYSTEM.Process.UserName()方法返回當前程序或指定程序的使用者名稱。

示例

下面的示例返回當前程序的使用者名稱。

DHC-APP>WRITE $USERNAME
yx

下面的示例返回當前程序的域名。

DHC-APP>WRITE $PIECE($USERNAME,
"@",2)