Update startos/interfaces.ts
Add admin authentication to web interface
This commit is contained in:
@@ -1,12 +1,35 @@
|
|||||||
import { i18n } from './i18n'
|
import { i18n } from './i18n'
|
||||||
import { sdk } from './sdk'
|
import { sdk } from './sdk'
|
||||||
import { uiPort } from './utils'
|
import { uiPort } from './utils'
|
||||||
|
import { store } from './file-models/store.json'
|
||||||
|
|
||||||
export const setInterfaces = sdk.setupInterfaces(async ({ effects }) => {
|
export const setInterfaces = sdk.setupInterfaces(async ({ effects }) => {
|
||||||
const uiMulti = sdk.MultiHost.of(effects, 'ui-multi')
|
const uiMulti = sdk.MultiHost.of(effects, 'ui-multi')
|
||||||
|
|
||||||
|
const storeData = await store.read().const(effects)
|
||||||
|
const adminPassword = storeData?.adminPassword
|
||||||
|
|
||||||
const uiMultiOrigin = await uiMulti.bindPort(uiPort, {
|
const uiMultiOrigin = await uiMulti.bindPort(uiPort, {
|
||||||
protocol: 'http',
|
protocol: 'http',
|
||||||
|
addSsl: {
|
||||||
|
preferredExternalPort: 443,
|
||||||
|
addXForwardedHeaders: true,
|
||||||
|
alpn: null,
|
||||||
|
auth: adminPassword
|
||||||
|
? {
|
||||||
|
type: 'basic',
|
||||||
|
credentials: [
|
||||||
|
{
|
||||||
|
username: 'admin',
|
||||||
|
password: adminPassword,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
realm: 'Munin Bitcoin',
|
||||||
|
}
|
||||||
|
: null,
|
||||||
|
},
|
||||||
|
preferredExternalPort: uiPort,
|
||||||
|
secure: null,
|
||||||
})
|
})
|
||||||
|
|
||||||
const ui = sdk.createInterface(effects, {
|
const ui = sdk.createInterface(effects, {
|
||||||
|
|||||||
Reference in New Issue
Block a user