phpBB 3.2 EVE SSO / ESI extension [beta]

Hello, i have installed a new clean version with 1.2.5b with phpbb 3.2.7 and php 7.1 and MySQL(i) 5.7.27

I have some problem with auth :

Informations

Error: Invalid auth state.

Can you help me please

Any chance you can PM me your board url?

Will you be updating the extension to support the latest ESI updates and phpbb updates, including the new feature update 3.3?

Latest master on bitbucket works for phpbb 3.3 but is not yet tested a lot.

SNITCH! First, thanks for all your work, @Snitch_Ashor !

I just updated to PHPBB 3.3, PHP 7.1 and EVESSO 1.2.6. I am getting the error:

**[phpBB Debug] PHP Warning** : in file **[ROOT]/ext/snitch/authevesso/login.php** on line **125** : **array_flip() expects parameter 1 to be array, null given**

It seems this $this->config['snitch_authevesso_scopes'] is empty. I’m not sure where it should find that so I can’t confirm it is getting set. I know that I do have all the scopes listed configured in my EVE Application setup.

Do you know what’s happening here? Or can you point me to how that config parameter is set up so I can see why it’s not loading?

Thanks!
-DC

Can you access the config page of the mod? Thats where the scopes are set.

Im getting this odd thing whenever i try to enable this thing ? phpbb 3.3. php 7.2.30

phpBB encountered an error building the container due to an installed extension. For this reason, all extensions have been temporarily disabled. Please try purging your forum cache. All extensions will automatically be re-enabled once the container error is resolved. If this error continues, please visit phpBB.com for support.

Exception: The file “/home/dh_698vcz/dab-online.net/board/ext/snitch/authevesso/config/auth.yml” does not contain valid YAML: The reserved indicator “@” cannot start a plain scalar; you need to quote the scalar at line 5 (near “- @dbal.conn”) in /home/dh_698vcz/dab-online.net/board/ext/snitch/authevesso/config/auth.yml (which is being imported from “/home/dh_698vcz/dab-online.net/board/ext/snitch/authevesso/config/services.yml”).

#0 /home/dh_698vcz/dab-online.net/board/vendor/symfony/config/Loader/FileLoader.php(90): Symfony\Component\Config\Loader\FileLoader->doImport(‘/home/dh_698vcz…’, NULL, false, ‘/home/dh_698vcz…’) #1 /home/dh_698vcz/dab-online.net/board/vendor/symfony/dependency-injection/Loader/YamlFileLoader.php(195): Symfony\Component\Config\Loader\FileLoader->import(‘auth.yml’, NULL, false, ‘/home/dh_698vcz…’) #2 /home/dh_698vcz/dab-online.net/board/vendor/symfony/dependency-injection/Loader/YamlFileLoader.php(127): Symfony\Component\DependencyInjection\Loader\YamlFileLoader->parseImports(Array, ‘/home/dh_698vcz…’) #3 /home/dh_698vcz/dab-online.net/board/phpbb/extension/di/extension_base.php(99): Symfony\Component\DependencyInjection\Loader\YamlFileLoader->load(‘services.yml’) #4 /home/dh_698vcz/dab-online.net/board/phpbb/extension/di/extension_base.php(63): phpbb\extension\di\extension_base->load_services(Object(Symfony\Component\DependencyInjection\Compiler\MergeExtensionConfigurationContainerBuilder)) #5 /home/dh_698vcz/dab-online.net/board/vendor/symfony/dependency-injection/Compiler/MergeExtensionConfigurationPass.php(71): phpbb\extension\di\extension_base->load(Array, Object(Symfony\Component\DependencyInjection\Compiler\MergeExtensionConfigurationContainerBuilder)) #6 /home/dh_698vcz/dab-online.net/board/vendor/symfony/http-kernel/DependencyInjection/MergeExtensionConfigurationPass.php(39): Symfony\Component\DependencyInjection\Compiler\MergeExtensionConfigurationPass->process(Object(Symfony\Component\DependencyInjection\ContainerBuilder)) #7 /home/dh_698vcz/dab-online.net/board/vendor/symfony/dependency-injection/Compiler/Compiler.php(140): Symfony\Component\HttpKernel\DependencyInjection\MergeExtensionConfigurationPass->process(Object(Symfony\Component\DependencyInjection\ContainerBuilder)) #8 /home/dh_698vcz/dab-online.net/board/vendor/symfony/dependency-injection/ContainerBuilder.php(789): Symfony\Component\DependencyInjection\Compiler\Compiler->compile(Object(Symfony\Component\DependencyInjection\ContainerBuilder)) #9 /home/dh_698vcz/dab-online.net/board/phpbb/di/container_builder.php(203): Symfony\Component\DependencyInjection\ContainerBuilder->compile() #10 /home/dh_698vcz/dab-online.net/board/common.php(115): phpbb\di\container_builder->get_container() #11 /home/dh_698vcz/dab-online.net/board/adm/index.php(23): require(‘/home/dh_698vcz…’) #12 {main}

