Авторизация в SF

Авторизация в SF

Привет всем, кто сталкивался с авторизацией со сторонних приложений в SF. Из мне известных это
1) SOAP + Достаточно логина и пароля(+токен) - ну SOAP нехочеться возиться
2) REST + всё просто сервисы простые всё в json - надо создавать прилоение на стороне SF и для авторизации надо передавать токен и секретный ключ, неудобно.

Есть другие варианты? хочеться чтобы в приложении клиент просто вводил свой логин и пароль от сф и всё?

3ff92449553a511907deb1a8b123b58c?size=200&d=https%3a%2f%2fsalesforce developer.ru%2fwp content%2fuploads%2favatars%2fno avatar

Есть и другие варианты. Но они еще сложнее.

Можно в краце объяснить что Вас не устраивает в выше описанных методах авторизации?

В SOAP не устраивает необходимость использования xml для дальнейшей работы, хочется json'ом лёгкие рест методы.
В REST не устраивает необходимость создавать Apps потом вбивать Consumer Key и Consumer Secret в приложение.

3ff92449553a511907deb1a8b123b58c?size=200&d=https%3a%2f%2fsalesforce developer.ru%2fwp content%2fuploads%2favatars%2fno avatar

Ну батенька......

wilder
Ну батенька......

Можно в краце объяснить что Вас не устраивает в выше ©

А можно сессию из соапа заюзать для доступа к ресту?
Или получить Consumer Key и Consumer Secret через SOAP?

3ff92449553a511907deb1a8b123b58c?size=200&d=https%3a%2f%2fsalesforce developer.ru%2fwp content%2fuploads%2favatars%2fno avatar

ace
А можно сессию из соапа заюзать для доступа к ресту?

Можно. Но не всегда...

ace
А можно сессию из соапа заюзать для доступа к ресту?

Не можно а нужно.
Так собтвенно все и делают. Логинятся через SOAP (тот самый ненавистный XML), получают из него ID сессии и дальше работают со любыми вариантами API где он поддерживается. Wilder может и прав что он не везде поддерживается, но я лично пока с таким не сталкивался. Для 99% задач этот вариант работает.

Dmitry Shnyrev
ace
А можно сессию из соапа заюзать для доступа к ресту?

Не можно а нужно.
Так собтвенно все и делают. Логинятся через SOAP (тот самый ненавистный XML), получают из него ID сессии и дальше работают со любыми вариантами API где он поддерживается. Wilder может и прав что он не везде поддерживается, но я лично пока с таким не сталкивался. Для 99% задач этот вариант работает.

Спс понял буду пробовать.

3ff92449553a511907deb1a8b123b58c?size=200&d=https%3a%2f%2fsalesforce developer.ru%2fwp content%2fuploads%2favatars%2fno avatar

А куда идентификатор сессии пихать при рест запросах?

3ff92449553a511907deb1a8b123b58c?size=200&d=https%3a%2f%2fsalesforce developer.ru%2fwp content%2fuploads%2favatars%2fno avatar

ace
А куда идентификатор сессии пихать при рест запросах?

Разобрался, ШИКАРНО.

Если кому понадобиться
шлём сюда

https://test.salesforce.com/services/Soap/u/40.0

вот это
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:partner.soap.sforce.com">

<soapenv:Body>
<urn:login>
<urn:username>login</urn:username>
<urn:password>pass+token</urn:password>
</urn:login>
</soapenv:Body>
</soapenv:Envelope>

Получаем сессию дальше
https://test.salesforce.com/services/data/v20.0/query/?q=SELECT+name,Phone+from+Account

в хеадерах пишем
Authorization: Bearer +sessionId

3ff92449553a511907deb1a8b123b58c?size=200&d=https%3a%2f%2fsalesforce developer.ru%2fwp content%2fuploads%2favatars%2fno avatar

ace
Authorization: Bearer +sessionId

Все верно!

Interesting information? Help us, post link to social media..