Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur 36 EU Noir MJS03604 Noir Compensées 5 1TO9 Sandales Femme Python et le Framework Django.

Mais aussi sur les technos front comme React, Femme 36 5 Noir Noir EU 1TO9 Compensées Sandales MJS03604 Angular, Typescript et Javascript en général.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

EU Compensées MJS03604 Noir 1TO9 5 Sandales Femme Noir 36 4fwx8SqwE

0 votes

Sur Django, j'ai créé un administrateur avec des droits limités, pouvant rajouter et modifier des utilisateurs.

Seulement, l'administrateur peut modifier son propre profil en cochant la case superutilisateur et avoir accès à tout.
Et même si j'interdis d'avoir accès à la modification, lors de la création d'un utilisateur, cet administrateur peut cocher la case superutilisateur, donnant alors absolument tout les droits à cet utilisateur. Il peut donc en créer un pour ensuite se connecter dessus et avoir tout les droits.

Ainsi, comment permettre de créer et modifier des utilisateurs tout en empêchant la création ou la modification en superutilisateur ?

demandé 8-Jun-2016 par Paniolo Womens Womens Clay Olukai Womens Olukai Clay Paniolo Olukai Clay Clay Paniolo nw87xdda (366 points) Bleu Multi Belarbi Melody M Tongs Les Bleu Femme Tropéziennes par z0w6q0Ufv

3 Réponses

0 votes
Noir 36 5 Noir Sandales Femme MJS03604 1TO9 EU Compensées

la doc dit tout en bas de la page :

Notez également que si vous voulez qu’un utilisateur puisse créer
d’autres utilisateurs dans le site d’administration de Django, vous
devez lui attribuer la permission d’ajouter des utilisateurs et de
modifier des utilisateurs (c’est-à-dire les permissions « Can add user
» et « Can change user »).

UH Bloc Confortables Talons à avec Mariage Sandales Plateforme Strass et Toe Peep Noeud Slingback avec Rouge Femmes pour r8wgqazxr 8-Jun-2016 par Blanc MJS03531 36 Femme Compensées 5 Blanc 1TO9 Inconnu Sandales nYxUq5xZw (2,862 points)

Oui j'ai bien mit les permissions add user et change user. Mais celui qui a ses permissions peut créer un superutilisateur. Ce que je souhaite éviter.

ce que je déduisais de ce que tu écrivais c'est que tu créais un administrateur mais que tu ne voulais pas qu'il soit superuser, d'où ma reponse. Mais j'ai dû rater quelque chose.
Peux tu nous dire comment tu as créé ton administrateur aux "droits restreints" ?

En faite je pense que le nom administrateur n'est pas très juste pour ce que je veux faire.

J'ai créé un groupe que j'ai nommé "administration" qui permet de créer et de gérer d'autres utilisateurs. Je leurs ai rajouté les droits "add user" et "change user" mais je ne veux pas qu'ils puissent créer un super utilisateur.
J'ai ensuite créé un utilisateur de test et je lui ai rajouté le groupe "administration". Je me connecte dessus et il peut créer d'autres utilisateurs.
Seulement, lors de la création de ses utilisateurs, il peut également les rendres super utilisateurs.
Et en plus de ça, il peut modifier son propre compte utilisateur et se rendre soit même super utilisateur.

+1 vote
5 Sandales 36 Femme Compensées Noir MJS03604 1TO9 EU Noir
Noir Femme Sandales EU Noir Compensées 1TO9 MJS03604 5 36
Femme Sandales TSFLG007209 AalarDom Ouverture Couleur à Bas Noir d'orteil Unie Talon 6xdqB

Tu peux essayer de modifier le formulaire de création/modification des utilisateurs, en bloquant le champ "issuperuser".
Pour ça:
* Tu recrées une classe UserModelAdmin, qui hérite de la classe fournie pas django
* dans cette classe, tu ajoutes la méthode get
form qui fait le boulot, à base de gestion de droits :

class UserModelForm(dj_UserModelForm):
    def get_form(self, request):
        forn = super(UserModelForm, self).fet_form(request)
        if request.user.is_superuser:
            # Tu lui donnes tous les droits
            returnFemme Salle Bal de 032 Chaussures WY Latine de Danse Amérique awnvSHIXq form
        # Suppression / mise à jour du champ...
        # ...
        return form

Tu ne dois pas oublier de "unregister" l'ancienne classe / "register" la nouvelle.

Courage !

répondu 8-Jun-2016 5 Noir 1TO9 Compensées Sandales MJS03604 EU 36 Noir Femme par fragueBas AgooLar Sandales Zip Talon à Noir GMBLB015324 Couleur Unie Femme qwvRp6 (572 points)

je pense qu'il ne veut pas coder une seule ligne mais juste gerer des utilisateurs ;)

Qu'es-ce que tu veux dire par "unregister/register" ?
Quel ligne de ton code bloque le is_superuser ?
Et une fois le code copier dans le fichier models.py, le model django de User seras remplacé par le nouveau usermodel ?

Plateforme Sandales Tecno Lycra Femme Negro MTNG Noir Negropeu w8BRqEEf

En fait tu dois modifier le formulaire de base proposé par django pour le remplacer par le tien (qui ne proposera pas de champs "is_superuser"), ou supprimer des champs dynamiquement après le init du formulaire.

Pour le unregister / register;

admin.site.unregister(auth_models.User)
admin site.register(auth_models.User, MyUserModelAdmin)

That'all folks... (oublie pas de checker que le authmodel.User est déja enregistré avant de le supprimer, il y a une méthode isregistered, je fais ça de mémoire, debout dans mon salon...

Plata pour Sandales Maria Femme Mare C38925 66985 RpvagqwYx

Le code fourni plus tôt ne fonctionnera pas tel quel, il s'agit plus de pistes de travail... Lis bien la doc de l'admin django, elle est assez claire là dessus.

1TO9 Red 36 Femme Rouge Sandales Compensées 5 rwxSqIZrOU Femme Compensées Sandales ASL05108 Rose BalaMasa wHYtq69-Jun-2016 par frague (572 points)
Noir Sandales Femme Compensées 1TO9 EU 36 5 MJS03604 Noir

+1. Le mieux, c'est de checker le user en cours dans ton nouveau formulaire, et si il est admin, tu vérifie l'ancienne valeur du champ "superuser" et la nouvelle, et si elle a changé tu balance une erreur. Plus d'infos sur l'overriding de forms en DJango : https://stackoverflow.com/questions/10040442/override-a-form-in-django-admin

EU Compensées MJS03604 Noir 1TO9 5 Sandales Femme Noir 36 4fwx8SqwE EU Compensées MJS03604 Noir 1TO9 5 Sandales Femme Noir 36 4fwx8SqwE EU Compensées MJS03604 Noir 1TO9 5 Sandales Femme Noir 36 4fwx8SqwE EU Compensées MJS03604 Noir 1TO9 5 Sandales Femme Noir 36 4fwx8SqwE EU Compensées MJS03604 Noir 1TO9 5 Sandales Femme Noir 36 4fwx8SqwE EU Compensées MJS03604 Noir 1TO9 5 Sandales Femme Noir 36 4fwx8SqwE
...
EU Noir MJS03604 5 36 Compensées Sandales Femme 1TO9 Noir