# Authentication with FT4 accounts · Tic Tac Toe on Chromia with Rell and Unity · Learn Chromia

> The auth module gives you a simple way to authenticate users through FT4 accounts. First, import the auth library:

Source: https://chromia.com/learn/tic-tac-toe/module-one/create-accounts/authentication/

Tic Tac Toe on Chromia with Rell and UnityLesson 10 of 20

1. [01Tic Tac Toe on Chromia with Rell and Unity](https://chromia.com/learn/tic-tac-toe/introduction/)
2. [02Set up your project](https://chromia.com/learn/tic-tac-toe/setup/)

Module 1: A Rell backend with FT4 accounts

1. [03Overview](https://chromia.com/learn/tic-tac-toe/module-one/)
2. [04Part 1: Database design, operations and queries](https://chromia.com/learn/tic-tac-toe/module-one/data-modeling/)
3. [05Design the data model](https://chromia.com/learn/tic-tac-toe/module-one/data-modeling/tables/)
4. [06Perform basic operations](https://chromia.com/learn/tic-tac-toe/module-one/data-modeling/basic-operations/)
5. [07Write basic queries](https://chromia.com/learn/tic-tac-toe/module-one/data-modeling/write-queries/)
6. [08Part 2: Set up accounts](https://chromia.com/learn/tic-tac-toe/module-one/create-accounts/)
7. [09Configure FT4 accounts](https://chromia.com/learn/tic-tac-toe/module-one/create-accounts/install-configure-ft4/)
8. [10Authentication with FT4 accounts](https://chromia.com/learn/tic-tac-toe/module-one/create-accounts/authentication/)
9. [11Update tests](https://chromia.com/learn/tic-tac-toe/module-one/create-accounts/update-tests/)
10. [12Part 3: How the dapp project is organized](https://chromia.com/learn/tic-tac-toe/module-one/project-structure/)
11. [13Work with Rell modules](https://chromia.com/learn/tic-tac-toe/module-one/project-structure/modules/)
12. [14Add modules to your dapp](https://chromia.com/learn/tic-tac-toe/module-one/project-structure/incorporate-modules/)

Module 2: The Unity project

1. [15Overview](https://chromia.com/learn/tic-tac-toe/module-two/)
2. [16Set up the project](https://chromia.com/learn/tic-tac-toe/module-two/setup/)
3. [17Project scaffold](https://chromia.com/learn/tic-tac-toe/module-two/scaffold/)
4. [18Link the client to the blockchain](https://chromia.com/learn/tic-tac-toe/module-two/connecting-the-client/)
5. [19Summary and manual testing](https://chromia.com/learn/tic-tac-toe/module-two/summary-and-tests/)

1. [20What next?](https://chromia.com/learn/tic-tac-toe/what-next/)

[Learn](https://chromia.com/learn/)[Tic Tac Toe on Chromia with Rell and Unity](https://chromia.com/learn/tic-tac-toe/)

10 / 20Module 1: A Rell backend with FT4 accounts

# Authentication with FT4 accounts

The `auth` module gives you a simple way to authenticate users through FT4 accounts. First, import the `auth` library:

rell

```nolines
import lib.ft4.auth;
```

Next, call `auth.authenticate` inside your operations to verify the user. Because this function takes care of authentication for you, there is no need to pass the user's public key into every operation by hand, which keeps your code both safer and simpler.

Authentication only works once you register an [auth handler](https://docs.chromia.com/build/ft4/backend/authentication/). Add the following to your Rell module:

rell

```
@extend(ft4_auth.auth_handler)
function () = ft4_auth.add_auth_handler(
    flags = []
);
```

This extension function registers a new auth handler that applies globally, so every operation calling `auth.authenticate` is authenticated through it.

Written for this site from Chromia’s public course. Code samples are the course’s own.

[← Previous**Configure FT4 accounts**](https://chromia.com/learn/tic-tac-toe/module-one/create-accounts/install-configure-ft4/)[Next →**Update tests**](https://chromia.com/learn/tic-tac-toe/module-one/create-accounts/update-tests/)
