BforBank : double authentification

Bonjour,

Je suis un nouvel utilisateur de Kresus (via YunoHost). Tout d’abord merci pour l’initiative, je trouve ça top de pouvoir auto-héberger son agrégateur bancaire :slight_smile: J’ai réussi à ajouter plusieurs comptes donc mon install semble fonctionnelle, mais je bute avec BforBank :

  1. je renseigne mon identifiant, ma date de naissance ainsi que mon mot de passe, une 1ère authentification semble fonctionner puisque dans les logs on peut voir qu’il détecte mon PEA
  2. ensuite il m’envoie un SMS, je saisis le code et là ça plante :
[2023-08-01T10:38:35.296] [INFO] HTTP - POST /kresus/api/settings - 200 (16 ms)
[2023-08-01T10:38:35.356] [INFO] accounts-manager - Retrieve all accounts from access bforbank with login ***
[2023-08-01T10:38:35.362] [INFO] providers/woob - Calling woob: command accounts...
[2023-08-01T10:38:37.299] [INFO] providers/woob - exited with code 0.
[2023-08-01T10:38:37.301] [INFO] providers/woob - Saving session for access from bank bforbank with login ***
[2023-08-01T10:38:37.313] [INFO] providers/woob - Browser question is required; propagating question to the user.
[2023-08-01T10:38:37.318] [INFO] HTTP - POST /kresus/api/accesses - 200 (1986 ms)
[2023-08-01T10:38:54.662] [INFO] accounts-manager - Retrieve all accounts from access bforbank with login ***
[2023-08-01T10:38:54.668] [INFO] providers/woob - Calling woob: command accounts...
[2023-08-01T10:39:00.686] [INFO] providers/woob - exited with code 0.
[2023-08-01T10:39:00.686] [INFO] providers/woob - Saving session for access from bank bforbank with login ***
[2023-08-01T10:39:00.708] [INFO] providers/woob - OK: woob exited normally with non-empty JSON content.
[2023-08-01T10:39:00.710] [INFO] accounts-manager - -> 1 bank account(s) found
[2023-08-01T10:39:00.715] [INFO] accounts-manager - New account found:  PEA
[2023-08-01T10:39:00.716] [INFO] accounts-manager - => Saving it as per request.
[2023-08-01T10:39:00.803] [INFO] providers/woob - Calling woob: command operations...
[2023-08-01T10:39:08.623] [INFO] providers/woob - exited with code 1.
[2023-08-01T10:39:08.625] [INFO] providers/woob - Command returned an error code.
[2023-08-01T10:39:08.625] [INFO] providers/woob - Checking that woob is installed and can actually be called…
[2023-08-01T10:39:08.627] [INFO] providers/woob - Calling woob: command test...
[2023-08-01T10:39:09.585] [INFO] providers/woob - exited with code 0.
[2023-08-01T10:39:09.586] [INFO] providers/woob - OK: woob exited normally with non-empty JSON content.
[2023-08-01T10:39:09.587] [ERROR] providers/woob - Got error while running command "operations": Unknown error: Unexpected error at login: "StrongAuthenticationSessionExpired".
Traceback (most recent call last):
  File "/var/www/kresus/build/server/providers/woob/py/main.py", line 704, in fetch
    results['values'] = self.get_operations(from_date)
  File "/var/www/kresus/build/server/providers/woob/py/main.py", line 621, in get_operations
    op for op in self.backend.iter_coming(account)
  File "/var/www/kresus/data/woob-data/modules/3.6/woob_modules/bforbank/module.py", line 61, in iter_coming
    return self.browser.get_coming(account)
  File "/var/www/kresus/venv/lib/python3.9/site-packages/woob/browser/browsers.py", line 1118, in inner
    browser.do_login()
  File "/var/www/kresus/venv/lib/python3.9/site-packages/woob/browser/mfa.py", line 181, in do_double_authentication
    handle_method()
  File "/var/www/kresus/data/woob-data/modules/3.6/woob_modules/bforbank/browser.py", line 286, in handle_sms
    self.handle_errors(error, clear_twofa=True)
  File "/var/www/kresus/data/woob-data/modules/3.6/woob_modules/bforbank/browser.py", line 180, in handle_errors
    raise AssertionError('Unexpected error at login: "%s"' % error)
AssertionError: Unexpected error at login: "StrongAuthenticationSessionExpired"

