...
User logs in to external system and implicitly gains access to Joget Workflow without being prompted to login again.
Using JSON API
- Using '/web/json/directory/user/sso' JSON API.
- You are allowed to call this method using JSON API Authentication or
- Directly passes the username and password with "username" and "password" parameters respectively shown in following example.
Code Block |
---|
|
<script>
$(document).ready(function(){
$.ajax({
type: "POST",
url: 'http://localhost:8080/jw/web/json/directory/user/sso',
data: {
username: 'admin',
password: 'admin'
},
success: function(res) {
console.log("username (" + res.username + ") is " + ((res.isAdmin !== undefined && res.isAdmin === "true")?"admin":"not an admin"));
},
dataType: "json"
});
});
</script> |
Using Basic Http Authentication with JSON API
- Since V4, Joget Workflow is supported Basic HTTP Authentication in JSON API authentication, you can passing the credentials in the header.
- Example: Assuming the username and password required is "user1" and "password1" respectively, we can set the Basic Auth header to the JSON API using following jQuery script.
Code Block |
---|
|
<script>
$(document).ready(function(){
$.ajax({
type: "POST",
url: 'http://localhost:8080/jw/web/json/directory/user/sso',
beforeSend: function (xhr) {
xhr.setRequestHeader ("Authorization", "Basic dXNlcjE6cGFzc3dvcmQx");
},
success: function(res) {
console.log("username (" + res.username + ") is " + ((res.isAdmin !== undefined && res.isAdmin === "true")?"admin":"not an admin"));
},
dataType: "json"
});
});
</script> |
Using Javascript API
- Includes the jQuery & util.js libraries.
Using the AssignmentManager.login method for SSO.
- Perform actions in callback of successful login.
Code Block |
---|
|
<script type="text/javascript" src="http://localhost:8080/jw/js/jquery/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="http://localhost:8080/jw/js/json/util.js" ></script>
<script type="text/javascript" >
$(document).ready(function(){
var loginCallback = {
success : function(response){
if(response.username != "roleAnonymous"){
alert("login successfully");
}else{
alert("login fail");
}
}
};
AssignmentManager.login('http://localhost:8080/jw', 'admin', 'admin', loginCallback);
});
</script> |
Login an User Programmatically
- You can build your own Web Service Plugin to perform custom SSO implementation.
...