As soon as I login in to nextcloud via my IdP instead of the internal nextcloud authentication, my stored email credentials for the addon SnappyMail vanish. Consequently, SnappyMail shows me the login mask for entering the credentials for the email server.
Expected behavior
Snappymail remembers my credentials no matter how I log in.
[/details]
Nextcloud version: 29.0.5 (in docker container hubs.docker.com nextcloud:29)
Operating system and version: Debian bookworm
nginx version: 1.27.1 (in docker container)
PHP version: 8.2.22
Authelia version: 4.38.10
(in docker container)
App for oidc: OpenID Connect Login 3.1.1
SnappyMail App version: 2.37.2
Is this the first time you’ve seen this error? Yes:
Steps to replicate it:
- Login to nextcloud via nextcloud internal authentication.
- Store credentials at example.com/settings/user/additional
- Logout, login via nextcloud authentication and open snappymail → works
- Logout, login via IdP. → Snappymail asks for password.
Does anyone know this behaviour?
I have no idea whether it is a configuration issue or a bug. I don’t think authelia itself is the cause. The error is unknown to SnappyMail to as I asked in their forum here. Basically, SnappyMail supports working with IdPs like authelia, which is why I think that the credentials storing mechanism in nextcloud gets confused in my setup. I just don’t know why.
The output of your Nextcloud log in Admin > Logging (no relevant entry as far as I can evaluate):
Debug no app in context RuntimeException ignorable exception The loading of lazy AppConfig values have been requested "20.08.2024, 22:43:47"
Debug dav No calendar events found for status check "20.08.2024, 22:43:43"
Debug dav No calendar events found for status check "20.08.2024, 22:43:38"
Debug no app in context RuntimeException ignorable exception The loading of lazy AppConfig values have been requested "20.08.2024, 22:43:37"
Debug no app in context RuntimeException ignorable exception The loading of lazy AppConfig values have been requested "20.08.2024, 22:43:26"
Debug dav No calendar events found for status check "20.08.2024, 22:43:22"
Debug dav No calendar events found for status check "20.08.2024, 22:43:18"
Debug no app in context RuntimeException ignorable exception The loading of lazy AppConfig values have been requested "20.08.2024, 22:43:16"
Debug logreader Updating AppConfig: shownLevels => [1,2,3,4,0] "20.08.2024, 22:43:08"
The output of your config.php file in /path/to/nextcloud
<snip>
'oidc_login_provider_url' => 'https://auth.example.com',
'oidc_login_logout_url' => 'https://auth.example.com/logout/?rd=https://cloud.example.com/',
'oidc_login_client_id' => 'nextcloud',
'oidc_login_client_secret' => 'my-client-secret',
'oidc_login_code_challenge_method' => 'S256',
'oidc_login_auto_redirect' => true,
'oidc_login_end_session_redirect' => false,
'oidc_login_button_text' => 'Sign in with SSO',
'oidc_login_hide_password_form' => false,
'oidc_login_use_id_token' => true,
'oidc_login_attributes' =>
array (
'id' => 'preferred_username',
'name' => 'name',
'mail' => 'email',
'groups' => 'groups',
'login_filter' => 'groups',
),
'oidc_login_default_group' => 'oidc',
'oidc_login_filter_allowed_values' =>
array (
0 => 'nextclouduser',
),
'oidc_login_use_external_storage' => false,
'oidc_login_scope' => 'openid profile email groups',
'oidc_login_proxy_ldap' => false,
'oidc_login_disable_registration' => true,
'oidc_login_redir_fallback' => false,
'oidc_login_tls_verify' => true,
'oidc_create_groups' => false,
'oidc_login_webdav_enabled' => false,
'oidc_login_password_authentication' => false,
'oidc_login_public_key_caching_time' => 86400,
'oidc_login_min_time_between_jwks_requests' => 10,
'oidc_login_well_known_caching_time' => 86400,
'oidc_login_update_avatar' => false,
</snip>
authelia configuration.yml
<snip>
clients:
- client_id: nextcloud
client_name: Nextcloud
client_secret: '$pbkdf2-sha512$123456$my-client_secret'
public: false
authorization_policy: two_factor
require_pkce: true
pkce_challenge_method: 'S256'
consent_mode: implicit
redirect_uris:
- https://cloud.example.com/apps/oidc_login/oidc
scopes:
- openid
- email
- profile
- groups
userinfo_signed_response_alg: 'none'
token_endpoint_auth_method: 'client_secret_basic'
</snip>
Output errors in nextcloud.log
After storing while being logged in to nextcloud natively without IdP:
Aug 20 22:33:52 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:33:52 +0200] "POST /index.php/apps/snappymail/fetch/personal.php HTTP/1.0" 200 827 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
After starting SnappyMail while being logged in to nextcloud natively without IdP (SnappyMail can access stored credentials):
Aug 20 22:35:16 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:16 +0200] "GET /apps/snappymail/?/Plugins/0/User/5a2a69218199d20f8a577ebb45c69f37/ HTTP/1.0" 200 5423 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:16 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:16 +0200] "GET /apps/snappymail/?/Css/0/User/-/NextcloudV25+/-/1724186116796/Hash/-/Json/ HTTP/1.0" 200 75286 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:16 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:16 +0200] "POST /apps/snappymail/?/Json/&q[]=/0/ HTTP/1.0" 200 20350 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:16 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:16 +0200] "POST /apps/snappymail/?/Json/&q[]=/0/ HTTP/1.0" 200 830 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:17 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:16 +0200] "GET /custom_apps/snappymail/app/snappymail/v/2.37.2/static/js/min/openpgp.min.js HTTP/1.0" 200 171445 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:17 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:17 +0200] "GET /custom_apps/snappymail/app/snappymail/v/2.37.2/static/css/fonts/snappymail.woff2 HTTP/1.0" 200 8346 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:17 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:16 +0200] "POST /apps/snappymail/?/Json/&q[]=/0/ HTTP/1.0" 200 829 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:17 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:16 +0200] "POST /apps/snappymail/?/Json/&q[]=/0/ HTTP/1.0" 200 1125 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:17 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:17 +0200] "POST /apps/snappymail/?/Json/&q[]=/0/ HTTP/1.0" 200 819 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:35:17 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:35:16 +0200] "POST /apps/snappymail/?/Json/&q[]=/0/ HTTP/1.0" 200 58984 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
After storing while being logged in to nextcloud via IdP:
Aug 20 22:27:35 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:27:35 +0200] "POST /index.php/apps/snappymail/fetch/personal.php HTTP/1.0" 200 926 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
After trying to log in to SnappyMail after providing credentials while being logged in to nextcloud via IdP (SnappyMail cannot access stored credentials):
Aug 20 22:29:12 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:12 +0200] "GET /index.php/apps/files/preview-service-worker.js HTTP/1.0" 200 6750 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:11 +0200] "GET /apps/snappymail/ HTTP/1.0" 200 59470 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "GET /apps/firstrunwizard/js/firstrunwizard-about.mjs?v=b196d3e0-14 HTTP/1.0" 200 1059 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "GET /apps/theming/js/theming.js?v=b196d3e0-14 HTTP/1.0" 200 555 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "GET /apps/snappymail/?/AppData/0/6888136145474835/ HTTP/1.0" 200 1785 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "GET /ocs/v2.php/apps/user_status/api/v1/user_status HTTP/1.0" 200 883 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "GET /ocs/v2.php/search/providers?from=%2Fapps%2Fsnappymail%2F HTTP/1.0" 200 1524 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "GET /ocs/v2.php/apps/notifications/api/v2/notifications HTTP/1.0" 200 1414 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "POST /contactsmenu/contacts HTTP/1.0" 200 1189 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "GET /apps/snappymail/?/Plugins/0/User/5a2a69218199d20f8a577ebb45c69f37/ HTTP/1.0" 304 579 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:13 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:13 +0200] "GET /apps/snappymail/?/Css/0/User/-/NextcloudV25+/-/1724185753910/Hash/-/Json/ HTTP/1.0" 200 75286 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"
Aug 20 22:29:14 example docker-compose[2001136]: nextcloud-app | IP - - [20/Aug/2024:22:29:14 +0200] "GET /index.php/apps/files/preview-service-worker.js HTTP/1.0" 200 6750 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:129.0) Gecko/20100101 Firefox/129.0"