From bea497ff96f4deae617e54468576d11d105e2125 Mon Sep 17 00:00:00 2001
From: techknowlogick <techknowlogick@gitea.io>
Date: Mon, 2 Mar 2020 22:11:45 -0500
Subject: [PATCH] nextcloud oauth (#10562)

Fix #7078
---
 models/oauth2.go                              |  14 +-
 modules/auth/oauth2/oauth2.go                 |  23 ++
 options/locale/locale_en-US.ini               |   1 +
 public/img/auth/nextcloud.png                 | Bin 0 -> 2918 bytes
 templates/admin/auth/new.tmpl                 |   2 +
 .../goth/providers/nextcloud/README.md        |  85 +++++++
 .../goth/providers/nextcloud/nextcloud.go     | 208 ++++++++++++++++++
 .../providers/nextcloud/nextcloud_setup.png   | Bin 0 -> 85944 bytes
 .../goth/providers/nextcloud/session.go       |  63 ++++++
 vendor/modules.txt                            |   1 +
 web_src/js/index.js                           |   2 +
 11 files changed, 396 insertions(+), 3 deletions(-)
 create mode 100644 public/img/auth/nextcloud.png
 create mode 100644 vendor/github.com/markbates/goth/providers/nextcloud/README.md
 create mode 100644 vendor/github.com/markbates/goth/providers/nextcloud/nextcloud.go
 create mode 100644 vendor/github.com/markbates/goth/providers/nextcloud/nextcloud_setup.png
 create mode 100644 vendor/github.com/markbates/goth/providers/nextcloud/session.go

diff --git a/models/oauth2.go b/models/oauth2.go
index ee3ea4b924..8164699d8d 100644
--- a/models/oauth2.go
+++ b/models/oauth2.go
@@ -51,15 +51,23 @@ var OAuth2Providers = map[string]OAuth2Provider{
 			ProfileURL: oauth2.GetDefaultProfileURL("gitea"),
 		},
 	},
+	"nextcloud": {Name: "nextcloud", DisplayName: "Nextcloud", Image: "/img/auth/nextcloud.png",
+		CustomURLMapping: &oauth2.CustomURLMapping{
+			TokenURL:   oauth2.GetDefaultTokenURL("nextcloud"),
+			AuthURL:    oauth2.GetDefaultAuthURL("nextcloud"),
+			ProfileURL: oauth2.GetDefaultProfileURL("nextcloud"),
+		},
+	},
 }
 
 // OAuth2DefaultCustomURLMappings contains the map of default URL's for OAuth2 providers that are allowed to have custom urls
 // key is used to map the OAuth2Provider
 // value is the mapping as defined for the OAuth2Provider
 var OAuth2DefaultCustomURLMappings = map[string]*oauth2.CustomURLMapping{
-	"github": OAuth2Providers["github"].CustomURLMapping,
-	"gitlab": OAuth2Providers["gitlab"].CustomURLMapping,
-	"gitea":  OAuth2Providers["gitea"].CustomURLMapping,
+	"github":    OAuth2Providers["github"].CustomURLMapping,
+	"gitlab":    OAuth2Providers["gitlab"].CustomURLMapping,
+	"gitea":     OAuth2Providers["gitea"].CustomURLMapping,
+	"nextcloud": OAuth2Providers["nextcloud"].CustomURLMapping,
 }
 
 // GetActiveOAuth2ProviderLoginSources returns all actived LoginOAuth2 sources
diff --git a/modules/auth/oauth2/oauth2.go b/modules/auth/oauth2/oauth2.go
index 20dfb15e81..193a87c4e8 100644
--- a/modules/auth/oauth2/oauth2.go
+++ b/modules/auth/oauth2/oauth2.go
@@ -22,6 +22,7 @@ import (
 	"github.com/markbates/goth/providers/github"
 	"github.com/markbates/goth/providers/gitlab"
 	"github.com/markbates/goth/providers/google"
+	"github.com/markbates/goth/providers/nextcloud"
 	"github.com/markbates/goth/providers/openidConnect"
 	"github.com/markbates/goth/providers/twitter"
 	"github.com/satori/go.uuid"
@@ -192,6 +193,22 @@ func createProvider(providerName, providerType, clientID, clientSecret, openIDCo
 			}
 		}
 		provider = gitea.NewCustomisedURL(clientID, clientSecret, callbackURL, authURL, tokenURL, profileURL)
