2014-06-26 53 views
1

我已經使用我的應用程序的url在salesforce中創建了Web Tab。當有人打開該選項卡並且我的應用程序接到電話時,我如何確定打開它的用戶已獲得授權?Salesforce [Web Tab]:如何授權用戶

我知道我可以將{!User.Email}和其他變量傳遞給我的應用程序來識別用戶。我猜一些網站也發送{!Api.SessionId},但我找不到任何有關如何使用Api.SessionId或任何其他可以傳遞的變量進行授權的信息。

更新 我發現https://developer.salesforce.com/page/Single_Sign_On_for_Composite_Apps這是我問的問題的指南。但無法找到給定的Java類的jar。

回答

1

您可以使用API​​ SessionID和ServerURL通過API向Salesforce發回請求。與PartnerAPI說。這將確認用戶確實來自有效的Salesforce會話。您可以確認其他詳細信息,例如活動會話中的電子郵件地址。


或者,您可以使用已簽名的請求創建更新的連接的應用程序。這裏發佈給你的應用程序的請求將使用可以解密的祕密進行簽名。這確保了細節沒有被僞造或篡改。

您可以創建一個Canvas應用程序,而不是創建一個Composite應用程序。這是一種連接應用程序。您可以在Creating a Connected App找到有關設置的說明。已簽名的請求已發送到您的Web應用程序。請參閱Signed Request Authentication

+0

如何使用簽名請求創建應用程序以及如何發佈加密請求。你在談論API(啓用OAuth設置)。 – hridayesh

+0

@hridayesh我已經擴展了我的答案,詳細介紹了創建連接的應用程序和簽名請求上的組合。 –

+0

謝謝丹尼爾!但是如果連接了canvas應用程序,它可以在salesforce中添加爲Tab嗎? – hridayesh