from django.contrib.auth.decorators import permission_required
from django.http import HttpResponse
@permission_required('app.delete_article')
def delete_article(request, article_id):
# Delete article logic
return HttpResponse('Article deleted')Using Django's @permission_required Decorator for View Protection
The decorator allows access to any authenticated user regardless of permissions
The decorator prevents access unless the user has the 'app.delete_article' permission
The decorator requires the user to be a superuser
The decorator logs all access attempts but does not restrict access
Show answer & explanationAnswer
Correct answer
The decorator prevents access unless the user has the 'app.delete_article' permission
Explanation
The @permission_required decorator checks if the user has the specified permission before allowing access to the view. If the user lacks permission, they are redirected to the login page by default.
Written by ExamHoot EditorialPublished · Updated
All 30 Django Authentication and Permissions questions
- 1.What is the primary purpose of Django's authentication system?
- 2.Which Django decorator is used to restrict access to a view to authenticated users only?
- 3.What is the difference between authentication and authorization in Django?
- 4.Which model in Django stores user information and authentication credentials?
- 5.What does the `is_authenticated` attribute of a User object return for an anonymous user?
- 6.Which method is used to authenticate a user with username and password in Django?
- 7.What is the purpose of the `login()` function in Django?
- 8.In Django, what is a Permission object used for?
- 9.What is the purpose of a Group in Django's permission system?
- 10.Which method checks if a user has a specific permission?
- 11.Scenario:
- 12.What will be the output of the following code?
- 13.Which decorator would you use to ensure a user has the 'can_publish_article' permission before accessing a view?
- 14.Scenario:
- 15.What is the output of the following code when user 'hari' has the 'blog.change_post' permission?
- 16.How would you programmatically assign a permission to a user in Django?
- 17.Scenario:
- 18.What will be the output of the following code?
- 19.Coding Question:
- 20.Scenario:
- 21.Understanding Django's Authentication Backend Architecture
- 22.Implementing Custom Authentication Backend for Company Access Control
- 23.Permission Inheritance in Django Group-Based Authorization
- 24.Scenario:
- 25.Using Django's @permission_required Decorator for View Protection
- 26.Implementing Object-Level Permissions for Hari's Document Sharing Platform
- 27.Token-Based Authentication Implementation for API Security
- 28.Debugging Permission Issues:
- 29.Implementing Session-Based Authentication with CSRF Protection
- 30.Advanced:
