2012-02-01 3 views
2

Проблема:3 ноги OAuth (RSA-SHA1) аутентификации IMAP Gmail - JAVA

Я хочу использовать 3 протокола OAuth с использованием аутентификации RSA-SHA1 для клиента Imap с Google.

У меня есть access_token для пользователя. Я успешно схватил маркеры, аутентифицировал с помощью Google и схватил токен. Я знаю, что этот токен доступа правильный, потому что я могу правильно разобрать и прочитать «Контакты».

У меня возникли проблемы с аутентификацией imap (javamail-1.4.4) и RSA-SHA1 и Google.

Примеры приведены только для HMAC-SHA1. Кто-нибудь понял, как использовать RSA-SHA1 с Google и успешно подключиться к их api и читать электронные письма? Обратите внимание, что все, что у меня есть, - это сохраненный access_token.

Спасибо.

ответ

0

JavaMail не поддерживает OAUTH. Если вы можете найти поставщика SASL, который поддерживает OAUTH, JavaMail может использовать этого поставщика SASL.

0

Я думаю, что Google предоставляет пример для этого: http://code.google.com/p/google-mail-xoauth-tools/wiki/JavaSampleCode

+0

Ммм ... Я думаю, вы не поняли вопрос. Мне нужно 3 ноги, а не 2 ноги. Мне также нужно использовать RSA-SHA1, а не HMAC-SHA1, который является примерами Java, как указано в вопросе. Спасибо за попытку. – agallego

+0

Я думаю, вам просто нужно адаптировать код. Проверьте класс: XoauthSaslResponseBuilder. Вам необходимо обновить подпись от HMAC-SHA1 до RSA-SHA1. Адаптируйте также параметр внутри XoauthAuthenticator в соответствии с примером с тремя ногами: http://code.google.com/apis/gmail/oauth/protocol.html. Библиотека OAuth выполнит работу для подписи. – Sylvain