mirror of
https://github.com/gogrlx/nats-server.git
synced 2026-04-02 03:38:42 -07:00
[removed] activation token download (#1867)
Signed-off-by: Matthias Hanel <mh@synadia.com>
This commit is contained in:
@@ -23,7 +23,6 @@ import (
|
||||
"math/rand"
|
||||
"net/http"
|
||||
"net/textproto"
|
||||
"net/url"
|
||||
"reflect"
|
||||
"sort"
|
||||
"strconv"
|
||||
@@ -2430,22 +2429,6 @@ func (a *Account) getWildcardServiceExport(from string) *serviceExport {
|
||||
return nil
|
||||
}
|
||||
|
||||
// Will fetch the activation token for an import.
|
||||
func fetchActivation(url string) string {
|
||||
// FIXME(dlc) - Make configurable.
|
||||
c := &http.Client{Timeout: 2 * time.Second}
|
||||
resp, err := c.Get(url)
|
||||
if err != nil || resp == nil {
|
||||
return ""
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
body, err := ioutil.ReadAll(resp.Body)
|
||||
if err != nil {
|
||||
return ""
|
||||
}
|
||||
return string(body)
|
||||
}
|
||||
|
||||
// These are import stream specific versions for when an activation expires.
|
||||
func (a *Account) streamActivationExpired(exportAcc *Account, subject string) {
|
||||
a.mu.RLock()
|
||||
@@ -2537,10 +2520,6 @@ func (a *Account) checkActivation(importAcc *Account, claim *jwt.Import, expTime
|
||||
// Create a quick clone so we can inline Token JWT.
|
||||
clone := *claim
|
||||
|
||||
// We grab the token from a URL by hand here since we need expiration etc.
|
||||
if url, err := url.Parse(clone.Token); err == nil && url.Scheme != "" {
|
||||
clone.Token = fetchActivation(url.String())
|
||||
}
|
||||
vr := jwt.CreateValidationResults()
|
||||
clone.Validate(importAcc.Name, vr)
|
||||
if vr.IsBlocking(true) {
|
||||
|
||||
@@ -749,36 +749,6 @@ func TestJWTAccountBasicImportExport(t *testing.T) {
|
||||
t.Fatalf("Expected imports services len of 1, got %d", les)
|
||||
}
|
||||
|
||||
// Now test url
|
||||
barAC = jwt.NewAccountClaims(barPub)
|
||||
serviceImport = &jwt.Import{Account: fooPub, Subject: "req.add", Type: jwt.Service}
|
||||
|
||||
activation = jwt.NewActivationClaims(barPub)
|
||||
activation.ImportSubject = "req.add"
|
||||
activation.ImportType = jwt.Service
|
||||
actJWT, err = activation.Encode(fooKP)
|
||||
if err != nil {
|
||||
t.Fatalf("Error generating activation token: %v", err)
|
||||
}
|
||||
|
||||
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
w.Write([]byte(actJWT))
|
||||
}))
|
||||
defer ts.Close()
|
||||
|
||||
serviceImport.Token = ts.URL
|
||||
barAC.Imports.Add(serviceImport)
|
||||
barJWT, err = barAC.Encode(okp)
|
||||
if err != nil {
|
||||
t.Fatalf("Error generating account JWT: %v", err)
|
||||
}
|
||||
addAccountToMemResolver(s, barPub, barJWT)
|
||||
s.UpdateAccountClaims(acc, barAC)
|
||||
// Our service import should have succeeded. Should be the only one since we reset.
|
||||
if les := len(acc.imports.services); les != 1 {
|
||||
t.Fatalf("Expected imports services len of 1, got %d", les)
|
||||
}
|
||||
|
||||
// Now streams
|
||||
barAC = jwt.NewAccountClaims(barPub)
|
||||
streamImport = &jwt.Import{Account: fooPub, Subject: "private", To: "import.private", Type: jwt.Stream}
|
||||
|
||||
Reference in New Issue
Block a user