---
title: "Authentication"
description: "Learn how to implement and manage authentication in WebSerial to enhance the security of your IoT devices. This guide covers setup, usage, best practices, and use cases for the authentication feature."
---

# Authentication

The authentication feature in WebSerial enhances the security of your Internet of Things (IoT) devices by requiring authentication before allowing anybody to access the logs of your device. This feature ensures that only authorized individuals or systems can access and modify your devices, adding an extra layer of protection to your IoT ecosystem.

You can set up authentication for your device using the `WebSerial.setAuthentication("username", "password");` function. This function requires two parameters: a username and a password. 

## Example

```cpp
#include <WebSerial.h>

void setup() {
  ...

  // Set Authentication Credentials
  WebSerial.setAuthentication("myUsername", "myPassword");
}

void loop() {
  ...
}
```

## Use Cases

The Authentication feature is crucial in various scenarios:

- Security: It safeguards your IoT devices against unauthorized access, reducing the risk of malicious actors getting access to important information in your logs.
- Access Control: By setting unique credentials for each device, you can control access to individual devices, ensuring that only authorized personnel or systems can modify them.
- Compliance: Some security and compliance standards require authentication mechanisms for IoT devices. WebSerial's authentication feature helps you meet these requirements.

## Best Practices

To ensure the effectiveness of the authentication feature, consider these best practices:

- Choose strong and unique usernames and passwords for each device.
- Avoid using default or easily guessable credentials to enhance security.
- Regularly update and rotate the authentication credentials to maintain security.