データベースへのユーザーのアクセス権情報が含まれている、ユーザーのデータベース・アクセス構造体のリストを取得します。
構文
EsbGetDatabaseAccess ( hCtx, User, AppName, DbName, pItems ) ByVal hCtx As Long ByVal User As String ByVal AppName As String ByVal DbName As String pItems As Integer
パラメータ | 説明 |
---|---|
hCtx |
VB APIコンテキスト・ハンドル。 |
User |
ユーザー名。空の文字列の場合は、指定したアプリケーションとデータベースのすべてのユーザーがリストされます。 |
AppName |
アプリケーション名。空の文字列の場合は、指定したユーザーのすべてアプリケーションとデータベースがリストされます。 |
DbName |
データベース名。空の文字列の場合は、指定したユーザーまたはアプリケーションのすべてのデータベースがリストされます。 |
pItems |
ユーザー・データベース構造体のアイテムを受け取る変数のアドレス。 |
備考
User、AppName、またはDbNameのいずれかが空の文字列の場合、ワイルドカードとして扱われ、該当するタイプのすべてのアイテムがリストされます。AppNameが空の文字列の場合、DbNameも空の文字列としてみなされます。これらの引数のうち、2つまでは空の文字列でもかまいませんが、3つすべてを空の文字列とすることはできません。
ユーザー・データベース構造体のAccessフィールドは、データベースに対してユーザーに与えられたアクセス権を表します。一方MaxAccessフィールドは、すべてのソースから得られるユーザーの最も高いアクセス権(たとえばグループを介したアクセス権やデフォルトのデータベース・アクセス権など)を表します。
フィルタのアクセス権限は、ESB_PRIV_DBLOAD権限と同じです。
戻り値
正常終了の場合は、ユーザーおよびデータベースのアイテムがpItemsに戻され、ユーザー・データベース構造体のリストが生成されます。このリストにはEsbGetNextItem()を使用してアクセスできます。
アクセス
この関数を使用するには、独自のデータベース・アクセス情報を取得する場合を除いて、呼出し元は指定したデータベースに対してデータベース・デザイン権限(ESB_PRIV_DBDESIGN)を持っている必要があります。
例
Declare Function EsbGetDatabaseAccess Lib "ESBAPIN" (ByVal hCtx As Long, ByVal User As String, ByVal AppName As String, ByVal DbName As String, Items As Integer) As Long Sub ESB_GetDatabaseAccess () Dim Items As Integer Dim AppName As String Dim DbName As String Dim User As String Dim UserDb As ESB_USERDB_T Dim sts As Long AppName = "Sample" DbName = "Basic" User = "Joseph" '******************** ' Get Database Access '******************** sts = EsbGetDatabaseAccess (hCtx, User, AppName, DbName, Items) For n = 1 To Items '****************************** ' Get next User Database Access ' structure from the list '****************************** sts = EsbGetNextItem (hCtx, ESB_USERDB_TYPE, UserDb) Next End Sub
関連トピック