Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - SQL-Referenzhandbuch » Ansichten » Kompatibilitätsansichten

 

SYSUSERPERM-Kompatibilitätsansicht (nicht mehr empfohlen)

Jede Zeile der SYSUSERPERM-Ansicht beschreibt eine Benutzer-ID. Sie müssen das SELECT ANY TABLE-Systemprivileg haben, um Daten in dieser Ansicht anzeigen zu können.

Diese Ansicht wird nicht mehr empfohlen, weil sie nur die in früheren Versionen verfügbaren Berechtigungen anzeigt. Sie sollten Ihre Anwendung so ändern, dass sie stattdessen die konsolidierte Ansicht SYSROLEGRANTS verwendet.

Die Tabellen und Spalten, aus denen diese Ansicht besteht, werden von der SQL-Anweisung unten geliefert. Um weitere Informationen über eine bestimmte Tabelle oder Spalte zu erhalten, verwenden Sie die unter der Ansichtsdefinition verfügbaren Links.



ALTER VIEW "SYS"."SYSUSERPERM"
  as select b.user_id,
    b.object_id,
    b.user_name,
    b.password,
    if AA.resourceauth is not null and AA.resourceauth > 0 then
      'Y' else 'N' endif as resourceauth,
    if AA.dbaauth is not null and AA.dbaauth > 0 then
      'Y' else 'N' endif as dbaauth,
    'N' as scheduleauth,
    if exists(select * from SYS.ISYSOPTION as opt
      where opt."option" like '%db_publisher%' and opt.setting not like '%-1'
      and b.user_id = cast(opt.setting as integer)) then
      'Y' else 'N' endif as publishauth,
    if AA.remotedbaauth is not null and AA.remotedbaauth > 0 then
      'Y' else 'N' endif as remotedbaauth,
    if b.user_type = (0x02|0x04|0x08) or b.user_name in( 'SYS','PUBLIC','diagnostics','SYS_SPATIAL_ADMIN_ROLE','rs_systabgroup','SA_DEBUG','dbo' ) then
      'Y' else 'N' endif as user_group,
    r.remarks
    from SYS.ISYSUSER as b
      left outer join SYS.ISYSREMARK as r on(b.object_id = r.object_id)
      left outer join(select sum(if sp_auth_sys_role_info.auth = 'RESOURCE' then 1 else 0 endif) as resourceauth,
        sum(if sp_auth_sys_role_info.auth = 'DBA' then 1 else 0 endif) as dbaauth,
        sum(if sp_auth_sys_role_info.auth = 'REMOTE DBA' then 1 else 0 endif) as remotedbaauth,
        ISYSROLEGRANT.grantee
        from SYS.ISYSROLEGRANT natural join dbo.sp_auth_sys_role_info()
        where ISYSROLEGRANT.grant_type <> (0x02|0x04)
        and sp_auth_sys_role_info.auth in( 'DBA','RESOURCE','REMOTE DBA' ) 
        group by ISYSROLEGRANT.grantee) as AA
      on(AA.grantee = b.user_id)
 Siehe auch