diff --git a/mypy.ini b/mypy.ini
index 0baeb890b9d8930303cf8605c02aad391915f078..754ff4f419b37e74f1b15b5155b3454c7744101a 100644
--- a/mypy.ini
+++ b/mypy.ini
@@ -38,5 +38,8 @@ ignore_missing_imports = True
 [mypy-fasttext.*]
 ignore_missing_imports = True
 
+[mypy-flask_httpauth.*]
+ignore_missing_imports = True
+
 [mypy-pytest.*]
 ignore_missing_imports = True
diff --git a/poetry.lock b/poetry.lock
index c14ca3b6670341b7cdb5884b9bffe9858d88d953..75d65c7fcc9eb370280cb84a668251f08fb39f8f 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -118,6 +118,17 @@ Werkzeug = ">=2.0"
 async = ["asgiref (>=3.2)"]
 dotenv = ["python-dotenv"]
 
+[[package]]
+name = "flask-httpauth"
+version = "4.4.0"
+description = "Basic and Digest HTTP authentication for Flask routes"
+category = "main"
+optional = false
+python-versions = "*"
+
+[package.dependencies]
+Flask = "*"
+
 [[package]]
 name = "idna"
 version = "3.2"
@@ -474,7 +485,7 @@ developer = []
 [metadata]
 lock-version = "1.1"
 python-versions = "^3.8"
-content-hash = "339f3a61fd3a6005117dded8ba0727e8eab938a43ad3c1b492db4ac55b8b9009"
+content-hash = "6c2a6af3437d43d9d55a0468d823a6da5abb2bbec9936e76ccb7729f0a014057"
 
 [metadata.files]
 appdirs = [
@@ -515,6 +526,10 @@ flask = [
     {file = "Flask-2.0.1-py3-none-any.whl", hash = "sha256:a6209ca15eb63fc9385f38e452704113d679511d9574d09b2cf9183ae7d20dc9"},
     {file = "Flask-2.0.1.tar.gz", hash = "sha256:1c4c257b1892aec1398784c63791cbaa43062f1f7aeb555c4da961b20ee68f55"},
 ]
+flask-httpauth = [
+    {file = "Flask-HTTPAuth-4.4.0.tar.gz", hash = "sha256:bcaaa7a35a3cba0b2eafd4f113b3016bf70eb78087456d96484c3c18928b813a"},
+    {file = "Flask_HTTPAuth-4.4.0-py2.py3-none-any.whl", hash = "sha256:d9131122cdc5709dda63790f6e9b3142d8101447d424b0b95ffd4ee279f49539"},
+]
 idna = [
     {file = "idna-3.2-py3-none-any.whl", hash = "sha256:14475042e284991034cb48e06f6851428fb14c4dc953acd9be9a5e95c7b6dd7a"},
     {file = "idna-3.2.tar.gz", hash = "sha256:467fbad99067910785144ce333826c71fb0e63a425657295239737f7ecd125f3"},
diff --git a/pyproject.toml b/pyproject.toml
index e94b32d0ea906ebcfcfe43d3d8f1214c2b81306b..73e5ed939519a5216f0221971d5ba7aae993e013 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -19,6 +19,7 @@ pandas = "^1.2.4"
 fasttext = "^0.9.2"
 pymongo = "^3.11.4"
 Flask = "^2.0.1"
+Flask-HTTPAuth = "^4.4.0"
 
 [tool.poetry.dev-dependencies]
 pytest = "^5.2"
diff --git a/sziszapangma/integration/base_asr_service/asr_processor.py b/sziszapangma/integration/base_asr_service/asr_processor.py
index e35c862304322a170933c13d1ec328522a3cd678..a35df95ead8e9130a88b0afc65b5c0ae7cba8ed9 100644
--- a/sziszapangma/integration/base_asr_service/asr_processor.py
+++ b/sziszapangma/integration/base_asr_service/asr_processor.py
@@ -2,8 +2,10 @@ import os
 import uuid
 from abc import ABC, abstractmethod
 from pathlib import Path
+from typing import Optional
 
 from flask import Flask, Response, jsonify, request
+from flask_httpauth import HTTPTokenAuth
 
 from sziszapangma.integration.base_asr_service.asr_result import AsrResult
 
@@ -11,6 +13,11 @@ _TEMP_DIRECTORY = "asr_processing"
 
 
 class AsrProcessor(ABC):
+    user_token: str
+
+    def __init__(self):
+        self.user_token = os.environ["AUTH_TOKEN"]
+
     @abstractmethod
     def process_asr(self, audio_file_path: str) -> AsrResult:
         """Method to call for ASR results."""
@@ -35,8 +42,16 @@ class AsrProcessor(ABC):
             result_object = jsonify({"error": "Error on asr processing"})
         return result_object
 
+    def is_token_correct(self, token: str) -> Optional[str]:
+        if token == self.user_token:
+            return "asr_client"
+        else:
+            return None
+
     def start_processor(self):
         app = Flask(__name__)
+        auth = HTTPTokenAuth(scheme="Bearer")
+        auth.verify_token(self.is_token_correct)
         Path(_TEMP_DIRECTORY).mkdir(parents=True, exist_ok=True)
-        app.route("/process_asr", methods=["POST"])(self.process_request)
+        app.route("/process_asr", methods=["POST"])(auth.login_required(self.process_request))
         app.run(debug=True, host="0.0.0.0")