"Choose a digital certificate" windows popping up
My gadget uses RPS authentication via HTTPS protocol to get contacts from Live Contacts address book.
The problem is that if to open the gadget HTML file by itself (not from the sidebar) the popup window appears saying: "Choose a digital certificate. The website you want to view requests identification. Please choose a certificate.". And this requires pressing OK or Cancel buttons in order to proceed. However, if I run it as a gadget, I cannot get an access to this digital certificate window, therefore the gadget just hangs.
Do you know how to bypass this popup window. Thanks a lot for your help.
(this thread was duplicated as unfortunately I didn't know which forum I need to relate my post to)
Federico, following the MSDN article I am using the following code to get RPS ticket from Windows Live Contacts service:
When I test this in IE it the windows pops up and requires confirmation about the certificate. Because inside the gadget the message is not visible, the script cannot proceed. What I have come up with is to use the function twice with a time period between. In this case, it somehow works.
Following my code above, I am using the standard method below to send XMLHTTP request:
Code Snippet
function setupAjax()
{
var request = null;
try {
// Firefox, Opera 8.0+, Safari
request=new XMLHttpRequest();
}
catch (e) {
// Internet Explorer
try {
request=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
request=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {
alert("Your browser does not support AJAX!");
return false;
}
}
}
return request;
} //setupAjax
The screenshot of the message box is here: http://www.sgolubev.com/anonim/digi-cert.png
As there is no chance to click OK buttons inside the gadget, I'm just calling the method of getting token again after some interval.
Hi, Sergei:
This is kinda weird because it seems to us that you are executing this XmlHttp POST request from your browser. This is explicitly prohibited by cross-domain security mechanism in IE and normally you should get a "Permission Denied" or "Access denied" error (we tried your code and Access denied is what we got). Sure there is a way to ask IE to allow you to execute cross-domain request from localhost (there is a browser setting that can do that), but that's pretty much it. I am kinda surprised that you are presented with the dialog asking for a client cert.
I am wondering if you mind sending me your complete html page so that I can test it out. You can reach me at: yuanyu at microsoft.com