+	case "nextcloud":
+		authURL := nextcloud.AuthURL
+		tokenURL := nextcloud.TokenURL
+		profileURL := nextcloud.ProfileURL
+		if customURLMapping != nil {
+			if len(customURLMapping.AuthURL) > 0 {
+				authURL = customURLMapping.AuthURL
+			}
+			if len(customURLMapping.TokenURL) > 0 {
+				tokenURL = customURLMapping.TokenURL
+			}
+			if len(customURLMapping.ProfileURL) > 0 {
+				profileURL = customURLMapping.ProfileURL
+			}
+		}
+		provider = nextcloud.NewCustomisedURL(clientID, clientSecret, callbackURL, authURL, tokenURL, profileURL)
 	}
 
 	// always set the name if provider is created so we can support multiple setups of 1 provider
@@ -211,6 +228,8 @@ func GetDefaultTokenURL(provider string) string {
 		return gitlab.TokenURL
 	case "gitea":
 		return gitea.TokenURL
+	case "nextcloud":
+		return nextcloud.TokenURL
 	}
 	return ""
 }
@@ -224,6 +243,8 @@ func GetDefaultAuthURL(provider string) string {
 		return gitlab.AuthURL
 	case "gitea":
 		return gitea.AuthURL
+	case "nextcloud":
+		return nextcloud.AuthURL
 	}
 	return ""
 }
@@ -237,6 +258,8 @@ func GetDefaultProfileURL(provider string) string {
 		return gitlab.ProfileURL
 	case "gitea":
 		return gitea.ProfileURL
+	case "nextcloud":
+		return nextcloud.ProfileURL
 	}
 	return ""
 }
diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini
index be478ad44b..90abac6f19 100644
--- a/options/locale/locale_en-US.ini
+++ b/options/locale/locale_en-US.ini
@@ -1927,6 +1927,7 @@ auths.tips.oauth2.general = OAuth2 Authentication
 auths.tips.oauth2.general.tip = When registering a new OAuth2 authentication, the callback/redirect URL should be: <host>/user/oauth2/<Authentication Name>/callback
 auths.tip.oauth2_provider = OAuth2 Provider
 auths.tip.bitbucket = Register a new OAuth consumer on https://bitbucket.org/account/user/<your username>/oauth-consumers/new and add the permission 'Account' - 'Read'
+auths.tip.nextcloud = Register a new OAuth consumer on your instance using the following menu "Settings -> Security -> OAuth 2.0 client"
 auths.tip.dropbox = Create a new application at https://www.dropbox.com/developers/apps
 auths.tip.facebook = Register a new application at https://developers.facebook.com/apps and add the product "Facebook Login"
 auths.tip.github = Register a new OAuth application on https://github.com/settings/applications/new
diff --git a/public/img/auth/nextcloud.png b/public/img/auth/nextcloud.png
new file mode 100644
index 0000000000000000000000000000000000000000..635806813a61c2eed5e7c91b3e547ce5107aabb3
GIT binary patch
literal 2918
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

literal 0
HcmV?d00001

diff --git a/templates/admin/auth/new.tmpl b/templates/admin/auth/new.tmpl
index f2fc26cdc8..2260782cc6 100644
--- a/templates/admin/auth/new.tmpl
+++ b/templates/admin/auth/new.tmpl
@@ -115,6 +115,8 @@
 				<span>{{.i18n.Tr "admin.auths.tip.discord"}}</span>
 				<li>Gitea</li>
 				<span>{{.i18n.Tr "admin.auths.tip.gitea"}}</span>
+				<li>Nextcloud</li>
+				<span>{{.i18n.Tr "admin.auths.tip.nextcloud"}}</span>
 			</div>
 		</div>
 	</div>
