roelderickx / connective-plugin-linux

A replacement for the Connective Plugin which is used on several websites to log in or sign documents using a card reader and an electronic identity card.
GNU General Public License v3.0
36 stars 2 forks source link

No longer works? #14

Closed bertvandepoel closed 11 months ago

bertvandepoel commented 1 year ago

I've been trying to log in to AG insurance with the help of your great effort at making things work even though Connective doesn't support Linux. I got the browser extension easily set up, but it seems things aren't working correctly anymore.

Specifically, I'm seeing a 409 Conflict on a version check GET request, followed by "could not fetch latest signid version info. Defaulting to no version restrictions... The SignIdPlugin setting is not enabled. Check configuration for tenant 2.". I fear this might mean they changed something that broke this code.

roelderickx commented 1 year ago

Hello,

I just tested with Doccle and I was able to log in just fine. I don't have an account at AG insurance but I found https://login.aginsurance.be/PIAULOGIN/msa-idp/myglobalbenefits/nl?ForceLogin=True where I can register, in the first step the id card is read out and that worked too.

However, from what you wrote it seems they require the Connective SignId plugin in stead of the Connective browser plugin. It probably works very similar, but it is different enough to be incompatible. This happened for Itsme as well at some point (see https://github.com/roelderickx/connective-plugin-linux/issues/11#issuecomment-1029364411), but I have since received reports it worked again. They must have reverted to the older Connective browser plugin.

Did it work in the past? If yes then something changed at AG's end, if no it might be worthwhile to go through the troubleshoot guide in the test folder of this repository - but first make sure Connective SignId is not required, in that case it is useless to debug.

bertvandepoel commented 1 year ago

I am trying to log in on the URL you've mentioned. I always get this after it loads a while: Screenshot at 2023-07-02 14-13-05

If it's working for you, then I'm guessing I didn't do something right. Any suggestions how I can further debug this? I simply installed the browser addon I got from get_connective_plugin.py then peformed nativemessaging-install.py firefox.

The insurance I have with AG is new, so I've never had to log in before. I therefore can't really compare. Considering you are getting further than I am, I'm guessing I did something wrong.

roelderickx commented 1 year ago

Good news: it should be supported by this version of the plugin.

That means there is something wrong with your setup. Unfortunately the message you get does not help you to pinpoint what exactly the problem is:

To verify the second point, go to https://github.com/roelderickx/connective-plugin-linux/tree/main/test and follow the steps to test the backend.

bertvandepoel commented 1 year ago

Oh weird. I thought I installed pyscard but it seems I didn't (the debugging instructions helped a lot there)! Now I see it reading my info, address, then trying to fetch the CA for a long time, then fail. After trying again it gets further, says I should enter my PIN, but I don't get a prompt and after 1-2 seconds it goes to this: Screenshot at 2023-07-03 00-10-51

roelderickx commented 1 year ago

Ok great, the plugin clearly works now and communication with the backend seems to be ok as well.

For the pincode it depends on the type of card reader you have. If it has a keypad there will be a messagebox telling you to enter your pincode on the card reader, it only happens after you click ok on the messagebox. If there is no keypad on your cardreader there should be a numeric keyboard window asking for your pincode.

If none of that happens there may be an issue with the installation of the tkinter library or one of its dependencies. Does the VERIFY_PIN message work correctly in debug?

roelderickx commented 11 months ago

Did you manage to get it working in the meanwhile? If so, is there something to be added to the documentation which could potentially help others with the same problem?