diff --git a/cmd/policy/main.go b/cmd/policy/main.go
index 81351b61cbfacb4c3743394a23feb815177c05fc..dd6da11c2888390c662abdb6a52b1bd184ba9109 100644
--- a/cmd/policy/main.go
+++ b/cmd/policy/main.go
@@ -81,8 +81,9 @@ func main() {
 	db, err := mongo.Connect(
 		context.Background(),
 		options.Client().ApplyURI(cfg.Mongo.Addr).SetAuth(options.Credential{
-			Username: cfg.Mongo.User,
-			Password: cfg.Mongo.Pass,
+			AuthMechanism: cfg.Mongo.AuthMechanism,
+			Username:      cfg.Mongo.User,
+			Password:      cfg.Mongo.Pass,
 		}),
 	)
 	if err != nil {
diff --git a/internal/config/config.go b/internal/config/config.go
index 101354c8c24afa955baed98be5f97597993b0f12..2af659e5d1ebd1bf3d13ec60f4c86f394aa003d1 100644
--- a/internal/config/config.go
+++ b/internal/config/config.go
@@ -44,11 +44,12 @@ type didResolverConfig struct {
 }
 
 type mongoConfig struct {
-	Addr       string `envconfig:"MONGO_ADDR" required:"true"`
-	User       string `envconfig:"MONGO_USER" required:"true"`
-	Pass       string `envconfig:"MONGO_PASS" required:"true"`
-	DB         string `envconfig:"MONGO_DBNAME" default:"policy"`
-	Collection string `envconfig:"MONGO_COLLECTION" default:"policies"`
+	Addr          string `envconfig:"MONGO_ADDR" required:"true"`
+	User          string `envconfig:"MONGO_USER" required:"true"`
+	Pass          string `envconfig:"MONGO_PASS" required:"true"`
+	DB            string `envconfig:"MONGO_DBNAME" default:"policy"`
+	Collection    string `envconfig:"MONGO_COLLECTION" default:"policies"`
+	AuthMechanism string `envconfig:"MONGO_AUTH_MECHANISM" default:"SCRAM-SHA-1"`
 }
 
 type metricsConfig struct {