public static function regenerateTemporaryPasswordSigningKey() { $key = Security::getRandomHexString(256 / 4); // 256 bit Helper::setDatabaseConfigValueIfEnabled('OWNCLOUD_TEMPORARY_PASSWORD_SIGNING_KEY', $key); }
public function saveConfig($config) { $allowedKeys = array('SPREED_WEBRTC_ORIGIN', 'SPREED_WEBRTC_BASEPATH', 'OWNCLOUD_TEMPORARY_PASSWORD_LOGIN_ENABLED', 'SPREED_WEBRTC_IS_SHARED_INSTANCE'); $_response = array('success' => false); try { foreach ($allowedKeys as $key) { if (isset($config[$key])) { $value = $config[$key]; Helper::setDatabaseConfigValueIfEnabled($key, $value); // Extra configuration for some of the keys switch ($key) { case 'OWNCLOUD_TEMPORARY_PASSWORD_LOGIN_ENABLED': if ($value === 'true' && Helper::getDatabaseConfigValue('OWNCLOUD_TEMPORARY_PASSWORD_SIGNING_KEY') === '') { // Also generate a 'Temporary Password signing key' Security::regenerateTemporaryPasswordSigningKey(); } break; } } } Helper::setDatabaseConfigValueIfEnabled('is_set_up', 'true'); $_response['success'] = true; } catch (\Exception $e) { $_response['error'] = $e->getCode(); } return new DataResponse($_response); }