diff --git a/apps/settings/lib/Controller/AuthSettingsController.php b/apps/settings/lib/Controller/AuthSettingsController.php index b5076456e0f..07a31d4fd30 100644 --- a/apps/settings/lib/Controller/AuthSettingsController.php +++ b/apps/settings/lib/Controller/AuthSettingsController.php @@ -74,7 +74,7 @@ class AuthSettingsController extends Controller { * @return JSONResponse */ #[NoAdminRequired] - #[PasswordConfirmationRequired] + #[PasswordConfirmationRequired(strict: true)] public function create($name) { if ($this->checkAppToken()) { return $this->getServiceNotAvailableResponse(); diff --git a/apps/settings/src/store/authtoken.ts b/apps/settings/src/store/authtoken.ts index 7e9fb267028..7449158991f 100644 --- a/apps/settings/src/store/authtoken.ts +++ b/apps/settings/src/store/authtoken.ts @@ -5,7 +5,7 @@ import { showError } from '@nextcloud/dialogs' import { loadState } from '@nextcloud/initial-state' import { translate as t } from '@nextcloud/l10n' -import { confirmPassword } from '@nextcloud/password-confirmation' +import { addPasswordConfirmationInterceptors, confirmPassword, PwdConfirmationMode } from '@nextcloud/password-confirmation' import { generateUrl } from '@nextcloud/router' import { defineStore } from 'pinia' @@ -13,6 +13,7 @@ import axios from '@nextcloud/axios' import logger from '../logger' const BASE_URL = generateUrl('/settings/personal/authtokens') +addPasswordConfirmationInterceptors(axios) const confirm = () => { return new Promise(resolve => { @@ -84,9 +85,7 @@ export const useAuthTokenStore = defineStore('auth-token', { logger.debug('Creating a new app token') try { - await confirmPassword() - - const { data } = await axios.post(BASE_URL, { name }) + const { data } = await axios.post(BASE_URL, { name }, { confirmPassword: PwdConfirmationMode.Strict }) this.tokens.push(data.deviceToken) logger.debug('App token created') return data