BellaDati Technical Documentation : Implementing SSO - C# example
Created by Lubomir Micko, last modified on Nov 09, 2015
Step 1 - obtain accessToken from BellaDati REST API
X509Certificate2 certificate = TestCertificates.OAuthTestCertificate();
string requestUrl = "https://belladati_host/oauth/requestToken";
string userAuthorizeUrl = "https://belladati_host/authorizeRequestToken";
string accessUrl = "https://belladati_host/oauth/accessToken";
string callBackUrl = "http://localhost:8080/";
consumerContext = new OAuthConsumerContext
{
ConsumerKey = "consumerKey",
SignatureMethod = SignatureMethod.HmacSha1,
Key = certificate.PrivateKey,
ConsumerSecret = "consumerSecret"
};
IToken accessToken = new OAuthSession(consumerContext, requestUrl, userAuthorizeUrl, accessUrl).GetAccessTokenUsingXAuth(null, "username","password");
OAuthSession session = new OAuthSession(consumerContext, requestUrl, userAuthorizeUrl, accessUrl);
session.AccessToken = accessToken;
Step 2 - create unattended login request and get request_id and request_code
string responseText = session.Request().Post().ForUrl("https://belladati_host/api/users/user_to_log_in/requests").ToString();
string request_id = responseText.Split(';')[0];
string request_code = responseText.Split(';')[1];
Step 3 - generate login link with request_id and request_code
string link = "https://belladati_host/user/processRequest/" + request_id + "/" + request_code;
Step 4 - execute XMLHttpRequest using the generated link
$.ajax({
url: link,
xhrFields: {
withCredentials: true
},
success: console.log("Success"),
error: console.log("Error")
});