oracle11g - Visual Studio, SSRS, Oracle sys_context('USERENV', 'OS_USER') -
i using visual studio 2012, oracle 11g , ssrs 2012.
i have developed report checks session userid determine if can view report or not against table stored in oracle db.
everything works correctly in preview mode visual studio 2012; however, when report deployed ssrs 2012 data not returned, , expected if us.
select comp_flag, mbr_mmis_idntfr, last_name, first_name, middle_name, org_code, org_name, org_phone, last_verified_date, rac_start,rac_end, rac_code tpl_chip_mv (comp_flag <> 'n') , (1 =(select count(user_id) expr1 report_auth (user_id = concat('hlan\',upper (sys_context'userenv', 'os_user'))))))
why work correctly in visual studio 2012 preview mode , not in ssrs 2012? can work in ssrs?
the problem os_user
different.
when you're running locally in preview mode, account running visual studio own personal account. os_user
database sees personal operating system user. when you're deploying ssrs server, operating system account running ssrs service account. os_user
database sees service account.
i doubt you'd able use of userenv
context variables limit access rows when report deployed ssrs. you'd need ssrs tell database end user is. likely, can looking @ user!userid
property within report assuming you've configured ssrs use windows authentication. since returns domain in addition username, may need modify lookup table include domain match against.
Comments
Post a Comment