sys.database_principals (Transact-SQL)
データベース内のプリンシパルごとに 1 行のデータを返します。
列名 |
データ型 |
説明 |
---|---|---|
name |
sysname |
プリンシパルの名前。データベース内で一意です。 |
principal_id |
int |
プリンシパルの ID。データベース内で一意です。 |
type |
char(1) |
プリンシパルの種類。 S = SQL ユーザー U = Windows ユーザー G = Windows グループ A = アプリケーション ロール R = データベース ロール C = 証明書にマップされているユーザー K = 非対称キーにマップされているユーザー |
type_desc |
nvarchar(60) |
プリンシパルの種類の説明。 SQL_USER WINDOWS_USER WINDOWS_GROUP APPLICATION_ROLE DATABASE_ROLE CERTIFICATE_MAPPED_USER ASYMMETRIC_KEY_MAPPED_USER |
default_schema_name |
sysname |
SQL 名でスキーマが指定されなかったときに使用される名前。種類が S、U、A 以外のプリンシパルの場合は Null になります。 |
create_date |
datetime |
プリンシパルが作成された時刻。 |
modify_date |
datetime |
プリンシパルが変更された時刻。 |
owning_principal_id |
int |
このプリンシパルを所有するプリンシパルの ID。データベース ロール以外のすべてのプリンシパルは、dbo が所有する必要があります。 |
sid |
varbinary(85) |
プリンシパルがデータベース外部で定義されている場合 (種類が S、U、G の場合) は SID (セキュリティ識別子)。それ以外の場合は NULL。 |
is_fixed_role |
bit |
1 の場合は、固定データベース ロール db_owner、db_accessadmin、db_datareader、db_datawriter、db_ddladmin、db_securityadmin、db_backupoperator、db_denydatareader、db_denydatawriter のいずれかのエントリを表します。 |
権限
すべてのユーザーが自分のユーザー名、システム ユーザー、および固定データベース ロールを参照できます。他のユーザーを参照するには、ALTER ANY USER、またはユーザーに対する権限が必要です。ユーザー定義ロールを参照するには、ALTER ANY ROLE、またはロールのメンバーシップが必要です。
SQL Server 2005 以降のバージョンでは、カタログ ビューでのメタデータの表示が、ユーザーが所有しているかそのユーザーが権限を許可されている、セキュリティ保護可能なメタデータに制限されます。詳細については、「メタデータ表示の構成」を参照してください。