[2023-08-01T10:39:09.587] [ERROR] providers/woob - 	(error code: GENERIC_EXCEPTION)
[2023-08-01T10:39:09.603] [ERROR] controllers/accesses - The access process creation failed, cleaning up...
[2023-08-01T10:39:09.604] [INFO] controllers/accesses - 	deleting access...
[2023-08-01T10:39:09.610] [ERROR] helpers - when creating a bank access: Unknown error: Unexpected error at login: "StrongAuthenticationSessionExpired".
Traceback (most recent call last):
  File "/var/www/kresus/build/server/providers/woob/py/main.py", line 704, in fetch
    results['values'] = self.get_operations(from_date)
  File "/var/www/kresus/build/server/providers/woob/py/main.py", line 621, in get_operations
    op for op in self.backend.iter_coming(account)
  File "/var/www/kresus/data/woob-data/modules/3.6/woob_modules/bforbank/module.py", line 61, in iter_coming
    return self.browser.get_coming(account)
  File "/var/www/kresus/venv/lib/python3.9/site-packages/woob/browser/browsers.py", line 1118, in inner
    browser.do_login()
  File "/var/www/kresus/venv/lib/python3.9/site-packages/woob/browser/mfa.py", line 181, in do_double_authentication
    handle_method()
  File "/var/www/kresus/data/woob-data/modules/3.6/woob_modules/bforbank/browser.py", line 286, in handle_sms
    self.handle_errors(error, clear_twofa=True)
  File "/var/www/kresus/data/woob-data/modules/3.6/woob_modules/bforbank/browser.py", line 180, in handle_errors
    raise AssertionError('Unexpected error at login: "%s"' % error)
AssertionError: Unexpected error at login: "StrongAuthenticationSessionExpired"

[2023-08-01T10:39:09.612] [INFO] helpers - Error
    at new KError (/var/www/kresus/build/server/helpers.js:59:22)
    at callWoob (/var/www/kresus/build/server/providers/woob/index.js:192:15)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async _fetchHelper (/var/www/kresus/build/server/providers/woob/index.js:249:16)
    at async Object.fetchOperations (/var/www/kresus/build/server/providers/woob/index.js:274:12)
    at async pollTransactions (/var/www/kresus/build/server/lib/accounts-manager.js:216:34)
    at async AccountManager.syncTransactions (/var/www/kresus/build/server/lib/accounts-manager.js:339:24)
    at async createAndRetrieveData (/var/www/kresus/build/server/controllers/accesses.js:149:37)
    at async create (/var/www/kresus/build/server/controllers/accesses.js:184:22)
[2023-08-01T10:39:09.619] [ERROR] HTTP - POST /kresus/api/accesses - 500 (14981 ms)
[2023-08-01T10:39:16.753] [INFO] controllers/accesses - Cleaning up incomplete access with id 33
[2023-08-01T10:39:17.104] [INFO] HTTP - GET /kresus/api/all/ - 304 (354 ms)
[2023-08-01T10:39:24.719] [INFO] providers/woob - Calling woob: command version...
[2023-08-01T10:39:25.695] [INFO] providers/woob - exited with code 0.
[2023-08-01T10:39:25.696] [INFO] providers/woob - OK: woob exited normally with non-empty JSON content.
[2023-08-01T10:39:25.699] [INFO] HTTP - GET /kresus/api/instance/woob - 304 (981 ms)

De quel côté puis-je creuser ?

Merci d’avance,

Salut !

Merci pour le retour. Est-ce que tu as essayé de mettre à jour Woob (en dehors de Kresus) et ses modules (depuis les préférences, puis administration, dans Kresus) ? Si ça plante encore, est-ce que tu as l’occasion de tester avec woob directement en ligne de commande stp, et voir si tu reproduis le problème ?

Salut,

Je ne sais pas mettre à jour woob en dehors de Kresus. via YunoHost ? en ligne de commande avec quelque chose du genre « apt update xxx » ?
Depuis l’admin Kresus j’ai lancé la mise à jour manuelle des modules. Tout en haut il est indiqué que ma version de woob est la 3.6.

As-tu un exemple d’utilisation de woob en ligne de commande, stp ?

Merci d’avance,

Salut, rien dont je me souvienne en particulier là comme ça, mais je suis certain que le site de Woob a de la documentation là-dessus :slight_smile:

Pour mettre à jour woob tu peux forcer une mise à jour du paquet yunohost avec sudo yunohost app upgrade kresus -u https://github.com/YunoHost-Apps/kresus_ynh.