Python Requests Basic Authentication

Python Requests Basic Authentication – What You Need to Know

In this article, I will look at Python requests basic authentication.

Most apps need some level of security. Whether you’re logging users in or restricting access to resources, it’s necessary for your app to be as secure as possible.

Python Requests Basic Authentication

When Python requests basic authentication it is asking for a username and a password. This is usually done by using the HTTPBasicAuth class provided by the requests library.

One way you can do this is by requiring users to authenticate with their username and password before accessing the app.

This authentication can take a few different forms.

For example, you might have an app that needs access to only some of your resources (such as an email account) and/or only certain functions within the app (such as only reading user profiles). In other words, it shouldn’t require full access to your data and functions.

But how can you achieve this? Well, I’ll show you! In this blog post, I’ll go over how you can implement basic authentication in Python Requests.

Python makes it super easy to handle authentication. With a few lines of code, you can add basic authentication to your app in no time.

One of the best things about using Python for web development is the plethora of available libraries and frameworks out there that make developing websites and APIs so much easier.

To tackle the task of authenticating requests from users, we’ll use the Requests library.

At this point, let me give you an example of Python authentication.

# import requests module
import requests
from requests.auth import HTTPBasicAuth
custom_response = requests.get('https://httpbin.org/basic-auth/user/pass',auth = HTTPBasicAuth('user', 'pass'))
print(custom_response)

There are different types of request authentications of HTTP.

Basic Authentication, Digest Authentication, OAuth 1 Authentication, OAuth 2, and OpenID Connect Authentication are the types.

Let’s have a look at Basic Authentication.

Basic Authentication

Python basic authentication refers to operating a username and password for the authentication of a request.

Usually, this is done by using the HTTPBasicAuth class provided by the requests library. However, as you’ll later learn, the requests library makes this much easier, as well, by using the auth= parameter.

Requests is a nimble and simple HTTP library for Python, built for developers. You must install the requests library while working on the HTTP request.

This library enables you to perform HTTP requests with the help of HTTPBasicAuth class.

Let me show you how you can pass in a username and password into a simple function request.get() using the HTTPBasicAuth class.

import requests
from requests.auth import HTTPBasicAuth
auth = HTTPBasicAuth('user', 'pass')
print(requests.get('https://httpbin.org/basic-auth/user/pass', auth=auth))

Let me decode the above code for your better understanding.

Line 1: Imported the requests library to the script.

Line 2: Created an auth object HTTPBasicAuth(), which holds the username and password as a string.

Line 3: Finally, I printed the response I returned while passing our auth variable into the auth= parameter of the get() function