Vyriešené: Zamestnanci neobmedzujú povolenia v django

Hlavným problémom neobmedzovania povolení je, že to môže viesť k tomu, že používatelia budú môcť robiť veci, ktoré by nemali robiť. Ak má používateľ napríklad povolenie na úpravu príspevku, môže ho tiež odstrániť.

I have a problem with Django. I am using Django 1.8 and Python 3.4. I have created a superuser and staff user in my project, but the staff user is not restricting permission in django admin panel. 
I want to restrict the staff user from accessing some of the models in django admin panel, but it is not working for me, please help me out with this issue.


A:

You should add <code>is_staff = True</code> to your User model: https://docs.djangoproject.com/en/1.8/ref/contrib/admin/#django-contrib-admin-models-logentry
<blockquote>
<p>The LogEntry model has two required fields:</p>
<ul>
<li><strong><code>&lt;code&gt;user&lt;/code&gt;</code></strong>: The User that performed the action.</li>
<li><strong><code>&lt;code&gt;action_time&lt;/code&gt;</code></strong>: The timestamp of the action.</li>
</ul>
<p>[...]</p>
<p>[...] If you want to log actions performed by non-staff users, you’ll need to set <a href="https://docs.djangoproject.com/en/1.8/_modules/django/contrib/auth/#User" rel="nofollow noreferrer"><strong><em><a href="https://docs.djangoproject.com/en/1.8/_modules/" rel="nofollow noreferrer">User.<strong></strong>.is_staff</a></em></strong></a>] to True.</p>
</blockquote>

Povolenia v Django

Povolenia v Django predstavujú spôsob, ako ovládať, kto môže čo robiť s vašou aplikáciou. Sú definované v súbore permits.py a možno ich nastaviť na základe jednotlivých používateľov alebo aplikácií.

Povolenia je možné nastaviť na úrovni povolení, ktorá je buď na čítanie alebo zápis. Úroveň povolenia možno nastaviť aj tak, aby povolila všetkým používateľom, iba používateľom s určitou rolou alebo iba používateľom s určitými povoleniami.

Môžete tiež použiť premennú prostredia DJANGO_SETTINGS_MODULE na nastavenie povolení pre všetky požiadavky vašej aplikácie.

Súvisiace príspevky:

Pridať komentár