Как предоставить или обновить привилегию 'createsecureauth' в таблице db2 syscat.dbauth? - PullRequest
0 голосов
/ 28 января 2019

С помощью следующего запроса DB2 я могу просмотреть привилегию 'CREATESECUREAUTH':

select grantee, granteetype, createsecureauth from syscat.dbauth

Результат запроса выше:

GRANTEE     GRANTEETYPE     CREATESECUREAUTH
--------------------------------------------
DB2INST     U       N

Теперь я хочу обновить привилегию createsecureauth изОт 'N' до 'Y' для грантополучателя 'DB2INST' Но я не могу сделать это с помощью 'GRANT' или 'UPDATE'.Как это сделать?

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Следующий SQL сопоставляет столбцы SYSCAT.DBAUTH с именами привилегий, используемых в инструкциях GRANT (или REVOKE)

SELECT A.GRANTEE        AS AUTHID
,      A.GRANTEETYPE    AS AUTHIDTYPE
,      B.PRIVILEGE
,      CASE WHEN B.AUTH = 'G' THEN 'Y' ELSE 'N' END AS GRANTABLE
,      CURRENT SERVER   AS OBJECTNAME
,      ''               AS OBJECTSCHEMA
,      CAST ('DATABASE' AS VARCHAR (11)) AS OBJECTTYPE
FROM SYSCAT.DBAUTH A          
, LATERAL(VALUES
    (BINDADDAUTH         ,'BINDADD')
,   (CONNECTAUTH         ,'CONNECT')
,   (CREATETABAUTH       ,'CREATETAB')
,   (DBADMAUTH           ,'DBADM')
,   (EXTERNALROUTINEAUTH ,'CREATE_EXTERNAL_ROUTINE')
,   (IMPLSCHEMAAUTH      ,'IMPLICIT_SCHEMA')      
,   (LOADAUTH            ,'LOAD')
,   (NOFENCEAUTH         ,'CREATE_NOT_FENCED_ROUTINE') 
,   (QUIESCECONNECTAUTH  ,'QUIESCE_CONNECT')
,   (LIBRARYADMAUTH      ,'LIBRARYADMAUTH')
,   (SECURITYADMAUTH     ,'SECADM')
,   (SQLADMAUTH          ,'SQLADM')
,   (WLMADMAUTH          ,'WLMADM')
,   (EXPLAINAUTH         ,'EXPLAIN')
,   (DATAACCESSAUTH      ,'DATAACCESS')
,   (ACCESSCTRLAUTH      ,'ACCESSCTRL')
) B ( AUTH, PRIVILEGE )
WHERE  B.AUTH IN ('Y','G')
0 голосов
/ 28 января 2019

Эта привилегия называется по-другому, проверьте синтаксис GRANT :

GRANT CREATE_SECURE_OBJECT ON DATABASE TO USER HENRIK

Привилегия позволяет создавать защищенные объекты, т. Е. Безопасные триггеры и защищенные функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...