powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / WEB Service и авторизация
4 сообщений из 4, страница 1 из 1
WEB Service и авторизация
    #38190434
cln2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток всем !
Стоит такая задача - надо сделать WEB Service (серверная часть) с авторизацией, которая передается в XML-пакете в теге header, т.е.
есть запрос вида

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' 
                   xmlns:ns1='urn:xmethods-delayed-quotes' 
				   xmlns:xsd='http://www.w3.org/2001/XMLSchema' 
				   xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' 
				   xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/' 
				   SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'>
				   
                      <SOAP-ENV:Header>
					   <validate>
                        <username xmlns='http://siebel.com/webservices'>username44</username>
                        <password xmlns='http://siebel.com/webservices'>password</password>
					   </validate>	
  </SOAP-ENV:Header>			   
				   
<SOAP-ENV:Body>
  <getAdd>
   <p1>10</p1>
   <p2>25</p2>
  </getAdd>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>



на сервере я обрабатываю метод validate, проверяю соответствие логина и пароля ... тут все хорошо ... НО

если отправить этот пакет без заголвка, т.е. вот так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' 
                   xmlns:ns1='urn:xmethods-delayed-quotes' 
				   xmlns:xsd='http://www.w3.org/2001/XMLSchema' 
				   xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' 
				   xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/' 
				   SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'>

<SOAP-ENV:Body>
  <getAdd>
   <p1>10</p1>
   <p2>25</p2>
  </getAdd>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>



то срабатывает метод getAdd, что есть нехорошо, т.к. пользователь должен быть авторизирован.

Может кто-то сталкивался с такой задачей ? Как проверять что тэг Header передан ?

Спасибо.
...
Рейтинг: 0 / 0
WEB Service и авторизация
    #38190520
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у Вас авторизация и сам вэбсервис находятся в одном домене?
Если нет - то никак.
Если да - то нафига вэбсервис?
...
Рейтинг: 0 / 0
WEB Service и авторизация
    #38190592
nbaksalyar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cln2008,

А что используете для работы с SOAP - SoapServer ? NuSoap ?
...
Рейтинг: 0 / 0
WEB Service и авторизация
    #38190822
sxq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из метода getAdd нужно проверять авторизованность, т.е. из getAdd нужно обращаться к части программы обрабатывающей ваши заголовки, и если там положительный ответ - обрабатывать дальше getAdd, если нет - ошибка.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / WEB Service и авторизация
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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