Merge branch 'master' into next
This commit is contained in:
commit
f9bfae9190
3
.github/workflows/translation-compile.yml
vendored
3
.github/workflows/translation-compile.yml
vendored
|
@ -4,6 +4,9 @@ on:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
paths:
|
paths:
|
||||||
- '/locale/'
|
- '/locale/'
|
||||||
|
pull_request:
|
||||||
|
paths:
|
||||||
|
- '/locale/'
|
||||||
schedule:
|
schedule:
|
||||||
- cron: "0 */2 * * *"
|
- cron: "0 */2 * * *"
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
2
go.mod
2
go.mod
|
@ -29,7 +29,7 @@ require (
|
||||||
github.com/prometheus/client_golang v1.11.0
|
github.com/prometheus/client_golang v1.11.0
|
||||||
github.com/recws-org/recws v1.3.1
|
github.com/recws-org/recws v1.3.1
|
||||||
github.com/sirupsen/logrus v1.8.1
|
github.com/sirupsen/logrus v1.8.1
|
||||||
goauthentik.io/api v0.2021104.2
|
goauthentik.io/api v0.2021104.3
|
||||||
golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2 // indirect
|
golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2 // indirect
|
||||||
golang.org/x/net v0.0.0-20210510120150-4163338589ed // indirect
|
golang.org/x/net v0.0.0-20210510120150-4163338589ed // indirect
|
||||||
golang.org/x/oauth2 v0.0.0-20210323180902-22b0adad7558
|
golang.org/x/oauth2 v0.0.0-20210323180902-22b0adad7558
|
||||||
|
|
4
go.sum
4
go.sum
|
@ -561,8 +561,8 @@ go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8=
|
||||||
go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
|
go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
|
||||||
go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
|
go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
|
||||||
go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
|
go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
|
||||||
goauthentik.io/api v0.2021104.2 h1:A2SAggdhVj9Xoj+9Ti9DIoOAi+x2WwIlSNNgJCsVZfQ=
|
goauthentik.io/api v0.2021104.3 h1:JG7hKXCdneHXpwWkCAgp6D/fG9NaMUggnUbv18os4Bo=
|
||||||
goauthentik.io/api v0.2021104.2/go.mod h1:02nnD4FRd8lu8A1+ZuzqownBgvAhdCKzqkKX8v7JMTE=
|
goauthentik.io/api v0.2021104.3/go.mod h1:02nnD4FRd8lu8A1+ZuzqownBgvAhdCKzqkKX8v7JMTE=
|
||||||
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
||||||
golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
||||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||||
|
|
|
@ -6,6 +6,9 @@ import (
|
||||||
"math/rand"
|
"math/rand"
|
||||||
"net/http"
|
"net/http"
|
||||||
"net/url"
|
"net/url"
|
||||||
|
"os"
|
||||||
|
"os/signal"
|
||||||
|
"syscall"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/go-openapi/strfmt"
|
"github.com/go-openapi/strfmt"
|
||||||
|
@ -87,8 +90,9 @@ func NewAPIController(akURL url.URL, token string) *APIController {
|
||||||
instanceUUID: uuid.New(),
|
instanceUUID: uuid.New(),
|
||||||
Outpost: outpost,
|
Outpost: outpost,
|
||||||
}
|
}
|
||||||
ac.logger.WithField("offset", ac.reloadOffset).Debug("HA Reload offset")
|
ac.logger.WithField("offset", ac.reloadOffset.String()).Debug("HA Reload offset")
|
||||||
ac.initWS(akURL, strfmt.UUID(outpost.Pk))
|
ac.initWS(akURL, strfmt.UUID(outpost.Pk))
|
||||||
|
ac.configureRefreshSignal()
|
||||||
return ac
|
return ac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -107,6 +111,21 @@ func (a *APIController) Start() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (a *APIController) configureRefreshSignal() {
|
||||||
|
s := make(chan os.Signal, 1)
|
||||||
|
go func() {
|
||||||
|
for {
|
||||||
|
<-s
|
||||||
|
err := a.OnRefresh()
|
||||||
|
if err != nil {
|
||||||
|
a.logger.WithError(err).Warning("failed to refresh")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
signal.Notify(s, syscall.SIGUSR1)
|
||||||
|
a.logger.Debug("Enabled USR1 hook to reload")
|
||||||
|
}
|
||||||
|
|
||||||
func (a *APIController) OnRefresh() error {
|
func (a *APIController) OnRefresh() error {
|
||||||
// Because we don't know the outpost UUID, we simply do a list and pick the first
|
// Because we don't know the outpost UUID, we simply do a list and pick the first
|
||||||
// The service account this token belongs to should only have access to a single outpost
|
// The service account this token belongs to should only have access to a single outpost
|
||||||
|
|
Binary file not shown.
|
@ -955,10 +955,6 @@ msgstr ""
|
||||||
"Schlüsselpaar, das zum Signieren ausgehender Antworten an den Dienstanbieter"
|
"Schlüsselpaar, das zum Signieren ausgehender Antworten an den Dienstanbieter"
|
||||||
" verwendet wird."
|
" verwendet wird."
|
||||||
|
|
||||||
#: authentik/providers/saml/models.py:150
|
|
||||||
msgid "Signing Keypair"
|
|
||||||
msgstr "Schlüsselpaar für Signierung"
|
|
||||||
|
|
||||||
#: authentik/providers/saml/models.py:180
|
#: authentik/providers/saml/models.py:180
|
||||||
msgid "SAML Provider"
|
msgid "SAML Provider"
|
||||||
msgstr "SAML Anbieter"
|
msgstr "SAML Anbieter"
|
||||||
|
|
|
@ -99,7 +99,15 @@ export class LibraryPage extends LitElement {
|
||||||
return html`<div class="pf-l-gallery pf-m-gutter">
|
return html`<div class="pf-l-gallery pf-m-gutter">
|
||||||
${this.apps?.results
|
${this.apps?.results
|
||||||
.filter((app) => {
|
.filter((app) => {
|
||||||
return app.launchUrl && app.launchUrl.startsWith("http");
|
if (app.launchUrl) {
|
||||||
|
// If the launch URL is a full URL, only show with http or https
|
||||||
|
if (app.launchUrl.indexOf("://") !== -1) {
|
||||||
|
return app.launchUrl.startsWith("http");
|
||||||
|
}
|
||||||
|
// If the URL doesn't include a protocol, assume its a relative path
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
})
|
})
|
||||||
.map(
|
.map(
|
||||||
(app) =>
|
(app) =>
|
||||||
|
|
|
@ -31,7 +31,7 @@ Create an application in authentik. Create an _OAuth2/OpenID Provider_ with the
|
||||||
- JWT Algorithm: `RS256`
|
- JWT Algorithm: `RS256`
|
||||||
- Scopes: OpenID, Email, Profile and the scope you created above
|
- Scopes: OpenID, Email, Profile and the scope you created above
|
||||||
- RSA Key: Select any available key
|
- RSA Key: Select any available key
|
||||||
- Redirect URIs: `https://minio.company/minio/login/openid`
|
- Redirect URIs: `https://minio.company/oauth_callback`
|
||||||
|
|
||||||
Note the Client ID and Client Secret values. Create an application, using the provider you've created above. Note the slug of the application you've created.
|
Note the Client ID and Client Secret values. Create an application, using the provider you've created above. Note the slug of the application you've created.
|
||||||
|
|
||||||
|
|
30
website/package-lock.json
generated
30
website/package-lock.json
generated
|
@ -12,7 +12,7 @@
|
||||||
"@docusaurus/preset-classic": "2.0.0-beta.9",
|
"@docusaurus/preset-classic": "2.0.0-beta.9",
|
||||||
"@mdx-js/react": "^1.6.22",
|
"@mdx-js/react": "^1.6.22",
|
||||||
"clsx": "^1.1.1",
|
"clsx": "^1.1.1",
|
||||||
"postcss": "^8.3.11",
|
"postcss": "^8.4.1",
|
||||||
"rapidoc": "^9.1.3",
|
"rapidoc": "^9.1.3",
|
||||||
"react": "^17.0.2",
|
"react": "^17.0.2",
|
||||||
"react-before-after-slider-component": "^1.1.1",
|
"react-before-after-slider-component": "^1.1.1",
|
||||||
|
@ -8703,13 +8703,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/postcss": {
|
"node_modules/postcss": {
|
||||||
"version": "8.3.11",
|
"version": "8.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.1.tgz",
|
||||||
"integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==",
|
"integrity": "sha512-WqLs/TTzXdG+/A4ZOOK9WDZiikrRaiA+eoEb/jz2DT9KUhMNHgP7yKPO8vwi62ZCsb703Gwb7BMZwDzI54Y2Ag==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"nanoid": "^3.1.30",
|
"nanoid": "^3.1.30",
|
||||||
"picocolors": "^1.0.0",
|
"picocolors": "^1.0.0",
|
||||||
"source-map-js": "^0.6.2"
|
"source-map-js": "^1.0.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^10 || ^12 || >=14"
|
"node": "^10 || ^12 || >=14"
|
||||||
|
@ -11250,9 +11250,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/source-map-js": {
|
"node_modules/source-map-js": {
|
||||||
"version": "0.6.2",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz",
|
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.1.tgz",
|
||||||
"integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==",
|
"integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
|
@ -19364,13 +19364,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"postcss": {
|
"postcss": {
|
||||||
"version": "8.3.11",
|
"version": "8.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.1.tgz",
|
||||||
"integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==",
|
"integrity": "sha512-WqLs/TTzXdG+/A4ZOOK9WDZiikrRaiA+eoEb/jz2DT9KUhMNHgP7yKPO8vwi62ZCsb703Gwb7BMZwDzI54Y2Ag==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"nanoid": "^3.1.30",
|
"nanoid": "^3.1.30",
|
||||||
"picocolors": "^1.0.0",
|
"picocolors": "^1.0.0",
|
||||||
"source-map-js": "^0.6.2"
|
"source-map-js": "^1.0.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"picocolors": {
|
"picocolors": {
|
||||||
|
@ -21240,9 +21240,9 @@
|
||||||
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
|
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
|
||||||
},
|
},
|
||||||
"source-map-js": {
|
"source-map-js": {
|
||||||
"version": "0.6.2",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz",
|
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.1.tgz",
|
||||||
"integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug=="
|
"integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA=="
|
||||||
},
|
},
|
||||||
"source-map-support": {
|
"source-map-support": {
|
||||||
"version": "0.5.20",
|
"version": "0.5.20",
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
"@docusaurus/preset-classic": "2.0.0-beta.9",
|
"@docusaurus/preset-classic": "2.0.0-beta.9",
|
||||||
"@mdx-js/react": "^1.6.22",
|
"@mdx-js/react": "^1.6.22",
|
||||||
"clsx": "^1.1.1",
|
"clsx": "^1.1.1",
|
||||||
"postcss": "^8.3.11",
|
"postcss": "^8.4.1",
|
||||||
"rapidoc": "^9.1.3",
|
"rapidoc": "^9.1.3",
|
||||||
"react": "^17.0.2",
|
"react": "^17.0.2",
|
||||||
"react-before-after-slider-component": "^1.1.1",
|
"react-before-after-slider-component": "^1.1.1",
|
||||||
|
|
Reference in a new issue