powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / веб-приложение, авторизация
49 сообщений из 49, показаны все 2 страниц
веб-приложение, авторизация
    #37643484
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте,
посоветуйте, как лучше реализовать авторизацию в приложении?

есть вебприложение (smartgwt), развернутое на glassfish. в приложении отображаются, редактируются и тп. данные, хранящиеся в бд оракл. используются рест службы.

теперь необходимо реализовать авторизацию пользователей. пользователи заводятся в самой базе. в оракле вьюшки, отображающие данные о пользователе - sys.dba_role_privs, dba_users, dba_roles. попробовал использовать jdbcrealm, не получилось, скорее всего изза пароля, всмысле шифрование на гласфише и в оракл разные (это предположение). а так было б хорошо, если указать в web.xml security-constraint для ролей и прописать там - какие можно выполнять запросы get, post ....
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37643516
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Прочитать мануал соответствующего сервера приложений по конфигурированию реалма в БД
2. Предпринять необходимые действия
3. Если что-то не получилось - выложить сюда максимально полную информацию об ошибке - что делали, что за ошибка, как пытались исправить и т.д..
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37643652
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
svenom,

создаю пул jdbc/test. теперь создаю реалм testRealm -

JAAS Context: jdbcRealm
JNDI: jdbc/test
User Table: sys.dba_users
User Name Column: username
Password Column: password
Group Table: sys.dba_users_roles
Group Name Column: GRANTED_ROLE

поля encoding и Digest Algorithm при создании реалма пробовал заполнять разными способами, т.е. Digest Algorithm: none, SHA-256, MD5, для encoding: Hex, Base64.

web.xml


<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns=" http://java.sun.com/xml/ns/javaee" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>LogoutServlet</servlet-name>
<servlet-class>security.LogoutServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LogoutServlet</servlet-name>
<url-pattern>/LogoutServlet</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
</welcome-file-list>
<security-constraint>
<web-resource-collection>
<web-resource-name>Secure Pages</web-resource-name>
<url-pattern>/restricted/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>root</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>testRealm</realm-name>
</login-config>
<security-role>
<description/>
<role-name>root</role-name>
</security-role>
</web-app>


glassfish-web.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" " http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app error-url="">
<context-root>/SecurityTest</context-root>
<class-loader delegate="true"/>
<jsp-config>
<property name="keepgenerated" value="true">
<description>Keep a copy of the generated servlet class' java code.</description>
</property>
</jsp-config>
<security-role-mapping>
<role-name>root</role-name>
<group-name>root</group-name>
</security-role-mapping>
</glassfish-web-app>


можно сказать все как по учебнику, но при авторизации, при вводе даже верного пароля не логинится и в логах пишется следующее


