Гость
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате / 17 сообщений из 17, страница 1 из 1
14.02.2012, 11:30
    #37660610
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользователи должны видеть только некоторые строки, а кто то все.
Захожу под схемой еуые, и создал несколько пользователей parker, john...... Написал:

DBMS_RLS.ADD_POLICY (
object_schema => 'TEST',
object_name => 'ORDER_TABLE',
policy_name => 'TESTAPP_POLICY',
function_schema => 'TEST',
policy_function => 'my_security_function',
statement_types => 'SELECT,UPDATE,INSERT,DELETE',
update_check => TRUE,
enable => TRUE,
static_policy => FALSE);

Таблица ORDER_TABLE большая и несколько полей. Дальше пишу функцию:

create or replace function my_security_function( p_schema in varchar2,

p_object in varchar2 ) return varchar2
as
begin
if ( user = 'parker' ) then --здесь parker пользователь
return 'branch = 081'; --branch имя поле
else
return 'branch = 061';
end if;
end;

А когда захожу под parker' ом в страницу мне показывает, только где branch = 061. Даже под любым пользователем.
Что делать когда захожу под parker' ом показывали только branch = 061? Помогите пожалуйста
...
Рейтинг: 0 / 0
14.02.2012, 11:33
    #37660616
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Всем здравствуйте, работаю на APEX. Создал таблицу, и некоторые пользователи должны видеть только некоторые строки, а кто то все.
Захожу под схемой test, и создал несколько пользователей parker, john...... Написал:

DBMS_RLS.ADD_POLICY (
object_schema => 'TEST',
object_name => 'ORDER_TABLE',
policy_name => 'TESTAPP_POLICY',
function_schema => 'TEST',
policy_function => 'my_security_function',
statement_types => 'SELECT,UPDATE,INSERT,DELETE',
update_check => TRUE,
enable => TRUE,
static_policy => FALSE);

Таблица ORDER_TABLE большая и несколько полей. Дальше пишу функцию:

create or replace function my_security_function( p_schema in varchar2,

p_object in varchar2 ) return varchar2
as
begin
if ( user = 'parker' ) then --здесь parker пользователь
return 'branch = 081'; --branch имя поле
else
return 'branch = 061';
end if;
end;

А когда захожу под parker' ом в страницу мне показывает, только где branch = 061. Даже под любым пользователем.
Что делать когда захожу под parker' ом показывали только branch = 081? Помогите пожалуйста
...
Рейтинг: 0 / 0
14.02.2012, 11:43
    #37660634
SvDev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Ошибка здесь
СанжарТаблица ORDER_TABLE большая и несколько полей. Дальше пишу функцию:

create or replace function my_security_function( p_schema in varchar2,

p_object in varchar2 ) return varchar2
as
begin
if ( user = 'parker' ) then --здесь parker пользователь
return 'branch = 081'; --branch имя поле
else
return 'branch = 061';
end if;
end;

RTFM Understanding Substitution Strings
...
Рейтинг: 0 / 0
14.02.2012, 12:02
    #37660672
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
SvDev,
Сейчас временно перестал работать сервер, ни от того что я писал политику. И еще, вместо user можно писать :app_user?
...
Рейтинг: 0 / 0
14.02.2012, 12:12
    #37660691
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Сейчас временно перестал работать сервер, ни от того что я писал политику? И еще, вместо user можно писать :app_user?
...
Рейтинг: 0 / 0
14.02.2012, 12:22
    #37660717
SvDev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Санжар,

Эти функции возращают совершенно разное.
Вот здесь хорошо написано
Public User
...
Рейтинг: 0 / 0
14.02.2012, 12:30
    #37660745
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
SvDev,

можете переписать тело функции, где я писал = 'parker'. Просто я новичок в apex. Пожалуйста.
...
Рейтинг: 0 / 0
14.02.2012, 12:43
    #37660780
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
SvDevОшибка здесь
СанжарТаблица ORDER_TABLE большая и несколько полей. Дальше пишу функцию:

create or replace function my_security_function( p_schema in varchar2,

p_object in varchar2 ) return varchar2
as
begin
if ( user = 'parker' ) then --здесь parker пользователь
return 'branch = 081'; --branch имя поле
else
return 'branch = 061';
end if;
end;

RTFM Understanding Substitution Strings

Подскажите пожалуйста, что именно должен писать вместо user?
...
Рейтинг: 0 / 0
14.02.2012, 12:50
    #37660794
SvDev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Санжар,

Это неоправдание.

Апекс коннектится только под пользователем, указанным (разблокированным) при установке, что, собственно, user и будет возвращать. Чтобы получить пользователя, прошедшего апексную аутентификацию, у апекса есть свои функции (см ссылки).

И английскую документацию читать! Обязательно!
...
Рейтинг: 0 / 0
14.02.2012, 12:52
    #37660800
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
SvDev,

Спасибо, пошел читать
...
Рейтинг: 0 / 0
14.02.2012, 13:07
    #37660847
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
пишу так:
if ( V('APP_USER') = 'parker' ) then
return 'branch = 081';
else
return 'branch = 051';
end if;

но результат не меняется, показывает 051
...
Рейтинг: 0 / 0
14.02.2012, 13:11
    #37660856
SvDev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Санжар,

Проверьте регистр
...
Рейтинг: 0 / 0
14.02.2012, 13:12
    #37660859
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Спасибо SvDev, надо было писать PARKER, а не parker
...
Рейтинг: 0 / 0
14.02.2012, 14:15
    #37661034
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Спасибо, работает, а то 4 дня капал, есть что то похвастатся перед начальством. И еще если ссылки знаете по инициализация значений по умолчанию подкиньте пожалуйста.
...
Рейтинг: 0 / 0
14.02.2012, 17:16
    #37661510
SvDev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
СанжарСпасибо, работает, а то 4 дня капал, есть что то похвастатся перед начальством.
Я так скажу, FGAC хорошая штука, сами используем, но универсального решения и она не даёт, т.к. интерфейс тоже часто от прав должен меняться. Тут может отчасти помочь authorization schemas
СанжарИ еще если ссылки знаете по инициализация значений по умолчанию подкиньте пожалуйста.
Не понятно про что речь. Слишком много что и где может инициализироваться. Про APP_USER во второй ссылке есть.
...
Рейтинг: 0 / 0
15.02.2012, 06:59
    #37662224
Санжар
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
SvDevСанжарИ еще если ссылки знаете по инициализация значений по умолчанию подкиньте пожалуйста.
Не понятно про что речь. Слишком много что и где может инициализироваться. Про APP_USER во второй ссылке есть.

Хотел сказать, вот я распределил по ID, и каждый видит только те строки отчета которые соответствует по ID, и дальше хотел сделать, когда они создают новую строку (т.е. когда нажимают кнопку create, появляется новая страница, а там форма) в поле ID по умолчанию появился свой ID каждого пользователья. Уже сделал число, год и имя пользователя, а вот свой ID не получается.
...
Рейтинг: 0 / 0
15.02.2012, 11:25
    #37662507
SvDev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате
Санжар,

Для этого есть опции Reset Page в ссылках, source и defaults в item's, для сложных случаев computations и processes. Search.
...
Рейтинг: 0 / 0
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Всем здравствуйте, работаю на APEX. И должен создать таблицу, которые некоторые пользовате / 17 сообщений из 17, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]