diff --git a/vendor/github.com/markbates/goth/providers/nextcloud/README.md b/vendor/github.com/markbates/goth/providers/nextcloud/README.md
new file mode 100644
index 0000000000..3047934eb6
--- /dev/null
+++ b/vendor/github.com/markbates/goth/providers/nextcloud/README.md
@@ -0,0 +1,85 @@
+# Nextcloud OAuth2
+
+For this backend, you need to have an OAuth2 enabled Nextcloud Instance, e.g.
+on your own private server.
+
+## Setting up Nextcloud Test Environment
+
+To test, you only need a working Docker image of Nextcloud running on a public
+URL, e.g. through [traefik](https://traefik.io/)
+
+```docker-compose.yml
+version: '2'
+
+networks:
+  traefik-web:
+    external: true
+
+services:
+  app:
+    image: nextcloud
+    restart: always
+    networks:
+      - traefik-web
+    labels:
+      - traefik.enable=true
+      - traefik.frontend.rule=Host:${NEXTCLOUD_DNS}
+      - traefik.docker.network=traefik-web
+    environment:
+      SQLITE_DATABASE: "database.sqlite3"
+      NEXTCLOUD_ADMIN_USER: admin
+      NEXTCLOUD_ADMIN_PASSWORD: admin
+      NEXTCLOUD_TRUSTED_DOMAINS: ${NEXTCLOUD_DNS}
+```
+
+and start it up via
+
+```
+NEXTCLOUD_DNS=goth.my.server.name docker-compose up -d
+```
+
+afterwards, you will have a running Nextcloud instance with credentials
+
+```
+admin / admin
+```
+
+Then add a new OAuth 2.0 Client by going to
+
+```
+Settings -> Security -> OAuth 2.0 client
+```
+
+![Nextcloud Setup](nextcloud_setup.png)
+
+and add a new client with the name `goth` and redirection uri `http://localhost:3000/auth/nextcloud/callback`. The imporant part here the
+two cryptic entries `Client Identifier` and `Secret`, which needs to be
+used in your application.
+
+## Running Login Example
+
+If you want to run the default example in `<goth>/examples`, you have to 
+retrieve the keys described in the previous section and run the example
+as follows:
+
+```
+NEXTCLOUD_URL=https://goth.my.server.name \
+NEXTCLOUD_KEY=<your-key> \
+NEXTCLOUD_SECRET=<your-secret> \
+SESSION_SECRET=1 \
+./examples
+```
+
+Afterwards, you should be able to login via Nextcloud in the examples app.
+
+## Running the Provider Test
+
+The test has the same arguments as the login example test, but starts the test itself
+
+```
+NEXTCLOUD_URL=https://goth.my.server.name \
+NEXTCLOUD_KEY=<your-key> \
+NEXTCLOUD_SECRET=<your-secret> \
+SESSION_SECRET=1 \
+go test -v
+```
diff --git a/vendor/github.com/markbates/goth/providers/nextcloud/nextcloud.go b/vendor/github.com/markbates/goth/providers/nextcloud/nextcloud.go
new file mode 100644
index 0000000000..df64de71f9
--- /dev/null
+++ b/vendor/github.com/markbates/goth/providers/nextcloud/nextcloud.go
@@ -0,0 +1,208 @@
+// Package nextcloud implements the OAuth2 protocol for authenticating users through nextcloud.
+// This package can be used as a reference implementation of an OAuth2 provider for Goth.
+package nextcloud
+
+import (
+	"bytes"
+	"encoding/json"
+	"io"
+	"io/ioutil"
+	"net/http"
+
+	"fmt"
+
+	"github.com/markbates/goth"
+	"golang.org/x/oauth2"
+)
+
+// These vars define the Authentication, Token, and Profile URLS for Nextcloud.
+// You have to set these values to something useful, because nextcloud is always
+// hosted somewhere.
+//
+var (
+	AuthURL    = "https://<own-server>/apps/oauth2/authorize"
+	TokenURL   = "https://<own-server>/apps/oauth2/api/v1/token"
+	ProfileURL = "https://<own-server>/ocs/v2.php/cloud/user?format=json"
+)
+
+// Provider is the implementation of `goth.Provider` for accessing Nextcloud.
+type Provider struct {
+	ClientKey    string
+	Secret       string
+	CallbackURL  string
+	HTTPClient   *http.Client
+	config       *oauth2.Config
+	providerName string
+	authURL      string
+	tokenURL     string
+	profileURL   string
+}
+
+// New is only here to fulfill the interface requirements and does not work properly without
+// setting your own Nextcloud connect parameters, more precisely AuthURL, TokenURL and ProfileURL.
+// Please use NewCustomisedDNS with the beginning of your URL or NewCustomiseURL.
+func New(clientKey, secret, callbackURL string, scopes ...string) *Provider {
+	return NewCustomisedURL(clientKey, secret, callbackURL, AuthURL, TokenURL, ProfileURL, scopes...)
+}
+
+// NewCustomisedURL create a working connection to your Nextcloud server given by the values
+// authURL, tokenURL and profileURL.
+// If you want to use a simpler method, please have a look at NewCustomisedDNS, which gets only
+// on parameter instead of three.
+func NewCustomisedURL(clientKey, secret, callbackURL, authURL, tokenURL, profileURL string, scopes ...string) *Provider {
+	p := &Provider{
+		ClientKey:    clientKey,
+		Secret:       secret,
+		CallbackURL:  callbackURL,
+		providerName: "nextcloud",
+		profileURL:   profileURL,
+	}
+	p.config = newConfig(p, authURL, tokenURL, scopes)
+	return p
+}
+
+// NewCustomisedDNS is the simplest method to create a provider based only on your key/secret
+// and the beginning of the URL to your server, e.g. https://my.server.name/
+func NewCustomisedDNS(clientKey, secret, callbackURL, nextcloudURL string, scopes ...string) *Provider {
+	return NewCustomisedURL(
+		clientKey,
+		secret,
+		callbackURL,
+		nextcloudURL+"/apps/oauth2/authorize",
+		nextcloudURL+"/apps/oauth2/api/v1/token",
+		nextcloudURL+"/ocs/v2.php/cloud/user?format=json",
+		scopes...,
+	)
+}
+
+// Name is the name used to retrieve this provider later.
+func (p *Provider) Name() string {
+	return p.providerName
+}
+
+// SetName is to update the name of the provider (needed in case of multiple providers of 1 type)
+func (p *Provider) SetName(name string) {
+	p.providerName = name
+}
+
+func (p *Provider) Client() *http.Client {
+	return goth.HTTPClientWithFallBack(p.HTTPClient)
+}
+
+// Debug is a no-op for the nextcloud package.
+func (p *Provider) Debug(debug bool) {}
+
+// BeginAuth asks Nextcloud for an authentication end-point.
+func (p *Provider) BeginAuth(state string) (goth.Session, error) {
+	return &Session{
+		AuthURL: p.config.AuthCodeURL(state),
+	}, nil
+}
+
+// FetchUser will go to Nextcloud and access basic information about the user.
+func (p *Provider) FetchUser(session goth.Session) (goth.User, error) {
+	sess := session.(*Session)
+	user := goth.User{
+		AccessToken:  sess.AccessToken,
+		Provider:     p.Name(),
+		RefreshToken: sess.RefreshToken,
+		ExpiresAt:    sess.ExpiresAt,
+	}
+
+	if user.AccessToken == "" {
+		// data is not yet retrieved since accessToken is still empty
+		return user, fmt.Errorf("%s cannot get user information without accessToken", p.providerName)
+	}
+
+	req, err := http.NewRequest("GET", p.profileURL, nil)
+	if err != nil {
+		return user, err
+	}
+	req.Header.Set("Authorization", "Bearer "+sess.AccessToken)
+	response, err := p.Client().Do(req)
+
+	if err != nil {
+		if response != nil {
+			response.Body.Close()
+		}
+		return user, err
+	}
+
+	defer response.Body.Close()
+
+	if response.StatusCode != http.StatusOK {
+		return user, fmt.Errorf("%s responded with a %d trying to fetch user information", p.providerName, response.StatusCode)
+	}
+
+	bits, err := ioutil.ReadAll(response.Body)
+	if err != nil {
+		return user, err
+	}
+
+	err = json.NewDecoder(bytes.NewReader(bits)).Decode(&user.RawData)
+	if err != nil {
+		return user, err
+	}
+
+	err = userFromReader(bytes.NewReader(bits), &user)
+
+	return user, err
+}
+
+func newConfig(provider *Provider, authURL, tokenURL string, scopes []string) *oauth2.Config {
+	c := &oauth2.Config{
+		ClientID:     provider.ClientKey,
+		ClientSecret: provider.Secret,
+		RedirectURL:  provider.CallbackURL,
+		Endpoint: oauth2.Endpoint{
+			AuthURL:  authURL,
+			TokenURL: tokenURL,
+		},
+		Scopes: []string{},
+	}
+
+	if len(scopes) > 0 {
+		for _, scope := range scopes {
+			c.Scopes = append(c.Scopes, scope)
+		}
+	}
+	return c
+}
+
+func userFromReader(r io.Reader, user *goth.User) error {
+	u := struct {
+		Ocs struct {
+			Data struct {
+				EMail       string `json:"email"`
+				DisplayName string `json:"display-name"`
+				ID          string `json:"id"`
+				Address     string `json:"address"`
+			}
+		} `json:"ocs"`
+	}{}
+	err := json.NewDecoder(r).Decode(&u)
+	if err != nil {
+		return err
+	}
+	user.Email = u.Ocs.Data.EMail
+	user.Name = u.Ocs.Data.DisplayName
+	user.UserID = u.Ocs.Data.ID
+	user.Location = u.Ocs.Data.Address
+	return nil
+}
+
+//RefreshTokenAvailable refresh token is provided by auth provider or not
+func (p *Provider) RefreshTokenAvailable() bool {
+	return true
+}
+
+//RefreshToken get new access token based on the refresh token
+func (p *Provider) RefreshToken(refreshToken string) (*oauth2.Token, error) {
+	token := &oauth2.Token{RefreshToken: refreshToken}
+	ts := p.config.TokenSource(goth.ContextForClient(p.Client()), token)
+	newToken, err := ts.Token()
+	if err != nil {
+		return nil, err
+	}
+	return newToken, err
+}
diff --git a/vendor/github.com/markbates/goth/providers/nextcloud/nextcloud_setup.png b/vendor/github.com/markbates/goth/providers/nextcloud/nextcloud_setup.png
new file mode 100644
index 0000000000000000000000000000000000000000..8f457dd2a31650fd33e44126db684aaf847c92c4
GIT binary patch
literal 85944
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%0D|{b(<cXjipJ*l_n=UV?aS5l!SW-V
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

literal 0
HcmV?d00001

diff --git a/vendor/github.com/markbates/goth/providers/nextcloud/session.go b/vendor/github.com/markbates/goth/providers/nextcloud/session.go
new file mode 100644
index 0000000000..568f3d6d4d
--- /dev/null
+++ b/vendor/github.com/markbates/goth/providers/nextcloud/session.go
@@ -0,0 +1,63 @@
+package nextcloud
+
+import (
+	"encoding/json"
+	"errors"
+	"strings"
+	"time"
+
+	"github.com/markbates/goth"
+)
+
+// Session stores data during the auth process with Nextcloud.
+type Session struct {
+	AuthURL      string
+	AccessToken  string
+	RefreshToken string
+	ExpiresAt    time.Time
+}
+
+var _ goth.Session = &Session{}
+
+// GetAuthURL will return the URL set by calling the `BeginAuth` function on the Nextcloud provider.
+func (s Session) GetAuthURL() (string, error) {
+	if s.AuthURL == "" {
+		return "", errors.New(goth.NoAuthUrlErrorMessage)
+	}
+	return s.AuthURL, nil
+}
+
+// Authorize the session with Nextcloud and return the access token to be stored for future use.
+func (s *Session) Authorize(provider goth.Provider, params goth.Params) (string, error) {
+	p := provider.(*Provider)
+	token, err := p.config.Exchange(goth.ContextForClient(p.Client()), params.Get("code"))
+	if err != nil {
+		return "", err
+	}
+
+	if !token.Valid() {
+		return "", errors.New("Invalid token received from provider")
+	}
+
+	s.AccessToken = token.AccessToken
+	s.RefreshToken = token.RefreshToken
+	s.ExpiresAt = token.Expiry
+	return token.AccessToken, err
+}
+
+// Marshal the session into a string
+func (s Session) Marshal() string {
+	b, _ := json.Marshal(s)
+	return string(b)
+}
+
+func (s Session) String() string {
+	return s.Marshal()
+}
+
+// UnmarshalSession wil unmarshal a JSON string into a session.
+func (p *Provider) UnmarshalSession(data string) (goth.Session, error) {
+	s := &Session{}
+	err := json.NewDecoder(strings.NewReader(data)).Decode(s)
+	return s, err
+}
diff --git a/vendor/modules.txt b/vendor/modules.txt
index e26566e592..80f3b6ac0b 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -311,6 +311,7 @@ github.com/markbates/goth/providers/gitea
 github.com/markbates/goth/providers/github
 github.com/markbates/goth/providers/gitlab
 github.com/markbates/goth/providers/google
+github.com/markbates/goth/providers/nextcloud
 github.com/markbates/goth/providers/openidConnect
 github.com/markbates/goth/providers/twitter
 # github.com/mattn/go-isatty v0.0.7
diff --git a/web_src/js/index.js b/web_src/js/index.js
index fcf9701c3c..b2eec525d3 100644
--- a/web_src/js/index.js
+++ b/web_src/js/index.js
@@ -1892,6 +1892,7 @@ function initAdmin() {
       case 'github':
       case 'gitlab':
       case 'gitea':
+      case 'nextcloud':
         $('.oauth2_use_custom_url').show();
         break;
       case 'openidConnect':
@@ -1925,6 +1926,7 @@ function initAdmin() {
           $('.oauth2_token_url input, .oauth2_auth_url input, .oauth2_profile_url input, .oauth2_email_url input').attr('required', 'required');
           $('.oauth2_token_url, .oauth2_auth_url, .oauth2_profile_url, .oauth2_email_url').show();
           break;
+        case 'nextcloud':
         case 'gitea':
         case 'gitlab':
           $('.oauth2_token_url input, .oauth2_auth_url input, .oauth2_profile_url input').attr('required', 'required');