[#|2012-01-31T13:24:40.506+0600|WARNING|glassfish3.1|javax.enterprise.system.container.web.com.sun.web.security|_ThreadID=120;_ThreadName=Thread-1;|WEB9102: Web Login Failed: com.sun.enterprise.security.auth.login.common.LoginException: Login failed: Security Exception|#]

[#|2012-01-31T13:24:40.506+0600|WARNING|glassfish3.1|javax.enterprise.system.container.web.com.sun.web.security|_ThreadID=120;_ThreadName=Thread-1;|Exception
com.sun.enterprise.security.auth.login.common.LoginException: Login failed: Security Exception
at com.sun.enterprise.security.auth.login.LoginContextDriver.doPasswordLogin(LoginContextDriver.java:394)
at com.sun.enterprise.security.auth.login.LoginContextDriver.login(LoginContextDriver.java:240)
at com.sun.enterprise.security.auth.login.LoginContextDriver.login(LoginContextDriver.java:153)
at com.sun.web.security.RealmAdapter.authenticate(RealmAdapter.java:483)
at com.sun.web.security.RealmAdapter.authenticate(RealmAdapter.java:425)
at org.apache.catalina.authenticator.BasicAuthenticator.authenticate(BasicAuthenticator.java:176)
at com.sun.web.security.RealmAdapter.invokeAuthenticateDelegate(RealmAdapter.java:1192)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:551)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:623)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:9
at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
at com.sun.grizzly.comet.CometEngine.executeServlet(CometEngine.java:444)
at com.sun.grizzly.comet.CometEngine.handle(CometEngine.java:308)
at com.sun.grizzly.comet.CometAsyncFilter.doFilter(CometAsyncFilter.java:87)
at com.sun.grizzly.arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:171)
at com.sun.grizzly.arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:143)
at com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:94)
at com.sun.grizzly.http.TaskBase.run(TaskBase.java:193)
at com.sun.grizzly.http.TaskBase.execute(TaskBase.java:175)
at com.sun.grizzly.arp.DefaultAsyncHandler.handle(DefaultAsyncHandler.java:145)
at com.sun.grizzly.arp.AsyncProtocolFilter.execute(AsyncProtocolFilter.java:204)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:619)
Caused by: javax.security.auth.login.LoginException: Security Exception
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:856)
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:683)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
at javax.security.auth.login.LoginContext.login(LoginContext.java:579)
at com.sun.enterprise.security.auth.login.LoginContextDriver.doPasswordLogin(LoginContextDriver.java:382)
... 36 more
Caused by: java.lang.SecurityException
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:857)
... 42 more
|#]
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37643769
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вladimir,
Это весь стек трейс? Глубже ничего нету? Если есть - выкладывайте, если нет - попробуйте поставить брейкпоинт на java.lang.SecurityException и посмотрите, что там реально происходит.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37643789
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну а вообще вам, разумеется, надо искать способ преобразовать пароль из текста к виду, который используется в оракле.
Как это сделать - хз. Я бы начал с чтения доки по ораклу, что бы понять, как там хранятся пароли. Потом погуглил бы, так как наверняка вы не первый, кто хочет сделать такое. Если гугл не поможет, то варианты такие:
1) Писать свой реалм для работы с ораклом
2) Научиться перегонять оракловский пароль в текст, а потом шифровать его одним из известных Glassfish алгоритмов.
3) Может быть можно имплементировать свой алгоритм преобразования и как-то подсунуть его Glassfish, ну типа Digest Algorithm = MyCustomAlgorithm.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37643965
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я что-то не пойму.
Какой пароль к СУБД, если пулинг?
- либо нет пулинга и авторизация в СУБД
- либо пулинг и ПРОКСИ авторизация.
IMHO не надо смешивать обе технологии.

может вот это поможет?
http://habrahabr.ru/blogs/java/92608/
______________________________________________
"Сделай настолько просто, насколько это возможно, но не проще". © А. Эйнштейн.
AutoPOI.ru — ГИС-технологии для Oracle
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37643990
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123я что-то не пойму.
Какой пароль к СУБД, если пулинг?
- либо нет пулинга и авторизация в СУБД
- либо пулинг и ПРОКСИ авторизация.
IMHO не надо смешивать обе технологии.Речь не об этом. Есть коннекшн к базе - тут вопросов нет. А в базе так же есть информация о пользователях в стандартных оракловских табличках, т.е. пользователь приложения = пользователь Oracle. И надо научить Glassfish аутентифицировать пользователей по этой информации.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644022
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenomА в базе так же есть информация о пользователях в стандартных оракловских табличках, т.е. пользователь приложения = пользователь Oracle.

нет.
Мы это обсуждали.
Либо
create user aaaaa password bbbbb
тогда это аут-ия СУБД и на каждого юзверя по 1 схеме.
Либо на каждого из пула берётся коннект ОДНОГО суперЮзверя. (Веб)

Есть ещё смешанные варианты
ЗЫ
Если пассс и имя в стандартной табличке, тогда обычное select
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644027
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenomт.е. пользователь приложения = пользователь Oracle.

вот это не верно.
Второй это CREATE USER
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644041
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123svenomА в базе так же есть информация о пользователях в стандартных оракловских табличках, т.е. пользователь приложения = пользователь Oracle.

