Formatting
Dieser Commit ist enthalten in:
Ursprung
b7c890ede9
Commit
f4d61bc7bc
1 geänderte Dateien mit 28 neuen und 20 gelöschten Zeilen
|
@ -11,33 +11,37 @@ In case you have forgotten the password (e.g. for admin) and can't request a new
|
||||||
|
|
||||||
The following describes how set up authentication via mailcow using the OAuth2 protocol. We will only assume that you have already set up Nextcloud at _cloud.example.com_ and that your mailcow is running at _mail.example.com_. It does not matter if your Nextcloud is running on a different server, you can still use mailcow for authentication.
|
The following describes how set up authentication via mailcow using the OAuth2 protocol. We will only assume that you have already set up Nextcloud at _cloud.example.com_ and that your mailcow is running at _mail.example.com_. It does not matter if your Nextcloud is running on a different server, you can still use mailcow for authentication.
|
||||||
|
|
||||||
1. Log into mailcow as administrator.
|
1\. Log into mailcow as administrator.
|
||||||
2. Scroll down to _OAuth2 Apps_ and click the _Add_ button. Specify the redirect URI as `https://cloud.example.com/index.php/apps/sociallogin/custom_oauth2/Mailcow` and click _Add_. Save the client ID and secret for later.
|
|
||||||
|
2\. Scroll down to _OAuth2 Apps_ and click the _Add_ button. Specify the redirect URI as `https://cloud.example.com/index.php/apps/sociallogin/custom_oauth2/Mailcow` and click _Add_. Save the client ID and secret for later.
|
||||||
|
|
||||||
!!! info
|
!!! info
|
||||||
Some installations, including those setup using the helper script of mailcow, need to remove index.php/ from the URL to get a successful redirect: `https://cloud.example.com/apps/sociallogin/custom_oauth2/Mailcow`
|
Some installations, including those setup using the helper script of mailcow, need to remove index.php/ from the URL to get a successful redirect: `https://cloud.example.com/apps/sociallogin/custom_oauth2/Mailcow`
|
||||||
|
|
||||||
3. Log into Nextcloud as administrator.
|
3\. Log into Nextcloud as administrator.
|
||||||
4. Click the button in the top right corner and select _Apps_. Click the search button in the toolbar, search for the [_Social Login_](https://apps.nextcloud.com/apps/sociallogin) plugin and click _Download and enable_ next to it.
|
|
||||||
5. Click the button in the top right corner and select _Settings_. Scroll down to the _Administration_ section on the left and click _Social login_.
|
|
||||||
6. Uncheck the following items:
|
|
||||||
|
|
||||||
- _Disable auto create new users_,
|
4\. Click the button in the top right corner and select _Apps_. Click the search button in the toolbar, search for the [_Social Login_](https://apps.nextcloud.com/apps/sociallogin) plugin and click _Download and enable_ next to it.
|
||||||
- _Allow users to connect social logins with their accounts_,
|
|
||||||
- _Do not prune not available user groups on login_,
|
|
||||||
- _Automatically create groups if they do not exists_,
|
|
||||||
- _Restrict login for users without mapped groups_,
|
|
||||||
|
|
||||||
and check the following items:
|
5\. Click the button in the top right corner and select _Settings_. Scroll down to the _Administration_ section on the left and click _Social login_.
|
||||||
|
|
||||||
- _Prevent creating an account if the email address exists in another account_,
|
6\. Uncheck the following items:
|
||||||
- _Update user profile every login_,
|
|
||||||
- _Disable notify admins about new users_.
|
- "Disable auto create new users"
|
||||||
|
- "Allow users to connect social logins with their accounts"
|
||||||
|
- "Do not prune not available user groups on login"
|
||||||
|
- "Automatically create groups if they do not exists"
|
||||||
|
- "Restrict login for users without mapped groups"
|
||||||
|
|
||||||
|
7\. Check the following items:
|
||||||
|
|
||||||
|
- "Prevent creating an account if the email address exists in another account"
|
||||||
|
- "Update user profile every login"
|
||||||
|
- "Disable notify admins about new users"
|
||||||
|
|
||||||
Click the _Save_ button.
|
Click the _Save_ button.
|
||||||
|
|
||||||
7. Scroll down to _Custom OAuth2_ and click the _+_ button.
|
8\. Scroll down to _Custom OAuth2_ and click the _+_ button.
|
||||||
8. Configure the parameters as follows:
|
9\. Configure the parameters as follows:
|
||||||
|
|
||||||
- Internal name: `Mailcow`
|
- Internal name: `Mailcow`
|
||||||
- Title: `Mailcow`
|
- Title: `Mailcow`
|
||||||
|
@ -52,18 +56,22 @@ Click the _Save_ button.
|
||||||
|
|
||||||
Click the _Save_ button at the very bottom of the page.
|
Click the _Save_ button at the very bottom of the page.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
If you have previously used Nextcloud with mailcow authentication via user\_external/IMAP, you need to perform some additional steps to link your existing user accounts with OAuth2.
|
If you have previously used Nextcloud with mailcow authentication via user\_external/IMAP, you need to perform some additional steps to link your existing user accounts with OAuth2.
|
||||||
|
|
||||||
1. Click the button in the top right corner and select _Apps_. Scroll down to the _External user authentication_ app and click _Remove_ next to it.
|
1\. Click the button in the top right corner and select _Apps_. Scroll down to the _External user authentication_ app and click _Remove_ next to it.
|
||||||
2. Run the following queries in your Nextcloud database (if you set up Nextcloud using mailcow's script, you can run `source mailcow.conf && docker-compose exec mysql-mailcow mysql -u$DBUSER -p$DBPASS $DBNAME`):
|
2\. Run the following queries in your Nextcloud database (if you set up Nextcloud using mailcow's script, you can run `source mailcow.conf && docker-compose exec mysql-mailcow mysql -u$DBUSER -p$DBPASS $DBNAME`):
|
||||||
```
|
```
|
||||||
INSERT INTO nc_users (uid, uid_lower) SELECT DISTINCT uid, LOWER(uid) FROM nc_users_external;
|
INSERT INTO nc_users (uid, uid_lower) SELECT DISTINCT uid, LOWER(uid) FROM nc_users_external;
|
||||||
INSERT INTO nc_sociallogin_connect (uid, identifier) SELECT DISTINCT uid, CONCAT("Mailcow-", uid) FROM nc_users_external;
|
INSERT INTO nc_sociallogin_connect (uid, identifier) SELECT DISTINCT uid, CONCAT("Mailcow-", uid) FROM nc_users_external;
|
||||||
```
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
If you have previously used Nextcloud without mailcow authentication, but with the same usernames as mailcow, you can also link your existing user accounts with OAuth2.
|
If you have previously used Nextcloud without mailcow authentication, but with the same usernames as mailcow, you can also link your existing user accounts with OAuth2.
|
||||||
|
|
||||||
1. Run the following queries in your Nextcloud database (if you set up Nextcloud using mailcow's script, you can run `source mailcow.conf && docker-compose exec mysql-mailcow mysql -u$DBUSER -p$DBPASS $DBNAME`):
|
1\. Run the following queries in your Nextcloud database (if you set up Nextcloud using mailcow's script, you can run `source mailcow.conf && docker-compose exec mysql-mailcow mysql -u$DBUSER -p$DBPASS $DBNAME`):
|
||||||
```
|
```
|
||||||
INSERT INTO nc_sociallogin_connect (uid, identifier) SELECT DISTINCT uid, CONCAT("Mailcow-", uid) FROM nc_users;
|
INSERT INTO nc_sociallogin_connect (uid, identifier) SELECT DISTINCT uid, CONCAT("Mailcow-", uid) FROM nc_users;
|
||||||
```
|
```
|
||||||
|
|
Laden …
In neuem Issue referenzieren