feat: add server.versionCheck permission (#20555)

* add server.versionCheck permission

* getVersionCheck is no admin-route
This commit is contained in:
Michael 2025-08-05 00:39:05 +02:00 committed by GitHub
parent 42b78c59b5
commit a91bb399f0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 10 additions and 2 deletions

Binary file not shown.

Binary file not shown.

View file

@ -6506,7 +6506,9 @@
], ],
"tags": [ "tags": [
"Server" "Server"
] ],
"x-immich-permission": "server.versionCheck",
"description": "This endpoint requires the `server.versionCheck` permission."
} }
}, },
"/server/version-history": { "/server/version-history": {
@ -12631,6 +12633,7 @@
"server.apkLinks", "server.apkLinks",
"server.storage", "server.storage",
"server.statistics", "server.statistics",
"server.versionCheck",
"serverLicense.read", "serverLicense.read",
"serverLicense.update", "serverLicense.update",
"serverLicense.delete", "serverLicense.delete",

View file

@ -3552,6 +3552,9 @@ export function getServerVersion(opts?: Oazapfts.RequestOpts) {
...opts ...opts
})); }));
} }
/**
* This endpoint requires the `server.versionCheck` permission.
*/
export function getVersionCheck(opts?: Oazapfts.RequestOpts) { export function getVersionCheck(opts?: Oazapfts.RequestOpts) {
return oazapfts.ok(oazapfts.fetchJson<{ return oazapfts.ok(oazapfts.fetchJson<{
status: 200; status: 200;
@ -4616,6 +4619,7 @@ export enum Permission {
ServerApkLinks = "server.apkLinks", ServerApkLinks = "server.apkLinks",
ServerStorage = "server.storage", ServerStorage = "server.storage",
ServerStatistics = "server.statistics", ServerStatistics = "server.statistics",
ServerVersionCheck = "server.versionCheck",
ServerLicenseRead = "serverLicense.read", ServerLicenseRead = "serverLicense.read",
ServerLicenseUpdate = "serverLicense.update", ServerLicenseUpdate = "serverLicense.update",
ServerLicenseDelete = "serverLicense.delete", ServerLicenseDelete = "serverLicense.delete",

View file

@ -109,7 +109,7 @@ export class ServerController {
} }
@Get('version-check') @Get('version-check')
@Authenticated() @Authenticated({ permission: Permission.ServerVersionCheck })
getVersionCheck(): Promise<VersionCheckStateResponseDto> { getVersionCheck(): Promise<VersionCheckStateResponseDto> {
return this.systemMetadataService.getVersionCheckState(); return this.systemMetadataService.getVersionCheckState();
} }

View file

@ -172,6 +172,7 @@ export enum Permission {
ServerApkLinks = 'server.apkLinks', ServerApkLinks = 'server.apkLinks',
ServerStorage = 'server.storage', ServerStorage = 'server.storage',
ServerStatistics = 'server.statistics', ServerStatistics = 'server.statistics',
ServerVersionCheck = 'server.versionCheck',
ServerLicenseRead = 'serverLicense.read', ServerLicenseRead = 'serverLicense.read',
ServerLicenseUpdate = 'serverLicense.update', ServerLicenseUpdate = 'serverLicense.update',