-551 on USAGE SEQUENCE

Marcello Abbruzzese Puricelli

-551 on USAGE SEQUENCE
Buongiorno a tutti.

La user MIAUSER ha la grant CREATE sullo schema PROVA1.

In RACF ha anche PROVA1 come secondary authid.



Con MIAUSER ho creato la SEQUENCE con il seguente DDL:

SET CURRENT SQLID = 'PROVA1';

CREATE SEQUENCE MYSEQ

ecc

.......

La sequence è stata creata con schema PROVA1 e owner PROVA1.

Se leggo la sequence appena creata (presentandomi con l'SQL ID originale MIAUSER) riesco ad utilizzarla senza problemi.



Voglio eseguire il bind di un programma (SQLJ) che deve usare questa sequence.

Se non specifico l'owner (quindi viene preso di default MIAUSER che esegue il comando), il bind termina in errore per -551:

MIAUSER DOES NOT HJAVE THE PRIVILEG TO PERFORM OPERATION O USAGE ON OBJECT PROVA1.MIASEQ. SQLCODE -551 SQLSTAT=42501



Se al contrario specifico l'OWNER uguale al QUALIFIER owner(PROVA1) qualifier(PROVA1)

il bind termina correttamente con RC=0.



E' un comportamento corretto?

Quale altra grant dovrei dare a MIAUSER per poter eseguire anche il bind di un programma che utilizza questa sequence avendo specificato owner(MIAUSER)?



Grazie a tutti per le info



Marcello Abbruzzese Puricelli
Cornèr Banca SA
Via Canova 16
6901 Lugano_Switzerland

General number: + 41 91 800 51 11
Fax: + 41 91 800 53 49
[login to unmask email]<mailto:[login to unmask email]>
corner.ch https://corner.ch


________________________________
[Cornèr Bank Ltd.] https://corner.ch

Warnings:
1_E-mail correspondence can involve HIGH RISKS (lack of confidentiality, potential manipulation of content and/or sender, delivery errors, viruses, etc.). Cornèr Bank Ltd.
therefore disclaims all liability for consequent losses and damages resulting from the use of e-mails. We strongly recommend to NOT SEND CONFIDENTIAL INFORMATION in
e-mail responses, to not include previous messages, and to manually enter the e-mail address each time.
2_In principle, Cornèr Bank Ltd. DOES NOT ACCEPT PAYMENT / TRADING ORDERS, REVOCATIONS OF ORDERS OR AUTHORIZATIONS, BLOCKING OF PAYMENT
CARDS OR OTHER INSTRUCTIONS BY E-MAIL. Should we however receive any e-mails of this type, we have no obligation to expressly reject them. Please speak to your
Financial Advisor directly, if you need to give instructions related to your account.
3_Should you have received this e-mail by mistake or do no longer wish to be contacted via e-mail in the future, then you are kindly asked to notify Cornèr Bank Ltd. immediately.
Finally, the e-mail received in error (including all attachments) must be permanently deleted and the distribution of such information to third parties is strictly prohibited.


[Cornèr Bank Ltd.] https://corner.ch

Angelo Sironi

R: -551 on USAGE SEQUENCE
(in response to Marcello Abbruzzese Puricelli)
Ciao Marcello,

credo (con il rischio di sbagliare…) che, se tu non ti
presenti come PROVA1, il DB2 non ti lascia fare nulla sulla Sequence per tu
come utente non hai autorità su quella Sequence. Tu sei autorizzato a
presentarti come PROVA1, e allora la cosa funzione. Prova sotto SPUFI o QMF
ad eseguire o meno il SET CURRENT SQLID = ‘PROVA1’ e poi la SELECT NEXT
VALUE della SEQUENCE e vedi cosa succede.



Per bypassare il problema devi dare le autorizzazioni he trovi sul SQL
Reference alla voce seguente:



Sequence reference

A sequence is referenced by using the NEXT VALUE and PREVIOUS VALUE

expressions specifying the name of the sequence.



…. Omissis ….



Notes®

Authorization:

If a sequence is referenced in a statement, the privileges that are held by

the authorization ID of the statement must include at least one of the

following:

v For the sequence identified in the statement:

– The USAGE privilege on the sequence

– Ownership of the sequence

v SYSADM or SYSCTRL authority



A presto,

Angelo

Da: Abbruzzese Marcello [mailto:[login to unmask email]
Inviato: mercoledì 22 novembre 2017 16:14
A: [login to unmask email]
Oggetto: [DB2UGITALY] - -551 on USAGE SEQUENCE



Buongiorno a tutti.

La user MIAUSER ha la grant CREATE sullo schema PROVA1.

In RACF ha anche PROVA1 come secondary authid.



Con MIAUSER ho creato la SEQUENCE con il seguente DDL:

SET CURRENT SQLID = 'PROVA1';

CREATE SEQUENCE MYSEQ

ecc

.......

La sequence è stata creata con schema PROVA1 e owner PROVA1.

Se leggo la sequence appena creata (presentandomi con l'SQL ID originale
MIAUSER) riesco ad utilizzarla senza problemi.



Voglio eseguire il bind di un programma (SQLJ) che deve usare questa
sequence.

Se non specifico l'owner (quindi viene preso di default MIAUSER che esegue
il comando), il bind termina in errore per -551:

MIAUSER DOES NOT HJAVE THE PRIVILEG TO PERFORM OPERATION O USAGE ON OBJECT
PROVA1.MIASEQ. SQLCODE -551 SQLSTAT=42501



Se al contrario specifico l'OWNER uguale al QUALIFIER owner(PROVA1)
qualifier(PROVA1)

il bind termina correttamente con RC=0.



E' un comportamento corretto?

Quale altra grant dovrei dare a MIAUSER per poter eseguire anche il bind di
un programma che utilizza questa sequence avendo specificato owner(MIAUSER)?



Grazie a tutti per le info



Marcello Abbruzzese Puricelli
Cornèr Banca SA
Via Canova 16
6901 Lugano_Switzerland

General number: + 41 91 800 51 11
Fax: + 41 91 800 53 49
[login to unmask email]
corner.ch https://corner.ch




_____

https://corner.ch Cornèr Bank Ltd.


Warnings:
1_E-mail correspondence can involve HIGH RISKS (lack of confidentiality,
potential manipulation of content and/or sender, delivery errors, viruses,
etc.). Cornèr Bank Ltd.
therefore disclaims all liability for consequent losses and damages
resulting from the use of e-mails. We strongly recommend to NOT SEND
CONFIDENTIAL INFORMATION in
e-mail responses, to not include previous messages, and to manually enter
the e-mail address each time.
2_In principle, Cornèr Bank Ltd. DOES NOT ACCEPT PAYMENT / TRADING ORDERS,
REVOCATIONS OF ORDERS OR AUTHORIZATIONS, BLOCKING OF PAYMENT
CARDS OR OTHER INSTRUCTIONS BY E-MAIL. Should we however receive any e-mails
of this type, we have no obligation to expressly reject them. Please speak
to your
Financial Advisor directly, if you need to give instructions related to your
account.
3_Should you have received this e-mail by mistake or do no longer wish to be
contacted via e-mail in the future, then you are kindly asked to notify
Cornèr Bank Ltd. immediately.
Finally, the e-mail received in error (including all attachments) must be
permanently deleted and the distribution of such information to third
parties is strictly prohibited.


https://corner.ch https://corner.ch Cornèr Bank Ltd.
https://corner.ch



-----End Original Message-----

Marcello Abbruzzese Puricelli

R: -551 on USAGE SEQUENCE
(in response to Angelo Sironi)
Ciao Angelo.

Grazie della risposta.

Ho fatto la prova eseguendo SELECT NEXT VALUE con la MIAUSER senza eseguire SET CURRENT SQLID = ‘PROVA1 ossia presentandomi con SQLID= MIAUSER

e in questo caso riesco tranquillamente ad "USARE" la sequence.

Sembra che a livello di BIND non si prenda in considerazione il secondary authid cosa che viene fatta invece nell'SQL dinamico.

Il problema del bind l'ho bypassato facilmente eseguendolo con OWNER(PROVA1) invece di OWNER(MIAUSER) e tutto funziona.

Vorrei però capire perché c'è questo comportamento difforme.

Che ne pensi?



Grazie





Marcello Abbruzzese
Cornèr Banca SA
Via Canova 16
6901 Lugano_Switzerland

General number: + 41 91 800 51 11
Fax: + 41 91 800 53 49
[login to unmask email]<mailto:[login to unmask email]>
corner.ch https://corner.ch



________________________________
Da: Angelo Sironi [[login to unmask email]
Inviato: mercoledì, 22. novembre 2017 19:10
A: [login to unmask email]
Oggetto: [DB2UGITALY] - R: -551 on USAGE SEQUENCE

Ciao Marcello,
credo (con il rischio di sbagliare…) che, se tu non ti presenti come PROVA1, il DB2 non ti lascia fare nulla sulla Sequence per tu come utente non hai autorità su quella Sequence. Tu sei autorizzato a presentarti come PROVA1, e allora la cosa funzione. Prova sotto SPUFI o QMF ad eseguire o meno il SET CURRENT SQLID = ‘PROVA1’ e poi la SELECT NEXT VALUE della SEQUENCE e vedi cosa succede.

Per bypassare il problema devi dare le autorizzazioni he trovi sul SQL Reference alla voce seguente:

Sequence reference
A sequence is referenced by using the NEXT VALUE and PREVIOUS VALUE
expressions specifying the name of the sequence.

…. Omissis ….

Notes®
Authorization:
If a sequence is referenced in a statement, the privileges that are held by
the authorization ID of the statement must include at least one of the
following:
v For the sequence identified in the statement:
– The USAGE privilege on the sequence
– Ownership of the sequence
v SYSADM or SYSCTRL authority

A presto,
Angelo
Da: Abbruzzese Marcello [mailto:[login to unmask email]
Inviato: mercoledì 22 novembre 2017 16:14
A: [login to unmask email]
Oggetto: [DB2UGITALY] - -551 on USAGE SEQUENCE


Buongiorno a tutti.

La user MIAUSER ha la grant CREATE sullo schema PROVA1.

In RACF ha anche PROVA1 come secondary authid.



Con MIAUSER ho creato la SEQUENCE con il seguente DDL:

SET CURRENT SQLID = 'PROVA1';

CREATE SEQUENCE MYSEQ

ecc

.......

La sequence è stata creata con schema PROVA1 e owner PROVA1.

Se leggo la sequence appena creata (presentandomi con l'SQL ID originale MIAUSER) riesco ad utilizzarla senza problemi.



Voglio eseguire il bind di un programma (SQLJ) che deve usare questa sequence.

Se non specifico l'owner (quindi viene preso di default MIAUSER che esegue il comando), il bind termina in errore per -551:

MIAUSER DOES NOT HJAVE THE PRIVILEG TO PERFORM OPERATION O USAGE ON OBJECT PROVA1.MIASEQ. SQLCODE -551 SQLSTAT=42501



Se al contrario specifico l'OWNER uguale al QUALIFIER owner(PROVA1) qualifier(PROVA1)

il bind termina correttamente con RC=0.



E' un comportamento corretto?

Quale altra grant dovrei dare a MIAUSER per poter eseguire anche il bind di un programma che utilizza questa sequence avendo specificato owner(MIAUSER)?



Grazie a tutti per le info


Marcello Abbruzzese Puricelli
Cornèr Banca SA
Via Canova 16
6901 Lugano_Switzerland

General number: + 41 91 800 51 11
Fax: + 41 91 800 53 49
[login to unmask email]<mailto:[login to unmask email]>
corner.ch https://corner.ch

________________________________
[Cornèr Bank Ltd.] https://corner.ch


Warnings:
1_E-mail correspondence can involve HIGH RISKS (lack of confidentiality, potential manipulation of content and/or sender, delivery errors, viruses, etc.). Cornèr Bank Ltd.
therefore disclaims all liability for consequent losses and damages resulting from the use of e-mails. We strongly recommend to NOT SEND CONFIDENTIAL INFORMATION in
e-mail responses, to not include previous messages, and to manually enter the e-mail address each time.
2_In principle, Cornèr Bank Ltd. DOES NOT ACCEPT PAYMENT / TRADING ORDERS, REVOCATIONS OF ORDERS OR AUTHORIZATIONS, BLOCKING OF PAYMENT
CARDS OR OTHER INSTRUCTIONS BY E-MAIL. Should we however receive any e-mails of this type, we have no obligation to expressly reject them. Please speak to your
Financial Advisor directly, if you need to give instructions related to your account.
3_Should you have received this e-mail by mistake or do no longer wish to be contacted via e-mail in the future, then you are kindly asked to notify Cornèr Bank Ltd. immediately.
Finally, the e-mail received in error (including all attachments) must be permanently deleted and the distribution of such information to third parties is strictly prohibited.

https://corner.ch [Cornèr Bank Ltd.] https://corner.ch https://corner.ch


-----End Original Message-----

-----End Original Message-----

Marcello Abbruzzese Puricelli

R: -551 on USAGE SEQUENCE
(in response to Marcello Abbruzzese Puricelli)
Ciao Angelo

Abbiamo riscontrato la stessa identica problematica in accesso alle global temporary tables.

Se eseguo da spufi una semplice select su una qualsiasi GTT funziona, diversamente se eseguo in bind senza owner(PROVA1) l'errore è sempre -551.



saluti



Marcello Abbruzzese
Cornèr Banca SA
Via Canova 16
6901 Lugano_Switzerland

General number: + 41 91 800 51 11
Fax: + 41 91 800 53 49
[login to unmask email]<mailto:[login to unmask email]>
corner.ch https://corner.ch


________________________________
Da: Abbruzzese Marcello [[login to unmask email]
Inviato: giovedì, 23. novembre 2017 08:10
A: [login to unmask email]
Oggetto: [DB2UGITALY] - RE: R: -551 on USAGE SEQUENCE


Ciao Angelo.

Grazie della risposta.

Ho fatto la prova eseguendo SELECT NEXT VALUE con la MIAUSER senza eseguire SET CURRENT SQLID = ‘PROVA1 ossia presentandomi con SQLID= MIAUSER

e in questo caso riesco tranquillamente ad "USARE" la sequence.

Sembra che a livello di BIND non si prenda in considerazione il secondary authid cosa che viene fatta invece nell'SQL dinamico.

Il problema del bind l'ho bypassato facilmente eseguendolo con OWNER(PROVA1) invece di OWNER(MIAUSER) e tutto funziona.

Vorrei però capire perché c'è questo comportamento difforme.

Che ne pensi?



Grazie





Marcello Abbruzzese
Cornèr Banca SA
Via Canova 16
6901 Lugano_Switzerland

General number: + 41 91 800 51 11
Fax: + 41 91 800 53 49
[login to unmask email]<mailto:[login to unmask email]>
corner.ch https://corner.ch



________________________________
Da: Angelo Sironi [[login to unmask email]
Inviato: mercoledì, 22. novembre 2017 19:10
A: [login to unmask email]
Oggetto: [DB2UGITALY] - R: -551 on USAGE SEQUENCE

Ciao Marcello,
credo (con il rischio di sbagliare…) che, se tu non ti presenti come PROVA1, il DB2 non ti lascia fare nulla sulla Sequence per tu come utente non hai autorità su quella Sequence. Tu sei autorizzato a presentarti come PROVA1, e allora la cosa funzione. Prova sotto SPUFI o QMF ad eseguire o meno il SET CURRENT SQLID = ‘PROVA1’ e poi la SELECT NEXT VALUE della SEQUENCE e vedi cosa succede.

Per bypassare il problema devi dare le autorizzazioni he trovi sul SQL Reference alla voce seguente:

Sequence reference
A sequence is referenced by using the NEXT VALUE and PREVIOUS VALUE
expressions specifying the name of the sequence.

…. Omissis ….

Notes®
Authorization:
If a sequence is referenced in a statement, the privileges that are held by
the authorization ID of the statement must include at least one of the
following:
v For the sequence identified in the statement:
– The USAGE privilege on the sequence
– Ownership of the sequence
v SYSADM or SYSCTRL authority

A presto,
Angelo
Da: Abbruzzese Marcello [mailto:[login to unmask email]
Inviato: mercoledì 22 novembre 2017 16:14
A: [login to unmask email]
Oggetto: [DB2UGITALY] - -551 on USAGE SEQUENCE


Buongiorno a tutti.

La user MIAUSER ha la grant CREATE sullo schema PROVA1.

In RACF ha anche PROVA1 come secondary authid.



Con MIAUSER ho creato la SEQUENCE con il seguente DDL:

SET CURRENT SQLID = 'PROVA1';

CREATE SEQUENCE MYSEQ

ecc

.......

La sequence è stata creata con schema PROVA1 e owner PROVA1.

Se leggo la sequence appena creata (presentandomi con l'SQL ID originale MIAUSER) riesco ad utilizzarla senza problemi.



Voglio eseguire il bind di un programma (SQLJ) che deve usare questa sequence.

Se non specifico l'owner (quindi viene preso di default MIAUSER che esegue il comando), il bind termina in errore per -551:

MIAUSER DOES NOT HJAVE THE PRIVILEG TO PERFORM OPERATION O USAGE ON OBJECT PROVA1.MIASEQ. SQLCODE -551 SQLSTAT=42501



Se al contrario specifico l'OWNER uguale al QUALIFIER owner(PROVA1) qualifier(PROVA1)

il bind termina correttamente con RC=0.



E' un comportamento corretto?

Quale altra grant dovrei dare a MIAUSER per poter eseguire anche il bind di un programma che utilizza questa sequence avendo specificato owner(MIAUSER)?



Grazie a tutti per le info


Marcello Abbruzzese Puricelli
Cornèr Banca SA
Via Canova 16
6901 Lugano_Switzerland

General number: + 41 91 800 51 11
Fax: + 41 91 800 53 49
[login to unmask email]<mailto:[login to unmask email]>
corner.ch https://corner.ch

________________________________
[Cornèr Bank Ltd.] https://corner.ch


Warnings:
1_E-mail correspondence can involve HIGH RISKS (lack of confidentiality, potential manipulation of content and/or sender, delivery errors, viruses, etc.). Cornèr Bank Ltd.
therefore disclaims all liability for consequent losses and damages resulting from the use of e-mails. We strongly recommend to NOT SEND CONFIDENTIAL INFORMATION in
e-mail responses, to not include previous messages, and to manually enter the e-mail address each time.
2_In principle, Cornèr Bank Ltd. DOES NOT ACCEPT PAYMENT / TRADING ORDERS, REVOCATIONS OF ORDERS OR AUTHORIZATIONS, BLOCKING OF PAYMENT
CARDS OR OTHER INSTRUCTIONS BY E-MAIL. Should we however receive any e-mails of this type, we have no obligation to expressly reject them. Please speak to your
Financial Advisor directly, if you need to give instructions related to your account.
3_Should you have received this e-mail by mistake or do no longer wish to be contacted via e-mail in the future, then you are kindly asked to notify Cornèr Bank Ltd. immediately.
Finally, the e-mail received in error (including all attachments) must be permanently deleted and the distribution of such information to third parties is strictly prohibited.

https://corner.ch [Cornèr Bank Ltd.] https://corner.ch https://corner.ch


-----End Original Message-----

-----End Original Message-----

-----End Original Message-----