LINUX.ORG.RU
решено ФорумAdmin

Кто-нибудь работал с msa2324 через xml api?

 ,


0

1

Доброго времени суток.

Сабж. Скрипт, написанный для msa p2000 g3, не работает с древним msa2324fc. Смотрю подробнее и вижу, что xml api запросы он принимает и обрабатывает, но похоже изменился механизм авторизации.

В ответ на логин он успешно возвращает session key

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RESPONSE><OBJECT basetype="status" name="status" oid="1">
<PROPERTY name="response-type">success</PROPERTY>
<PROPERTY name="response-type-numeric">0</PROPERTY>
<PROPERTY name="response">39a2f5303c31dce37b3dfc42c10138c6</PROPERTY>
<PROPERTY name="return-code">1</PROPERTY>
</OBJECT></RESPONSE>

, но добавление к обычному запросу ( 'show disks' ) заголовка

sessionKey = $sessionKey

Неожиданно приводит к «Unauthorized access requested». Даже если запрос отправлять от имени административного пользователя.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RESPONSE><OBJECT basetype="status" name="status" oid="1">
<PROPERTY name="response-type">error</PROPERTY>
<PROPERTY name="response-type-numeric">1</PROPERTY>
<PROPERTY name="response">Unauthorized access requested</PROPERTY>
<PROPERTY name="return-code">6</PROPERTY>
</OBJECT></RESPONSE>

В «HP StorageWorks 2000 G2 Modular Smart Array CLI Reference Guide» информации не нашёл.

На всякий случай по очереди перезагрузил оба management controller'а - не помогло.

В картинках:

★★★★★

Ответ на: комментарий от router

обновление тоже не помогло

router ★★★★★
() автор топика

В итоге забил на веб-доступ и сделал через telnet, там тоже можно получать ответы в виде такого же XML

Для того, чтобы ответы в ssh или telnet сессии выдавались в XML, нужно предварительно в той же сессии выполнить команду

set cli-parameters api pager off

Дальше тривиальные изменения в коде, чтобы работал с telnet'ом. Заодно наконец-то вынес работу с массивом в отдельный модуль.

router ★★★★★
() автор топика
16 апреля 2015 г.

На старых MSA, токен авторизации передаётся через Cookie с параметрами wbisessionkey и wbiusername, например:

curl -v -H 'Cookie: wbisessionkey=0fd1795932bbd3905c5d7439ad9ae4fd; wbiusername=manage' http://10.0.0.2/api/show/vdisks
yashumitsu
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.