powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / роли пользователей
25 сообщений из 25, страница 1 из 1
роли пользователей
    #32643208
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У класса HttpServletRequest есть такой метод - isUserInRole("some_role"), используя этот метод, можно определить к какой группе пользователей относится юзер и соответственно ограничить или расширить его права. Как я понимаю, до использования этого метода, нужно сначала где то определить роли, а потом каким-то образом сервер должен определять к какой роли принадлежит юзер. Так вот, кто-нибудь знает, как это делается и зависит ли это от используемого сервера приложений?? Часто используется этот метод или есть другие фишки для подобных целей??
...
Рейтинг: 0 / 0
роли пользователей
    #32643211
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessenУ класса HttpServletRequest есть такой метод - isUserInRole("some_role"), используя этот метод, можно определить к какой группе пользователей относится юзер и соответственно ограничить или расширить его права. Как я понимаю, до использования этого метода, нужно сначала где то определить роли, а потом каким-то образом сервер должен определять к какой роли принадлежит юзер. Так вот, кто-нибудь знает, как это делается и зависит ли это от используемого сервера приложений?? Часто используется этот метод или есть другие фишки для подобных целей??

%КАТАЛИНА_ХОМЕ%\conf\tomcat-users.xml
...
Рейтинг: 0 / 0
роли пользователей
    #32643227
zalexaka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
роли задаются в web.xml
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<security-constraint>
 <web-resource-collection>
            <web-resource-name>operators</web-resource-name>
              <url-pattern>/test</url-pattern>
              <url-pattern>/test.jsp</url-pattern>
            </web-resource-collection>
	<auth-constraint>
	  <role-name>operators</role-name>
	</auth-constraint>
</security-constraint>
<security-role>
  <role-name>operators</role-name>
