?
avatar Dr-Sommer
Dr-Sommer
7 Apr 2021

Steps to reproduce the issue

In user Interface klick on "W3C Web Authentication"

Expected result

To see the "Add new Authenticator" Button to add Authenticator

Actual result

No "Add new Authenticator" Button

webauth1

webauth2

System information (as much as possible)

J4b6
Debian Buster 10
PHP 7.3
ISPConfig
Apache/2.4.38

Thank you in Advance

avatar Dr-Sommer Dr-Sommer - open - 7 Apr 2021
avatar joomla-cms-bot joomla-cms-bot - change - 7 Apr 2021
Labels Added: ?
avatar joomla-cms-bot joomla-cms-bot - labeled - 7 Apr 2021
avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

Either of the PHP extensions GMP or BCmath must be loaded to add authenticators - can you confirm you have one of these PHP Extensions installed?

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

Hi Phil, Thx for your Time ;)

  1. Yes, I`m using "lets encrypt" for HTTPS

  2. Yes, GMP and BCmath seems to be installed:

Here is the Output from PHP -m :

`[PHP Modules]
apc
apcu
bcmath
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
imagick
imap
intl
json
libxml
mbstring
memcache
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
pspell
readline
recode
Reflection
session
shmop
SimpleXML
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache
`

not a clue why the Button is not visible... ;(

avatar ChristineWk
ChristineWk - comment - 7 Apr 2021

Found this, if relevant? #29731


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/33056.

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

Do you have a javascript error in your console.

The only reason the button would not show should be if you dont have GMP or bcmath installed.

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

PHP -m

Thats at the command line - which could and often does have a different list of PHP modules.

Anyway, you would get a red warning if they were not installed above where the button should be.

avatar ReLater
ReLater - comment - 7 Apr 2021

J4b6

There is a newer version or test with a nightly build.

Either of the PHP extensions GMP or BCmath must be loaded to add authenticators - can you confirm you have one of these PHP Extensions installed?

Looks like solved meanwhile. See #30316 (comment)

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

that upstream fix would have fixed a JS alert saying you could not add when you had touched your device. Different problem to this.

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

Ok, I did read out the "info.php" File:

image

Seems that both Extensions are working..

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

@PhilETaylor : there are also no Errors in the Console...

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

Please run this in a PHP file:

<?php
var_dump(function_exists('gmp_intval'));
var_dump(function_exists('bccomp'));

what does it output?

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

Showes:

bool(true) bool(true)

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

ok the only other place that sets allow_add to false is if you are trying to edit A DIFFERENT USERS webauthn keys - this is not allowed.

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

Ah, OK.... I`m trying it as ADMIN to a Registered User! So is this the Error?
How can I do it as Registered User?

Thank you so much.. ;)

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

You, logged in as admin, cannot add webauthn for other users. This is by security design of webauthn standards.

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

So if I Try it as regisered User on Frontend, I get this message:

The specified username does not correspond to a user account that has enabled passwordless login on this site.

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

Is there a manual I can use? ThX

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

The specified username does not correspond to a user account that has enabled passwordless login on this site.

You first have to be logged in as a user, and add the Key. Then logout and then you can use the key. If the user has no keys enabled then you get the message above.

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

The "best" documentation is currently the (very bad) page at https://docs.joomla.org/WebAuthn_Passwordless_Login

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

AAhhh... THERE IT IS!!! ;) ;) The Add Button is in the Users Profile.. ;)

Thank You sooo much, Phil.. <3
Understanding this was a challenge for me... ;)
I'll finish now the config and post a small HOWTO for Dummys like me... ;)

THAANNK YOOUU!! (Struggling for Days.. ;)) )

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

Im busy adding a warning if you are not logged in as the user so you can see it in future (and others can not fall into this trap)

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

Screenshot 2021-04-07 at 23 50 01

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

This is GREAT, Phil... ;)
As Admin I`m used to do everything in Joomla and if there is no warning (and in this case then no +Button) leaves me totally confused.... ;)

avatar Dr-Sommer
Dr-Sommer - comment - 7 Apr 2021

Ok, Easy Step by Step Howto:

  1. Log out from front and Backend
  2. log on as the User you want to activate webauth (I assume you`ll do it on the frontend)
  3. DO NOT TRY THIS AS ADMIN FOR ANOTHER USER!! See above....
  4. Now you will see your Profile Data
  5. Klick on EDIT PROFILE
  6. Scroll down to "Add new Authenticator"
  7. Authenticate your USB Key

This should be it... ;)

I`m, trying to use the build in Webauth from Firefox, (Softkey) but this its not working as easy as I expected.... so I have to research more bout it...

avatar PhilETaylor
PhilETaylor - comment - 7 Apr 2021

Buy a Yubikey and never look back! https://www.yubico.com/je/quiz/

avatar richard67
richard67 - comment - 8 Apr 2021

Closing as having a pull request. Please test #33064 . Thanks in advance.

avatar richard67 richard67 - change - 8 Apr 2021
Status New Closed
Closed_Date 0000-00-00 00:00:00 2021-04-08 00:03:47
Closed_By richard67
avatar richard67 richard67 - close - 8 Apr 2021
avatar PhilETaylor
PhilETaylor - comment - 15 Apr 2021

@Dr-Sommer please test #33064 so that it has a chance of being merged :)

Add a Comment

Login with GitHub to post a comment