нет.
Мы это обсуждали.
Либо
create user aaaaa password bbbbb
тогда это аут-ия СУБД и на каждого юзверя по 1 схеме.
Либо на каждого из пула берётся коннект ОДНОГО суперЮзверя. (Веб)

Есть ещё смешанные варианты
ЗЫ
Если пассс и имя в стандартной табличке, тогда обычное selectВот странно - вы вроде и понимаете, а вроде и нет. Еще раз попытаюсь пояснить за автора.
1) Есть СУБД Oracle.
2) В СУБД есть специальный системынй пользователь и ассоциированная с ним схема (или чужая схема, но к которой у пользователя есть объектный привилегии), через которого AppServer подключается к БД.
3) Далее, в этой жу СУБД есть еще 100500 других пользователей у которых нет никаких схем (ну есть то они есть, просто пустые) с точки зрения приложения. Нам плевать на их схемы. Важно то, что в системных таблицах СУБД хранятся их данные - пароль и роли.
4) Идея автора заключается в том, что бы приспособить стандартный JDBCRealm Глассфиша так, что бы он мог аутентифицировать пользователей приложения по данным из этих системных таблиц Oracle. Все, точка. Больше нам эти пользователи ни для чего не нужны.
Эта задача хитрая, возможно глупая, но она решаемая. Вопрос - как ее решить.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644069
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну дак я и спрашиваю про то ЧТО Я НЕ ПОНЯЛ
Я ж субд больше знаю, чем аппсервер
svenom3) Далее, в этой жу СУБД есть еще 100500 других пользователей у которых нет никаких схем (ну есть то они есть, просто пустые)

дак есть или нет?
- например, админка. Как узнать список пользователей?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644071
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
или ещё проще - код создания нового пользователя?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644100
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123дак есть или нет?
- например, админка. Как узнать список пользователей? Что есть или нет?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644127
VoDA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenom3) Далее, в этой жу СУБД есть еще 100500 других пользователей у которых нет никаких схем (ну есть то они есть, просто пустые) с точки зрения приложения. Нам плевать на их схемы. Важно то, что в системных таблицах СУБД хранятся их данные - пароль и роли.
4) Идея автора заключается в том, что бы приспособить стандартный JDBCRealm Глассфиша так, что бы он мог аутентифицировать пользователей приложения по данным из этих системных таблиц Oracle. Все, точка. Больше нам эти пользователи ни для чего не нужны.
Эта задача хитрая, возможно глупая, но она решаемая. Вопрос - как ее решить.в пункте 3 ошибка - там НЕ ХРАНИТСЯ пароль. там хранится нечто, нужное для алгоритма авторизации СУБД (для простоты назовем хэш пароля). авторизация в этом случае возможна только использованием спец-средств СУБД.

как следствие 4-й пункт не решается через JDBCRealm в принципе. правильное решение это написание своего реалма который для авторизации вызывает функции Oracle. Реалм выступает прослойкой между тем как АппСервер запрашивает API авторизации и API Oracle для прохождения авторизации.

Для Спринг проще показать примеры как это должно работать. Работа с Realms не стандартизована, потому нужно читать доки по конкретному серверу (а часто и по конкретной версии сервера).
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644151
VoDA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123- например, админка. Как узнать список пользователей? зайти в стандартную админку СУБД и посмотреть
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644154
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenomPetro123дак есть или нет?
- например, админка. Как узнать список пользователей? Что есть или нет?
я сразу отвечу:
- в 1 случае - select users_name from sys.table_users (служебная таблица)
- в 2 случае - select users_nameMy from ORM (пользовательская таблица)
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644169
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VoDAPetro123- например, админка. Как узнать список пользователей? зайти в стандартную админку СУБД и посмотреть
намёк на EM?
Тогда в простом случае, это 1000 схем-логинов (пускай пустых)
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644179
VoDA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123VoDAзайти в стандартную админку СУБД и посмотреть
намёк на EM?
Тогда в простом случае, это 1000 схем-логинов (пускай пустых)Да.

В предыдущих твоих постах я не увидел проблемы, только вопрос "как посмотреть?". Посмотреть просто. Для этого уже давно сделаны средства. Так что телепатирую, что ты пытаешься намекнуть на сложность чего то иного, но не просто "посмотреть список логинов" ;)
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644208
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VoDA,
да простой был вопрос:
- через create user Оракла! создаётся новый пользователь или через insert в оракле.
Но ты сказал уже, что проще в спринг.
ОК.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644278
VoDA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123VoDA,
да простой был вопрос:
- через create user Оракла! создаётся новый пользователь или через insert в оракле.
Но ты сказал уже, что проще в спринг.
ОК.Спринг выполняет авторизацию либо встроенными методами (plain JDBC) ибо через собственный алгоритм. Собственный алгоритм может действовать как программисту удобно или нужно сделать - хоть JDBC, хоть JPA, хоть отправлять запросы на авторизацию к СУБД.

Практически также работают Realms, но API для realms не специфицированы, потому под каждый сервер нужно было писать по своему. В Java EE 6 доработали авторизацию, но насколько они догнали Spring по удобству мне не ведомо.

Потому при выборе между Spring и Realm - проще работать с Spring Security.

На вопрос же "через create user Оракла! создаётся новый пользователь или через insert в оракле" это не отвечает. Тут правильно заходить с позиции "что хотите получить?" или "какие требования в ТЗ?"

Если требование в ТЗ работать через insert/select, то это можно сделать стандартными средствами Spring Security или созданными производителем сервера Realm.

Если требование в ТЗ работать через create user в Oracle, то для этого вероятнее всего придется дописать свой Manager для Spring Security или свой Realm для конкретной версии конкретного сервера.
И выбор между этими вариантами лежит на авторе топика, а не конкретной технологии.

"Если не знаешь куда идти, то ни один ветер не будет попутным"
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644329
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VoDA,
Всё верно, но я одно не пойму.
Я вот с такими _твоими_ словами больше согласен:
автордля java проще авторизацию сделать на своей стороне. при этом общение с СУБД идет под одним аккаунтом и через пул коннектов. пул коннектов - сильно лучше для большого числа пользователей ибо для работы применяется меньшее количество подключений.

я полностью их разделяю, т.к. критерий-требование не insert в ТЗ, а веб+пул.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37644335
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно ещё проще:
- короткие транзакции не делают с оракловой аутентификацией (create user...)
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645082
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как много написали пока отсутствовал...

svenom правильно разъяснил, какова была моя попытка реализовать авторизацию через jdbc realm, после этой попытки понял, что через обычный jdbcrealm не получится, т.к. в оракле - в поле password это вовсе не пароль а нечто зашифрованное.

и возвращаясь к изначальному моему вопросу авторпосоветуйте, как лучше реализовать авторизацию в приложении?

самый простой вариант, это в сделать коннект к базе по данным пользователя и вытащить его роль, если она, скажем, админ, то ему можно все, если просто юзер, то заблокировать кнопочки, выполняющие post, put запросы. а хотелось бы еще, ставить некий запрет для определенной роли на выполнение get, post или put запросов.

по поводу своего реалма, не подскажите подробного примера для разбора как его написать..

приложение smartGWT, сервер glassfish 3.1
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645083
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хотя, пропустил сразу ссылку http://habrahabr.ru/blogs/java/92608/, попробую реализовать
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645191
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Видимо у вас так мало времени, что вы свой тред не читаете. Иначе ответили бы на вопрос:
- как сейчас происходит соединение. Есть пул или нет? Кто дал идею заводить роли и пользователей именно Оракловых?

svenom без сомнения верно отправил вас читать документацию.
Разве там написано:
ВladimirUser Table: sys.dba_users
- что надо выставлять системные таблицы оракла с рутовыми паролями наружу в аппСервер в конфиги?
- что для авторизации необходимо в БД заводить пользователя\роли в SYS?
- что можно соединить архитектуру десктоп-корпоратив-длинные и пул-веб-короткие?
Я не спорю, SmartGWT позволяет писать так и так... только там есть ньюансы.
Это же безопасность
Удачи!
______________________________________________
"Сделай настолько просто, насколько это возможно, но не проще". © А. Эйнштейн.
AutoPOI.ru — ГИС-технологии для Oracle
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645272
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123- что надо выставлять системные таблицы оракла с рутовыми паролями наружу в аппСервер в конфиги?Автор же написал, что создал поверх системных таблиц вьюшки. В них можно спокойно исключить из списка юзеров всякие системные учетки типо SYSTEM и SYS, в них же можно спокойно запретить изменение. Так что никаких проблем нет, вы просто невнимательно прочитали первый пост автора.
Petro123- что для авторизации необходимо в БД заводить пользователя\роли в SYS?Это, очевидно, продиктовано какими-то требованиями. На первый взгляд, это конечно выглядит странновато, но это за рамками вопроса автора, т.е. не наше дело. Может быть там какая-нибудь двухзвенка, которая аутентифицирует пользователей по оракловским учеткам, а автор разрабатывает какое-нибудь аналитическое трехзвенное приложение поверх этой БД. Вам то какая разница, почему он вынужден делать так?
Petro123- что можно соединить архитектуру десктоп-корпоратив-длинные и пул-веб-короткие?Фраза напрочь лишена смысла. Вы, видимо, так и не поняли, о чем идет речь. Мы не говорим про "десктоп", "корпоратив", "длинные", "короткие" и т.д.. Речь только о том, как адаптировать данные из системных таблиц оракла под JAAS аутентификацию.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645295
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenomPetro123- что надо выставлять системные таблицы оракла с рутовыми паролями наружу в аппСервер в конфиги?Автор же написал, что создал поверх системных таблиц вьюшки.

===== в конфиге стоит не вьюшка. Так?

В них можно спокойно исключить из списка юзеров всякие системные учетки типо SYSTEM и SYS, в них же можно спокойно запретить изменение. Так что никаких проблем нет, вы просто невнимательно прочитали первый пост автора.

==== вы невнимательны. Если ВСЁ это исключить, тогда почему не завести ОТДЕЛЬНУЮ таблицу?
2. На вьюшку сложнее дать права НЕ DBA внутри которой табла DBA


Petro123- что для авторизации необходимо в БД заводить пользователя\роли в SYS?
Может быть там какая-нибудь двухзвенка,

======= а я про что? Про то что - выглядит странновато :) В безопасности нет мелочей.

Petro123- что можно соединить архитектуру десктоп-корпоратив-длинные и пул-веб-короткие?Фраза напрочь лишена смысла. Вы, видимо, так и не поняли, о чем идет речь. Мы не говорим про "десктоп", "корпоратив", "длинные", "короткие" и т.д.. Речь только о том, как адаптировать данные из системных таблиц оракла под JAAS аутентификацию.

===== без ответов выше нельзя ГРАМОТНО соединить бульдога с носорогом.


вопрос автора напоминает такой:
- "у меня есть поле id и триггер для его заполнения. Как его соединить с ОРМ аннотацией"?
Вы помните что ответили на такой вопрос?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645344
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123 ,
1) В конфиге может быть хоть вьюха, хоть таблица - без разницы.
2) Отдельную таблицу заводить незачем, так как данные о пользователях уже есть в системных таблицах.
3) Никаких сложностей с правами нет.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645360
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenom Petro123 ,
1) В конфиге может быть хоть вьюха, хоть таблица - без разницы.
2) Отдельную таблицу заводить незачем, так как данные о пользователях уже есть в системных таблицах.
3) Никаких сложностей с правами нет.
1. может, пусть перепишет, если сможет дать такие права, чтобы 3 буквы SYS на АппСервере нигде не светили.
1.1 - как будем заводить новых? Ты ответишь или он?

2. Это ты за него решил?
OK

3. Ждём результата работы фреймворка на "вьюхе". А лучше ссылку, чтобы протестировать на взлом :)
Удачи!
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645370
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123 ,
1.1) Где было сказано, что это нужно? Вероятнее всего, одно приложение (или админ оракловый) этих пользователей создает, а другое - только читает их инфу.
2) Это не я решил за него, это автор сам сказал.
3) Какого еще фреймворка? ХЗ о чем вы.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645377
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenomВероятнее всего,
ну дак и не читай топик если "Вероятнее всего".
Ты сказал, что всё понял, а на конкретные вопросы не ответил.
Я их задал автору, пожелал ему удачи.
Ферштейн?
автор- "у меня есть поле id и триггер для его заполнения. Как его соединить с ОРМ аннотацией"?
Вы помните что ответили на такой вопрос?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645385
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1) в схеме SYS DBA_ROLE_PRIVS, DBA_USERS, DBA_ROLES - это вьюшки, не таблицы. и совершенно не важно что эти вьюшки в схеме SYS, я могу сделать обычный селект в своей схеме и создать вьюшки, ссылающиеся в схему SYS. DBA в начале названия вьюшки - это просто название, не более

2) пользователей завожу не я, они уже есть, и заведены оракляновским способом

ни какие пароли нарожу, в конфиги и тп не выставляются.

про архитектуру, пулы вопрос не задавался. и как реализовано приложение - не важно.

было правильно сказано авторРечь только о том, как адаптировать данные из системных таблиц оракла под JAAS аутентификацию. не более.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645387
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
за пожелание удачи и за ссылку http://habrahabr.ru/blogs/java/92608/ спасибо
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645391
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123ну дак и не читай топик если "Вероятнее всего".
Ты сказал, что всё понял, а на конкретные вопросы не ответил.
Я их задал автору, пожелал ему удачи.
Ферштейн?Надеюсь, после этого поста 12024894 вы наконец-то "ферштейн"
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645398
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вladimir1) в схеме SYS DBA_ROLE_PRIVS, DBA_USERS, DBA_ROLES - это вьюшки, не таблицы. и

это СИСТЕМНЫЕ объекты (пофиг как ты их назвал) оракла. Без

CREATE USER иииии
IDENTIFIED BY passsss
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp
/
grant connect, dba to иииии

их не увидеть

Вladimirсовершенно не важно что эти вьюшки в схеме SYS, я могу сделать обычный селект в своей схеме и создать вьюшки, ссылающиеся в схему SYS. DBA в начале названия вьюшки - это просто название, не более

очень смешно
"и заведены оракляновским способом"
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645403
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenom,
конечно, только автор может ответить ЧТО у него происходит :)
Выводы делает каждый сам.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645407
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenom,
как спец по АппСерверу, поясни - как ТЫ сам и с какими правами создаёшь пользователя для пула.
Вопрос понятен?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645432
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторочень смешно
"и заведены оракляновским способом" хорошо, выразился неправильно. пользователей заводит админ базы данных оракл.

то что это системные я вкурсе. тот же админ может дать право на select пользователю который возьмет и сделает вопрос ( select GRANTED_ROLE from SYS.DBA_ROLE_PRIVS where SYS.DBA_ROLE_PRIVS.GRANTEE = user ) - выполнив, знаем его роли, знаем роли можем сказать что он может делать а что нет.
и это уже пошло отвлечение от темы
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645433
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123svenom,
как спец по АппСерверу, поясни - как ТЫ сам и с какими правами создаёшь пользователя для пула.
Вопрос понятен?Вопрос понятен, хоть и не имеет отношения к топику Пользователя для пула я создам так же, как и любого другого пользователя - либо через EM, либо через SQL-скрипт под админскими правами.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645472
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenomPetro123svenom,
как спец по АппСерверу, поясни - как ТЫ сам и с какими правами создаёшь пользователя для пула.
Вопрос понятен?Вопрос понятен, хоть и не имеет отношения к топику Пользователя для пула я создам так же, как и любого другого пользователя - либо через EM, либо через SQL-скрипт под админскими правами.
конечно это оффф :)
И всё таки, приведи скрипт.
Я могу свои привести
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645490
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123 И всё таки, приведи скрипт. Зачем вам скрипт? Что вы хотите там увидеть? Пользователь, через которого идет подключение к БД в пуле, это ... обычный пользователь. Что вам не ясно то?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645501
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenomPetro123 И всё таки, приведи скрипт. Зачем вам скрипт? Что вы хотите там увидеть? Пользователь, через которого идет подключение к БД в пуле, это ... обычный пользователь. Что вам не ясно то?
проблема.
Нету у оракле обычных. Зарезервированные роли - dba, connect, ... - есть
Обычного UserAppServer нету.
Не хош - не надо.
Удачи!
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645529
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123проблема.
Нету у оракле обычных. Зарезервированные роли - dba, connect, ... - есть
Обычного UserAppServer нету.Да уж, проблема так проблема. Как же ее решить, мм? Наверное так:
1) Создать пользователяя, дать ему право на коннекшн и на все необходимые ему объекты БД (если таковые есть)
2) Войти под админом, создать вьюшки поверх SYS DBA_ROLE_PRIVS, DBA_USERS, DBA_ROLES
3) Под админом же дать доступ к этим вьюшкам вновь созданному пользователю:
GRANT SELECT ON admin_view TO appSrvUser;
Что вам еще непонятно?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645572
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenom,
1. Под админом, не в Java её называют админкой т.к. требуется роль dba
1.1 все объекты сложно, т.к. они меняются. Есть вариант рекурсией и вариант спец-ролей не на объекты а на права
2. будут ли вьюшки фильтровать или нет и выдадут рутовых тоже?
2.1 Если админ есть (НЕ ваш), то он это сделать не даст :)
3. Т.к. это пользователь пула, то ВСЕ юзвери будут иметь его права
ЗЫ.
В 2-х звенке так не пишут, т.к. если есть штатный админ:
- скажет иметь минимум 2 роли и коннекта (админка и простые смертные)
- попросит увести ОБЫЧНЫХ пользователей с таблицы рутовой на ОРМ-табличку

В вебе, без админа, и когда БД - импотент, может быть всё что угодно.
Даже инжекция select * from вьюха рутовые
imho
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645605
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Да
2) Как сделаете вьюшки, так и будут фильтровать.
2.1) Предположение/догадка. Игнорируем.
3) И что? Во-первых, это общепринятая практика - что пользователь пула видит юзеров и их роли в данном приложении, как иначе их аутентифицировать? Никак. То есть это нормально, что из под прав этого пользователя БД мы видим пользователей приложения . Во-вторых, в нормально спроектированном приложении его пользователи, разумеется, никак не смогут добраться до этих таблиц.
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645643
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Без
...
grant connect, dba to иииии
их не увидетьС хренов ли не увидеть, если по умолчанию у представления - права создателя???
А вот права на представления - могут быть совершенно другими.

P.S. Ни разу не сталкивались с suid-ными битами в хрюниксах?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645755
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в статье http://habrahabr.ru/blogs/java/92608/

авторВ файле domain.xml среди всего прочего описываются параметры jvm. Там можно найти тэг java-config. У него есть аттрибут classpath-suffix. Обычно он пуст. Вот туда-то нам и надо «вписаться».
Например:
...
<java-config classpath-suffix="/home/cy6ergn0m/.domains/domain1/lib/MyTestRealm.jar" ...
....


поясните пож-та, к примеру написал я свой реалм, добавил в classpath-suffix, работает, все хорошо.. а если я или ктолибо другой захотел еще один реалм написать, то куда прописывать это дополнение (т.е. путь к jar)?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645787
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вladimir,
там вроде сказано, что один реалм на домен?
Не?
...
Рейтинг: 0 / 0
веб-приложение, авторизация
    #37645815
Вladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123Вladimir,
там вроде сказано, что один реалм на домен?
Не?

в статье я не заметил упоминания об одном реалме на домен. тогда понятно про classpath-suffix
...
Рейтинг: 0 / 0
49 сообщений из 49, показаны все 2 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / веб-приложение, авторизация
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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