mirror of
https://github.com/wallabag/wallabag.git
synced 2025-09-15 18:57:05 +00:00
API user creation behing a toggle
I've added a toggle feature (in internal settings) so that user api creation can be disabled while form registration still can be enabled. Also, the /api/user endpoint shouldn't require authentication. Even if we check the authentication when sending a GET request, to retrieve current user information. I've moved all the internal settings definition to config to avoid duplicated place to define them. I don't know why we didn't did that earlier.
This commit is contained in:
parent
a687c8d915
commit
426bb453d2
10 changed files with 297 additions and 343 deletions
52
app/DoctrineMigrations/Version20170602075214.php
Normal file
52
app/DoctrineMigrations/Version20170602075214.php
Normal file
|
@ -0,0 +1,52 @@
|
|||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Add api_user_registration in craue_config_setting.
|
||||
*/
|
||||
class Version20170602075214 extends AbstractMigration implements ContainerAwareInterface
|
||||
{
|
||||
/**
|
||||
* @var ContainerInterface
|
||||
*/
|
||||
private $container;
|
||||
|
||||
public function setContainer(ContainerInterface $container = null)
|
||||
{
|
||||
$this->container = $container;
|
||||
}
|
||||
|
||||
private function getTable($tableName)
|
||||
{
|
||||
return $this->container->getParameter('database_table_prefix').$tableName;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function up(Schema $schema)
|
||||
{
|
||||
$apiUserRegistration = $this->container
|
||||
->get('doctrine.orm.default_entity_manager')
|
||||
->getConnection()
|
||||
->fetchArray('SELECT * FROM '.$this->getTable('craue_config_setting')." WHERE name = 'api_user_registration'");
|
||||
|
||||
$this->skipIf(false !== $apiUserRegistration, 'It seems that you already played this migration.');
|
||||
|
||||
$this->addSql('INSERT INTO '.$this->getTable('craue_config_setting')." (name, value, section) VALUES ('api_user_registration', '0', 'api')");
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'api_user_registration';");
|
||||
}
|
||||
}
|
|
@ -62,6 +62,135 @@ wallabag_core:
|
|||
fetching_error_message: |
|
||||
wallabag can't retrieve contents for this article. Please <a href="http://doc.wallabag.org/en/user/errors_during_fetching.html#how-can-i-help-to-fix-that">troubleshoot this issue</a>.
|
||||
api_limit_mass_actions: 10
|
||||
default_internal_settings:
|
||||
-
|
||||
name: share_public
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: carrot
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: share_diaspora
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: diaspora_url
|
||||
value: http://diasporapod.com
|
||||
section: entry
|
||||
-
|
||||
name: share_unmark
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: unmark_url
|
||||
value: https://unmark.it
|
||||
section: entry
|
||||
-
|
||||
name: share_shaarli
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: share_scuttle
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: shaarli_url
|
||||
value: http://myshaarli.com
|
||||
section: entry
|
||||
-
|
||||
name: scuttle_url
|
||||
value: http://scuttle.org
|
||||
section: entry
|
||||
-
|
||||
name: share_mail
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: share_twitter
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: show_printlink
|
||||
value: 1
|
||||
section: entry
|
||||
-
|
||||
name: restricted_access
|
||||
value: 0
|
||||
section: entry
|
||||
-
|
||||
name: export_epub
|
||||
value: 1
|
||||
section: export
|
||||
-
|
||||
name: export_mobi
|
||||
value: 1
|
||||
section: export
|
||||
-
|
||||
name: export_pdf
|
||||
value: 1
|
||||
section: export
|
||||
-
|
||||
name: export_csv
|
||||
value: 1
|
||||
section: export
|
||||
-
|
||||
name: export_json
|
||||
value: 1
|
||||
section: export
|
||||
-
|
||||
name: export_txt
|
||||
value: 1
|
||||
section: export
|
||||
-
|
||||
name: export_xml
|
||||
value: 1
|
||||
section: export
|
||||
-
|
||||
name: import_with_redis
|
||||
value: 0
|
||||
section: import
|
||||
-
|
||||
name: import_with_rabbitmq
|
||||
value: 0
|
||||
section: import
|
||||
-
|
||||
name: piwik_enabled
|
||||
value: 0
|
||||
section: analytics
|
||||
-
|
||||
name: piwik_host
|
||||
value: v2.wallabag.org
|
||||
section: analytics
|
||||
-
|
||||
name: piwik_site_id
|
||||
value: 1
|
||||
section: analytics
|
||||
-
|
||||
name: demo_mode_enabled
|
||||
value: 0
|
||||
section: misc
|
||||
-
|
||||
name: demo_mode_username
|
||||
value: wallabag
|
||||
section: misc
|
||||
-
|
||||
name: download_images_enabled
|
||||
value: 0
|
||||
section: misc
|
||||
-
|
||||
name: wallabag_support_url
|
||||
value: https://www.wallabag.org/pages/support.html
|
||||
section: misc
|
||||
-
|
||||
name: wallabag_url
|
||||
value: http://v2.wallabag.org
|
||||
section: misc
|
||||
-
|
||||
name: api_user_registration
|
||||
value: 0
|
||||
section: api
|
||||
|
||||
wallabag_user:
|
||||
registration_enabled: "%fosuser_registration%"
|
||||
|
|
|
@ -56,6 +56,7 @@ security:
|
|||
access_control:
|
||||
- { path: ^/api/doc, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||
- { path: ^/api/version, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||
- { path: ^/api/user, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue