Автоматизация входа в наше собственное приложение OAuth - PullRequest
3 голосов
/ 08 апреля 2011

У нас есть несколько веб-сервисов с OAuth.

Мне необходимо выполнить некоторые тесты против них, предпочтительно в автоматизированной среде без использования браузера.

Проблема при входе в систему.

Без использования браузера, с использованием DotNetOpenAuth и настройкой HttpContext.Current вручную я, кажется, могу сделать все и получить токен запроса и верификатор (я использую тестовое имя пользователя и пароль).

Я считаю, что следующий этап - получение авторизационного токена. К сожалению, как бы я ни строил запрос, я не могу заставить его работать.

В настоящее время при использовании WebConsumer (библиотека DotNetOpenAuth) и вызове consumer.ProcessUserAuthorization () возникает ошибка:

DotNetOpenAuth.OAuth.Messages.AuthorizedTokenRequest сообщение: oauth_verifier

Вероятно, весь подход неверен, поэтому любая помощь / совет будут полезны.

Спасибо.

Ответы [ 2 ]

1 голос
/ 28 апреля 2011

В итоге возникла проблема с неправильным хранением файлов cookie.

Я терял файлы cookie между страницей входа (где пользователь вводит свое имя пользователя и пароль) и страницей авторизации (где пользователь говорит, что можно делиться информацией с третьей стороной). На второй странице проводилась дополнительная проверка, чтобы определить, был ли пользователь тем, кем, по его словам, он является (читая значение cookie, которое должна была написать страница входа в систему).

Это была не проблема OAuth, просто что-то, чего я не понял на странице авторизации (которая с тех пор была удалена - c'est la vie).

У меня возникли проблемы с доменами файлов cookie (когда домен начинается с символа «.»). Этот пост помог мне:

Ошибка CookieContainer?

Я закончил копированием файлов cookie из одного домена в другой.

1 голос
/ 09 апреля 2011

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

...