mirror of
https://github.com/immich-app/immich.git
synced 2024-12-29 15:11:58 +00:00
feat(server): Add OAuth auto-redirect enable/disable CLI commands (#7841)
* Rebase * format fix * docs format * Change to enable/disable oauth master * spell change for oauth * Fix filename
This commit is contained in:
parent
d09980f646
commit
bbed14a9ff
3 changed files with 56 additions and 1 deletions
|
@ -8,6 +8,8 @@ The `immich-server` docker image comes preinstalled with an administrative CLI (
|
|||
| `reset-admin-password` | Reset the password for the admin user |
|
||||
| `disable-password-login` | Disable password login |
|
||||
| `enable-password-login` | Enable password login |
|
||||
| `enable-oauth-login` | Enable OAuth login |
|
||||
| `disable-oauth-login` | Disable OAuth login |
|
||||
| `list-users` | List Immich users |
|
||||
|
||||
## How to run a command
|
||||
|
@ -36,13 +38,27 @@ immich-admin disable-password-login
|
|||
Password login has been disabled.
|
||||
```
|
||||
|
||||
Enabled Password Login
|
||||
Enable Password Login
|
||||
|
||||
```
|
||||
immich-admin enable-password-login
|
||||
Password login has been enabled.
|
||||
```
|
||||
|
||||
Enable OAuth login
|
||||
|
||||
```
|
||||
immich-admin enable-oauth-login
|
||||
OAuth login has been enabled.
|
||||
```
|
||||
|
||||
Disable OAuth login
|
||||
|
||||
```
|
||||
immich-admin disable-oauth-login
|
||||
OAuth login has been disabled.
|
||||
```
|
||||
|
||||
List Users
|
||||
|
||||
```
|
||||
|
|
|
@ -2,6 +2,7 @@ import { DomainModule } from '@app/domain';
|
|||
import { InfraModule } from '@app/infra';
|
||||
import { Module } from '@nestjs/common';
|
||||
import { ListUsersCommand } from './commands/list-users.command';
|
||||
import { DisableOAuthLogin, EnableOAuthLogin } from './commands/oauth-login';
|
||||
import { DisablePasswordLoginCommand, EnablePasswordLoginCommand } from './commands/password-login';
|
||||
import { PromptPasswordQuestions, ResetAdminPasswordCommand } from './commands/reset-admin-password.command';
|
||||
|
||||
|
@ -12,6 +13,8 @@ import { PromptPasswordQuestions, ResetAdminPasswordCommand } from './commands/r
|
|||
PromptPasswordQuestions,
|
||||
EnablePasswordLoginCommand,
|
||||
DisablePasswordLoginCommand,
|
||||
EnableOAuthLogin,
|
||||
DisableOAuthLogin,
|
||||
ListUsersCommand,
|
||||
],
|
||||
})
|
||||
|
|
36
server/src/immich-admin/commands/oauth-login.ts
Normal file
36
server/src/immich-admin/commands/oauth-login.ts
Normal file
|
@ -0,0 +1,36 @@
|
|||
import { SystemConfigService } from '@app/domain';
|
||||
import { Command, CommandRunner } from 'nest-commander';
|
||||
|
||||
@Command({
|
||||
name: 'enable-oauth-login',
|
||||
description: 'Enable OAuth login',
|
||||
})
|
||||
export class EnableOAuthLogin extends CommandRunner {
|
||||
constructor(private configService: SystemConfigService) {
|
||||
super();
|
||||
}
|
||||
|
||||
async run(): Promise<void> {
|
||||
const config = await this.configService.getConfig();
|
||||
config.oauth.enabled = true;
|
||||
await this.configService.updateConfig(config);
|
||||
console.log('OAuth login has been enabled.');
|
||||
}
|
||||
}
|
||||
|
||||
@Command({
|
||||
name: 'disable-oauth-login',
|
||||
description: 'Disable OAuth login',
|
||||
})
|
||||
export class DisableOAuthLogin extends CommandRunner {
|
||||
constructor(private configService: SystemConfigService) {
|
||||
super();
|
||||
}
|
||||
|
||||
async run(): Promise<void> {
|
||||
const config = await this.configService.getConfig();
|
||||
config.oauth.enabled = false;
|
||||
await this.configService.updateConfig(config);
|
||||
console.log('OAuth login has been disabled.');
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue