Logging on using the Mashup Service authentication methods
You can use the IBM® Cognos® Mashup Service authentication methods to logon.
Use the auth/logon resource
type, submitting a credentials element
with the xmlData option.
You can determine which credentials the server requires by submitting an empty credentials element:
http://localhost/ibmcognos/bi/v1/disp/rds/auth/logon?
xmlData=<credentials/>
The server response is a credentialPrompt element
that lists actualValue elements
for which the server has values and missingValue elements
whose values must be supplied.
You can then submit an auth/logon request
with a credentials element
that contains values for the missingValue elements.
If your logon attempt is successful, the server sends a response
containing an accountInfo element.
If your logon request contains incorrect data, or still has missing
values, the server response is another credentialPrompt element.
The following JavaScript code snippet illustrates how you can code a logon request.
To see this code in context, view the following sample:
installation_location/webcontent/samples/sdk/cms/javascript/authentication/reportOutput.html
function doLogon()
{
var myNameSpace=document.getElementById("nameSpace").value;
var myUserName=document.getElementById("userName").value;
var myPassword=document.getElementById("password").value;
var xmlData =
"xmlData=<credentials>"
+"<credentialElements><name>CAMNamespace</name><label>Namespace:</label>"
+"<value><actualValue>"+myNameSpace+"</actualValue></value>"
+"</credentialElements><credentialElements><name>CAMUsername</name><label>User ID:</label>"
+"<value><actualValue>"+myUserName+"</actualValue></value>"
+"</credentialElements><credentialElements><name>CAMPassword</name><label>Password:</label>"
+"<value><actualValue>"+myPassword+"</actualValue></value>"
+"</credentialElements></credentials>";
try
{
objXHR.open("POST", parent.settings.document.getElementById("serverURL").value +
"/rds/auth/logon", false);
objXHR.send(xmlData);
checkLoginStatus();
}
catch (e)
{
alert("Error occurs when doing logon.\r\n"+e);
}
}