Skip to content

Commit 5232ed6

Browse files
committed
Island: Create MongoOTPRepository and pass to AuthenticationFacade
Issue: #3078 PR: #3193
1 parent 9417ab4 commit 5232ed6

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

monkey/monkey_island/cc/app.py

+5
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import flask_restful
55
from flask import Flask, Response, send_from_directory
66
from flask_security import Security
7+
from pymongo import MongoClient
78
from werkzeug.exceptions import NotFound
89

910
from common import DIContainer
@@ -44,6 +45,7 @@
4445
from monkey_island.cc.services.authentication_service.configure_flask_security import (
4546
configure_flask_security,
4647
)
48+
from monkey_island.cc.services.authentication_service.mongo_otp_repository import MongoOTPRepository
4749
from monkey_island.cc.services.authentication_service.token_generator import TokenGenerator
4850
from monkey_island.cc.services.authentication_service.token_parser import TokenParser
4951
from monkey_island.cc.services.representations import output_json
@@ -163,18 +165,21 @@ def init_app(
163165
def _build_authentication_facade(container: DIContainer, security: Security):
164166
repository_encryptor = container.resolve(ILockableEncryptor)
165167
island_event_queue = container.resolve(IIslandEventQueue)
168+
mongo_client = container.resolve(MongoClient)
166169

167170
token_generator = TokenGenerator(security)
168171
refresh_token_expiration = (
169172
security.app.config["SECURITY_TOKEN_MAX_AGE"]
170173
+ security.app.config["SECURITY_REFRESH_TOKEN_TIMEDELTA"]
171174
)
172175
token_parser = TokenParser(security, refresh_token_expiration)
176+
otp_repository = MongoOTPRepository(mongo_client, repository_encryptor)
173177

174178
return AuthenticationFacade(
175179
repository_encryptor,
176180
island_event_queue,
177181
security.datastore,
178182
token_generator,
179183
token_parser,
184+
otp_repository,
180185
)

0 commit comments

Comments
 (0)