|
|
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
Добрый день, уважаемые! Цель следующая: нужно чтобы SOAP сервер имел аутентификацию. Желательно HTTP (Если я правильно понял, в этом случае она будет запрашивать логин и пароль в броузере, и иметь возможность получать логин и пароль через заголовок). Немного сумбурно, но как могу =). Имею следующее: Модуль MyTestIntf.pas Код: pascal 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. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. Модуль MyTestImpl.pas Код: pascal 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. 32. 33. Текущий проект пытается получить заголовок, и если он есть, то сообщить в результат функции "Да" в противном случае "Нет". Не могу никак получить ни одного заголовка пробовал различными способами, всегда получается что заголовки не передаю. Проверяю с помощью SOAPUI Запрос следующий: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Ответ получаю в следующем виде: Код: pascal 1. 2. 3. 4. 5. 6. 7. Помогите, может кто знает, что я делаю не так. P.S. Да я знаю что получается не HTTP авторизация, как ее сделать не знаю, потому и спрашиваю. =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2018, 10:46 |
|
||
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
Прикладываю исходники ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2018, 10:49 |
|
||
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
HTTP авторизация делается средствами web-сервера а не средствами протокола SOAP. Если вы через хидеры-soap добавляете авторизацию, то и требовать он будет ее также через хидеры-soap, а не хидеры-реквеста. А т.к. в Delphi транспортный уровень стандартного soap захардкожен, то добавить http думаю будет проблематично.. или каким-то образом на событиях найти места где до обработки пакетов смотреть что пришло, вручную брать заголовки реквеста, парсить, если нет авторизации, подменять на свои хидеры респонса которые будут требовать авторизацию ну и обрабатывать самим эти хидеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2018, 16:57 |
|
||
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
Через THTTPRIO.HTTPWebNode.UserName и THTTPRIO.HTTPWebNode.Password. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2018, 17:49 |
|
||
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
rgreatЧерез THTTPRIO.HTTPWebNode.UserName и THTTPRIO.HTTPWebNode.Password. Это клиент, если подключится... А там сервер... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2018, 18:14 |
|
||
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2018, 00:14 |
|
||
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
X-Cite, Спасибо, пошел по указанному пути и в принципе получилось решить Basic Authorization. Перехватываю запрос вот тут Код: pascal 1. 2. 3. 4. 5. и ручками узнаю из объекта Request наличие авторизации, логина и пароля (декодируется из Base64MIME), потом его анализирую и решаю, что нужно сделать вернуть код ошибки авторизации Код: pascal 1. или далее выполнять обработку запроса Код: pascal 1. Да, я понимаю, что есть свои минусы данного решения, я пока другого способа не нашел, если есть подскажите как. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2018, 07:53 |
|
||
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
rgreat, К сожалению, может вы не правильно прочитали суть проблемы, может я не нашел в справке нужного, НО: предлагаемый там вариант авторизации так называемая авторизация через SOAP заголовки, мне же нужна через HTTP заголовки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2018, 07:54 |
|
||
|
SOAP сервер Помогите с авторизацией
|
|||
|---|---|---|---|
|
#18+
Долго искал ответ на похожий вопрос. Как проверить soap-клиента с basic auth на уровне http заголовка. Смоделировал так: Сделал простейший soap в виде приложения ISAPI для IIS. На это приложение настроил basic auth. Дальше с помощью SoapUI трассировал заголовки тело http-запросов. Вероятно, можно было проще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2021, 17:05 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=24&tid=2037490]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
373ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 196ms |
| total: | 624ms |

| 0 / 0 |
