Purgeable / full-app

Keep all functionality for (parsers + db + frontend API) inside one Django project.
0 stars 1 forks source link

question: permissions for api #23

Open Rub4ek opened 7 years ago

Rub4ek commented 7 years ago

Currently there is only one permission class for api points enabled by default for all enpoints:

REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.IsAdminUser',
    ], ...
}

Only admin can get/create using all (currently /api/ and '/users/') api enpoints.

Are there any requirements for permissions, groups, and perissions configurations for rest api enpoints?

epogrebnyak commented 7 years ago

Very good point: we need a public API endpoint, so that any user not registered to the web site can query it with (discussed at #8):

datapoint/?name=BRENT&freq=d&start_date=2017-01-01&end_date=2017-06-01

The admin role is needed to perform extra tasks, like for example deleting some data. So the answereing your question the roles are minimal:

tinivir commented 6 years ago

@epogrebnyak I didn't get what you mean

admin can log in and perfrom extra serach/filter and delete operations

So I added IsAuthenticatedOrReadOnly permission. For not authenticated - get, for authenticated create, delete, put

Rub4ek commented 6 years ago

@tinivir but for /users/ api we probably still need admin role. @epogrebnyak ?

epogrebnyak commented 6 years ago

admin can log in and perfrom extra serach/filter and delete operations

Админ может логиниться и корежить базу всеми методами. Спрашивайте, что еще рассказать.

Rub4ek commented 6 years ago

Админ может логиниться и корежить базу всеми методами. Спрашивайте, что еще рассказать

то что админ может все - это понятно что может обычный ползователь кроме как смотреть

tinivir commented 6 years ago

@Rub4ek на /users/ так же как /api/datapoints/ get для не авторизированых и изменять с авторизацией. но авторизация и админ права - это разное. нам нужно только админ права на изменения? Или имелось в виду что /users/ должны быть полностью только доступны для админ роли?

Rub4ek commented 6 years ago

@tinivir да я имел ввиду толко для админ роли, но это только догадка. Я не в курсе требований по этому поводую.

epogrebnyak commented 6 years ago

Коллеги, я не очень понимаю смысл этой дискуссии по поводу users - сейчас в проекте нет никаких users - только админ и неавторизованные пользователи. Неавторизованные пользователи смотрят только один URL запрососм на datapoints. Авторизованных пользователей нет.

@tinivir, @Rub4ek - этот ишью можно закрыть?