</security-role>
а как ета роль описывается в дескрипторе сервера зависит от сервера :(
по-моему так иль я чё не панимаю
...
Рейтинг: 0 / 0
роли пользователей
    #32643237
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Гpacoff wessenУ класса HttpServletRequest есть такой метод - isUserInRole("some_role"), используя этот метод, можно определить к какой группе пользователей относится юзер и соответственно ограничить или расширить его права. Как я понимаю, до использования этого метода, нужно сначала где то определить роли, а потом каким-то образом сервер должен определять к какой роли принадлежит юзер. Так вот, кто-нибудь знает, как это делается и зависит ли это от используемого сервера приложений?? Часто используется этот метод или есть другие фишки для подобных целей??

%КАТАЛИНА_ХОМЕ%\conf\tomcat-users.xmlДопустим там я пропишу роль и пароль. у меня есть сервлет, в нем такая строка - request.isUserInRole("admin"), к сервлету я обращаюсь вот так - ..../showcart - и как сервер определит кто я есть, админ или юзер?
...
Рейтинг: 0 / 0
роли пользователей
    #32643249
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вэб.хмл

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- edited with XML Spy v3.5 NT (http: //www.xmlspy.com) by  () --> 
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
	<security-constraint>
		<web-resource-collection>
			<web-resource-name>Protected Resource</web-resource-name>
			<url-pattern>/*</url-pattern>
		</web-resource-collection>
		<auth-constraint>
			<role-name>nostrole</role-name>
		</auth-constraint>
	</security-constraint>
	<login-config>
		<auth-method>BASIC</auth-method>
		<realm-name>Some Authentication</realm-name>
	</login-config>
</web-app>

индекс.джсп

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
<%@ page contentType="text/html;charset=windows-1251"%>
<html>
<head>
<title>test</title>
<head>
<body>
you're logged as <b><%= request.getUserPrincipal().getName() %></b>

<%--
<font size="4" color="blue">security information:</font><br/>
user principal: <b><%= request.getUserPrincipal().getName() %></b>.<br/>
user name: <b><%= request.getRemoteUser() %></b>.<br/>
request authenticated with: <b><%= request.getAuthType() %></b>.<br/>
<% if(request.isSecure()) { %>
this connection is <b>secure</b>.<br/>
<% } else { %>
this connection is <b>not secure</b>.<br/>
<% } %>
</p>
remote addr: <b><%= request.getServerName() %></b><br/>
remote host: <b><%= request.getRemoteHost() %></b><br/>
remote addr: <b><%= request.getRemoteAddr() %></b>
<p>
<% if (request.isUserInRole("testtrole")) { %>
you're in <i><b>Test</b></i> role<br/>
<% } %>
</p>
--%>
</body>
<html>

томкат-юзерс.хмл

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <role rolename="testrole" description="test role"/>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>
  <user username="role1" password="tomcat" roles="role1"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="test_user" password="test_pwd" roles="testrole"/>
  <user username="admin" password="" roles="admin,manager"/>
</tomcat-users>
...
Рейтинг: 0 / 0
роли пользователей
    #32643250
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
роли также и юзеров можно положить в БД - потом
настроить соотв. под это дело томкат - server.xml
...
Рейтинг: 0 / 0
роли пользователей
    #32643251
zalexaka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а типа чтоб палучить доступ к ресурсу(который зашищён) надо аутенифицироваться и браузёр ета спросит у тебя
...
Рейтинг: 0 / 0
роли пользователей
    #32643252
zalexaka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
во Грасоff молодца!!!
...
Рейтинг: 0 / 0
роли пользователей
    #32643255
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zalexakaа типа чтоб палучить доступ к ресурсу(который зашищён) надо аутенифицироваться и браузёр ета спросит у тебя

ну кроме стандартного окошка можно сделать
обычный вэб-интерфейс. томкат это тоже умеет разруливать.
...
Рейтинг: 0 / 0
роли пользователей
    #32643259
zalexaka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Гpacoff zalexakaа типа чтоб палучить доступ к ресурсу(который зашищён) надо аутенифицироваться и браузёр ета спросит у тебя

ну кроме стандартного окошка можно сделать
обычный вэб-интерфейс. томкат это тоже умеет разруливать.
ни вапрос ето я к примеру
...
Рейтинг: 0 / 0
роли пользователей
    #32643292
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо Грасофф, буду разбираться, но все равно, мне не хрена не ясен один момент, вот есть у меня шаблон, по этому шаблону сделан весь сайт, если ты админ, то у тебя в правом верхнем углу должна висеть админская менюшка. Так вот, если заходит юзер, то его не должны волновать какие-то там таблички с вводом пароля и т.д. Если я админ, то как мне аутентификоваться(ну и слово), нужно зайти на кокаой нить скрытый линк, ввести там логин и пароль??? Допустим линк указывает на каккой нить сервлет и что тогда должен делать этот сервлет?????
...
Рейтинг: 0 / 0
роли пользователей
    #32643307
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessenСпасибо Грасофф, буду разбираться, но все равно, мне не хрена не ясен один момент, вот есть у меня шаблон, по этому шаблону сделан весь сайт, если ты админ, то у тебя в правом верхнем углу должна висеть админская менюшка. Так вот, если заходит юзер, то его не должны волновать какие-то там таблички с вводом пароля и т.д. Если я админ, то как мне аутентификоваться(ну и слово), нужно зайти на кокаой нить скрытый линк, ввести там логин и пароль??? Допустим линк указывает на каккой нить сервлет и что тогда должен делать этот сервлет?????

а юзеры у тебя логинятся?
...
Рейтинг: 0 / 0
роли пользователей
    #32643309
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Гpacoff wessenСпасибо Грасофф, буду разбираться, но все равно, мне не хрена не ясен один момент, вот есть у меня шаблон, по этому шаблону сделан весь сайт, если ты админ, то у тебя в правом верхнем углу должна висеть админская менюшка. Так вот, если заходит юзер, то его не должны волновать какие-то там таблички с вводом пароля и т.д. Если я админ, то как мне аутентификоваться(ну и слово), нужно зайти на кокаой нить скрытый линк, ввести там логин и пароль??? Допустим линк указывает на каккой нить сервлет и что тогда должен делать этот сервлет?????

а юзеры у тебя логинятся?нет, юзеры не логинятся.
...
Рейтинг: 0 / 0
роли пользователей
    #32643312
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
страничку для админа сделать не видимую юзерам для логина.
...
Рейтинг: 0 / 0
роли пользователей
    #32643314
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот даже по твоему примеру, если я зайду на index.jsp, как сервер поймет, кто я?
...
Рейтинг: 0 / 0
роли пользователей
    #32643315
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessenвот даже по твоему примеру, если я зайду на index.jsp, как сервер поймет, кто я?

а ты сделай :) и увидишь как :)

окно тебе браузер покажет с двумя полями ввода - логин/пассворд.
...
Рейтинг: 0 / 0
роли пользователей
    #32643317
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Гpacoffстраничку для админа сделать не видимую юзерам для логина.имнно это я и хотел услышать, только какие апи использовать, что бы сервер определил мою роль, и если все таки определит, то она на протяжении всей сессии держаться будет? В каждом запросе?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
роли пользователей
    #33370505
galisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день !

Не получилось заставить Tomcat 5.5.12 считать мой файл с юзерами и ролями.
Работает только со своим tomcat-users.xml.

Сделано вроде согласно по документации.
В /META-INF/content.xml записал
Код: plaintext
1.
2.
<Realm className="org.apache.catalina.realm.MemoryRealm"
             path="путь\www\app\WEB-INF\myusers.xml"/>

содержимое myusers.xml:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="loader"/>
  <role rolename="madmin"/>
  <user username="oper1" password="oper1" roles="loader"/>
  <user username="sadmin" password="sadmin" roles="madmin,loader"/>
</tomcat-users>

Что не так ?
Спасибо заранее
...
Рейтинг: 0 / 0
роли пользователей
    #33372703
galisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день !

Похоже так никто и не знает как решить эту задачку ;(

Так и придется в tomcat-users.xml все заталкивать.
...
Рейтинг: 0 / 0
роли пользователей
    #33372816
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
galishaСделано вроде согласно по документации.покажи ссылку на документацию. или дай имя файла этой документации.
...
Рейтинг: 0 / 0
роли пользователей
    #33372889
galisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот ссылка:

http://tomcat.apache.org/tomcat-5.5-doc/realm-howto.html

Может я действительно чего не понял, не так прочел (перевел) ?
...
Рейтинг: 0 / 0
роли пользователей
    #33372895
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может быть. а в файле server.xml ты что-нибудь делал?
...
Рейтинг: 0 / 0
роли пользователей
    #33372942
galisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да ничего не трогал, ссылку только на свое приложение вывел и все.

Но если у Вас это работает, то поделитесь настройками, плиз.

Если такое не делали, то и ладно. Можно в принципе и с общим файлом жить.
...
Рейтинг: 0 / 0
роли пользователей
    #33372985
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так?
server.xml
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
...
<GlobalNamingResources>
  ...
  <Resource name="MyUserDatabase" auth="Container"
                 type="org.apache.catalina.UserDatabase"
                 description="My user database that can be updated and saved"
                 factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
                 pathname="c:/my/my-tomcat-users.xml" />
</GlobalNamingResources>
...

    <Engine name="yandexEngine" defaultHost="www.yandex.ru">
      ...
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                 resourceName="MyUserDatabase"/>
    </Engine>
...

твой content.xml (я так понимаю, что это описание контекста)
Код: plaintext
1.
2.
3.
4.
<Context docBase="c:/my-webapps/content-site">
  <ResourceLink name="myUsers" global="MyUserDatabase"
                type="org.apache.catalina.UserDatabase"/>
</Context>

web.xml твоего приложения
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
...
  <resource-env-ref>
    <resource-env-ref-name>
      myUsers
    </resource-env-ref-name>
    <resource-env-ref-type>
      org.apache.catalina.UserDatabase
    </resource-env-ref-type>
  </resource-env-ref>
...
...
Рейтинг: 0 / 0
роли пользователей
    #33373096
galisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за советы.

Один из похожих вариантов, как написано у Вас пытался делать, но Tomcat ругался.
К сожалению, server.xml с собой не прихватил. Попробую по Вашему приведенному примеру, может и прокатит.

Могу только привести кусок web.xml:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
   <security-constraint>
      <display-name>Area of data loading</display-name>
      <web-resource-collection>
         <web-resource-name>PArea loading</web-resource-name>
	 <!-- Define the context-relative URL(s) to be  protected  -->
         <url-pattern>/madm/ld/*</url-pattern>
	 <!--  If  you list http methods, only those methods are  protected  -->
	 <http-method>DELETE</http-method>
         <http-method>GET</http-method>
         <http-method>POST</http-method>
	 <http-method>PUT</http-method>
      </web-resource-collection>
      <auth-constraint>
         <!-- Anyone with one of the listed roles may access  this  area -->
         <role-name>madmin</role-name>
	 <role-name>loader</role-name>
      </auth-constraint>
    </security-constraint>

    <login-config>
      <auth-method>BASIC</auth-method>
      <realm-name>Data load area</realm-name>
    </login-config>
        
    <!-- Security roles referenced by  this  web application -->
    <security-role>
      <role-name>loader</role-name>
    </security-role>
    <security-role>
      <role-name>madmin</role-name>
    </security-role>    

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


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