Acessando Objetos como Proprietário da Sessão
Cada objeto tem um nome de proprietário associado a ele. As regras que determinam quais objetos são acessados dependem do nome do proprietário utilizado quando uma sessão é iniciada. Utilize o valor de proprietário dessa sessão para controlar o acesso ao objeto.
O proprietário da sessão é definido durante a chamada para dsmInitEx no parâmetro clientOwnerNameP parâmetro. Se você iniciar uma sessão com dsmInitEx nome do proprietário de NULL e você usar passwordaccess=solicitar, aquele proprietário da sessão é manipulado com autoridade de sessão (root ou usuário autorizado). Isso também ocorrerá se você efetuar login com um ID de usuário raiz ou um ID de usuário autorizado e utilizar passwordaccess= generate. Durante a sessão iniciada desta maneira, é possível executar qualquer ação em qualquer objeto que seja de propriedade deste nó, independente do proprietário real deste objeto.
Se uma sessão for iniciada com um nome de proprietário específico, a sessão somente poderá executar ações em objetos que tenham esse nome de proprietário de objeto associado a elas. Backups ou archives no sistema devem ter esse nome de proprietário associado a eles. Qualquer consulta executada retorna somente os valores que têm esse nome de proprietário associado ela. O valor do proprietário do objeto é configurado durante a chamada dsmSendObj no campo Owner da estrutura ObjAttr . Um nome de proprietário faz a distinção entre maiúsculas e minúsculas. Tabela 1 resume as condições sob as quais um usuário tem acesso a um objeto.
| Proprietário da sessão | Proprietário do objeto | Acesso do usuário |
|---|---|---|
| NULL (root, proprietário do sistema) | (sequência vazia) |
True |
| NULL | Nome específico | True |
| Nome específico | (sequência vazia) |
Não |
| Nome específico | Mesmo nome | True |
| Nome específico | Nome diferente | Não |