Subject | sql$default |
---|---|
Author | Claudio Valderrama C. |
Post date | 2000-04-17T07:36:45Z |
Please, can anybody translate into plain English this phrase?
LangRef explaining the fields in rdb$relations:
RDB$DEFAULT_CLASS
CHAR 31
Default security class that InterBase applies to columns newly
added to a table using the SQL security system
I know that this field contains entries like sql$defaultNN and the NN value
is provided by the generator SQL$DEFAULT (AFAIK, the only system generator
that doesn't begin with RDB$). When I try
select rdb$relation_name,
rdb$security_class,
rdb$default_class
from rdb$relations
I can see that that the 2nd and 3rd columns are NULL in the system tables,
with the exception of rdb$index_segments, rdb$indices, rdb$relations and
rdb$roles. Why?
For my tables, these fields always have values. Rdb$default_class and
rdb$security_class do not match in their values, of course:
- With the latter, I can go to rdb$security_classes (and from that, I can go
*probably* to rdb$user_privileges, right or wrong?).
- With the former, I don't know where to jump. Any hint?
Worse for my understanding, rdb$database has a RDB$SECURITY_CLASS field in
its unique row, that maps to rdb$security_classes.
It seems like I'm contemplating two parallel security systems, one being
the original and the other being the supporter for SQL-style GRANT/REVOKE
commands.
This is one piece of the IB's security puzzle that I always have wanted to
understand. I began with IB4, so I'm not an expert with QLI and GDML.
Thanks for your time.
C.
---------
Claudio Valderrama C.
Ingeniero en Informática - Consultor independiente
http://members.tripod.com/cvalde
LangRef explaining the fields in rdb$relations:
RDB$DEFAULT_CLASS
CHAR 31
Default security class that InterBase applies to columns newly
added to a table using the SQL security system
I know that this field contains entries like sql$defaultNN and the NN value
is provided by the generator SQL$DEFAULT (AFAIK, the only system generator
that doesn't begin with RDB$). When I try
select rdb$relation_name,
rdb$security_class,
rdb$default_class
from rdb$relations
I can see that that the 2nd and 3rd columns are NULL in the system tables,
with the exception of rdb$index_segments, rdb$indices, rdb$relations and
rdb$roles. Why?
For my tables, these fields always have values. Rdb$default_class and
rdb$security_class do not match in their values, of course:
- With the latter, I can go to rdb$security_classes (and from that, I can go
*probably* to rdb$user_privileges, right or wrong?).
- With the former, I don't know where to jump. Any hint?
Worse for my understanding, rdb$database has a RDB$SECURITY_CLASS field in
its unique row, that maps to rdb$security_classes.
It seems like I'm contemplating two parallel security systems, one being
the original and the other being the supporter for SQL-style GRANT/REVOKE
commands.
This is one piece of the IB's security puzzle that I always have wanted to
understand. I began with IB4, so I'm not an expert with QLI and GDML.
Thanks for your time.
C.
---------
Claudio Valderrama C.
Ingeniero en Informática - Consultor independiente
http://members.tripod.com/cvalde