Безопасность чего?
Если каждый раз авторизовать каждого пользователя через его логин/пароль в oci_connect то это будет медленно, есть метод oci_pconnect, он кеширует данные подключения и для следующего вызова, т.е. не получится в разных вызовах скриптов использовать разные авторизации, в документации я этого не нашел, там вообще для изолированных подключений нужно использовать oci_new_connect().
В веб такой (пользователи веб приложения это пользователи oracle) практикой не пользуются (наверное именно из-за вопросов производительности, хотя я это все трогал так давно, еще во времена 7 и 8 версии, теперь есть и
пул подключений и возможно еще какие то фичи)
Да, обычно пользователи веб приложения это просто идентификаторы в соответствующей таблице в базе данных приложения, а логин/пароль базы данных oracle - это логин приложения, единый на вес бакэнд (если есть отдельно бакэнд для веб и отдельно десктопное приложение, то тут можно разные логины использовать, но повторяю плохая).
p.s. oracle дорос до скоростей mysql/postgres веб? особенно если речь об мелких объемах