Hey,
I downloaded the zip via wget to my server and unzipped it. After this, I moved all files to phpbb root, but there is no folder /ext/snitch/authevesso…

When I check another folder, for example adm/style/, then I find files with evesso in it.

In admin interface there is no option to activate the plugin.

What am I doing wrong?

EDIT: I don’t find the folder /ext/snitch/authevesso/ in the .zip file on my windows pc.
EDIT2: I also tried cloning the latest files, but still no folder and no sign in acp.

Kind regards
eXeler0n

Testing this out, everything went smooth up until I hit “Test SSO login”. I get a 404, tried different browsers, deleting browsing data. Hmm,

Thanks for the work on this.

A question - What will happen if I install this mod on a phpBB board with already existing users (the board used the default phpBB auth and Cyerus’ mod)?

I assume that the existing users will no longer be usable? Is there any way to migrate these users to the new extension so when they login with EVE SSO, they will be recognized as the same users (if they previously used Cyerus’ mod to register)?

Thanks.

Hello everyone! I’m building up my corporation forum and i would like to obtain the authentication using the EveSSO auth.
When i enter in the panel control pf the phpBB forum i have the option to use eve sso authentication to login but something is going wrong, the message i obtain when i test the login is this:

{“error”:“invalid_request”,“error_description”:“The callback URI doesn’t match the value stored for this client”}

I’ve set che the Client ID and the secret that i obtained into the developer page of EVE, the user agent is: phpbb_evesso {link to the forum}
And the callback is set to: https://{forum link}/forum/app.php/authevesso/login (as suggested by the administration panel)

Can someone help me?

There have been changes to the SSO server, it’s more strict now.
The version tagged 1.2.7 should work again.

User will be migrated, but only regular ones, no admins. I suggest making all admins regular users and promote them again after they logged in once. Not migrating admin users solely based on the character name is a security measure I think is necessary.

Hey Snitch, so currently I’m running phpBB 3.3.2 with PHP 7.4.12 DB server is ubuntu 18.04. Installs fine but when I test SSO I get Internal Error 500. The callback URL is set to “https://forumURL/authevesso/login” as the auth page on the board suggests, but the actual path to login.php is “https://forumURL/ext/snitch/authevesso/login” though neither works for me. If you have any insight on what I might be doing wrong it would be greatly appreciated. Thanks for all the hard work you’ve put in on this over the years!

Could you try to disable url rewriting under Server configuration -> server settings? That should give you a slightly different callback url that contains /app.php/ could you check if it works with this one?

Okay thats done, the Callback URL is now “https://forums.mywebsite.com/app.php/authevesso/login”. Still getting the 500 error though. “500 Internal Server Error / nginx/1.14.0 (Ubuntu)”.

Any chance you can get the webserver logs for this?

There’s a critical issue since the last SSO update. Nobody can create a new account.

The error is:

SQL ERROR [ mysqli ]
Data too long for column 'comment' at row 1 [1406]

Basically the columns data type is too small for the actual error text. Here is the actual error log it’s trying to insert:

[404] Client error: `GET https://esi.evetech.net/v4/characters/2118950597/?datasource=tranquility` resulted in a `404 Not Found` response:\n{\"error\":\"Not found\"}\n

Backtrace:


FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/phpbb/db/driver/driver.php
LINE: 997
CALL: trigger_error()

FILE: [ROOT]/phpbb/db/driver/mysqli.php
LINE: 196
CALL: phpbb\db\driver\driver->sql_error()

FILE: [ROOT]/phpbb/db/driver/factory.php
LINE: 329
CALL: phpbb\db\driver\mysqli->sql_query()

FILE: [ROOT]/ext/snitch/authevesso/classes/class.log.php
LINE: 20
CALL: phpbb\db\driver\factory->sql_query()

FILE: [ROOT]/ext/snitch/authevesso/classes/class.helpers.php
LINE: 202
CALL: snitch\authevesso\AUTHEVESSO_LOG->add()

FILE: [ROOT]/ext/snitch/authevesso/cron/groups_check.php
LINE: 118
CALL: EVEHELPERS::getCorpForChar()

FILE: (not given by php)
LINE: (not given by php)
CALL: snitch\authevesso\cron\groups_check->run()

FILE: [ROOT]/phpbb/cron/task/wrapper.php
LINE: 104
CALL: call_user_func_array()

FILE: [ROOT]/cron.php
LINE: 78
CALL: phpbb\cron\task\wrapper->__call()

I guess it’s because of ESI v4 Character Route Removed - Please Update to V5

You can simply update from v4 to v5 in
forum\ext\snitch\authevesso\classes\esi\lib\Api\CharacterApi.php

Change line #325 to $resourcePath = ‘/v5/characters/{character_id}/’;

You can do that with other version changes too. I didn’t had any problems.

I could have sworn that I tried that already, but apparently I didn’t and now it’s fixed. Thanks!