public MongoDbContext(IConfiguration configuration)
        {
            // Đăng ký conventionPack
            RegisterConventionPack();
            var mongoSettings            = configuration.GetSection("ConnectionStrings").Get <MongoDBSettings>();
            MongoClientSettings settings = new MongoClientSettings();

            settings.Server = new MongoServerAddress(mongoSettings.Host, mongoSettings.Port);

            settings.UseTls      = mongoSettings.UserTls;
            settings.SslSettings = new SslSettings();
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;

            MongoIdentity         identity = new MongoInternalIdentity(mongoSettings.AuthDbName, mongoSettings.UserName);
            MongoIdentityEvidence evidence = new PasswordEvidence(mongoSettings.Password);

            settings.Credential = new MongoCredential(mongoSettings.AuthMechanism, identity, evidence);

            MongoClient client = new MongoClient(settings);

            _database = client.GetDatabase(mongoSettings.DbName);
            //var mongoUrl = new MongoUrl(connectionString);
            //_client = new MongoClient(mongoUrl);
            //_database = _client.GetDatabase(mongoUrl.DatabaseName);
        }
Ejemplo n.º 2
0
        public DBContext(IOptions <Settings> optionSettings)
        {
            string mongoDbAuthMechanism            = "SCRAM-SHA-1";
            MongoInternalIdentity internalIdentity =
                new MongoInternalIdentity("admin", optionSettings.Value.Username);
            PasswordEvidence passwordEvidence = new PasswordEvidence(optionSettings.Value.Password);
            MongoCredential  mongoCredential  =
                new MongoCredential(mongoDbAuthMechanism,
                                    internalIdentity, passwordEvidence);
            List <MongoCredential> credentials =
                new List <MongoCredential>()
            {
                mongoCredential
            };

            MongoClientSettings settings = new MongoClientSettings();
            // comment this line below if your mongo doesn't run on secured mode
            //settings.Credentials = credentials;
            String             mongoHost = optionSettings.Value.Host;
            MongoServerAddress address   = new MongoServerAddress(mongoHost);

            settings.Server = address;

            MongoClient client = new MongoClient(settings);

            if (client != null)
            {
                _database = client.GetDatabase(optionSettings.Value.Database);
            }
        }
        protected override void Load(ContainerBuilder builder)
        {
            builder.Register((c, p) =>
            {
                var settings               = c.Resolve <MongoDbSettings>();
                var clientSettings         = new MongoClientSettings();
                clientSettings.Server      = new MongoServerAddress(settings.Host, 10250);
                clientSettings.UseSsl      = true;
                clientSettings.SslSettings = new SslSettings();
                clientSettings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;
                var identity = new MongoInternalIdentity(settings.Database, settings.Username);
                var evidence = new PasswordEvidence(settings.Password);
                clientSettings.Credentials = new List <MongoCredential>()
                {
                    new MongoCredential("SCRAM-SHA-1", identity, evidence)
                };

                return(new MongoClient(clientSettings));
            }).SingleInstance();

            builder.Register((c, p) =>
            {
                var mongoClient = c.Resolve <MongoClient>();
                var settings    = c.Resolve <MongoDbSettings>();
                var database    = mongoClient.GetDatabase(settings.Database);

                return(database);
            }).As <IMongoDatabase>();
        }
Ejemplo n.º 4
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();
            string username                        = "******";
            string password                        = "******";
            string mongoDbAuthMechanism            = "SCRAM-SHA-1";
            MongoInternalIdentity internalIdentity =
                new MongoInternalIdentity("admin", username);
            PasswordEvidence passwordEvidence = new PasswordEvidence(password);
            MongoCredential  mongoCredential  =
                new MongoCredential(mongoDbAuthMechanism,
                                    internalIdentity, passwordEvidence);

            services.AddMongoDbContext <SocialContext>(c =>
            {
                c.Configure(x =>
                {
                    x.Credential = mongoCredential;
                    x.Servers    = new[]
                    {
                        new MongoServerAddress("mongo-rs-01", 27017),
                        new MongoServerAddress("mongo-rs-02", 27017),
                        new MongoServerAddress("mongo-rs-03", 27017)
                    };
                    x.ConnectionMode = ConnectionMode.ReplicaSet;
                    x.ReplicaSetName = "rs0";
                    x.ReadPreference = ReadPreference.Nearest;
                    x.ReadConcern    = ReadConcern.Snapshot;
                    x.WriteConcern   = WriteConcern.WMajority;
                });
            });
        }
Ejemplo n.º 5
0
        public BaseService(CosmosDbSettings settings, string collectionName)
        {
            if (settings.IsCosmosDb)
            {
                MongoClientSettings stg = new MongoClientSettings();
                stg.Server      = new MongoServerAddress(settings.MongoHost, settings.MongoPort);
                stg.UseTls      = true;
                stg.SslSettings = new SslSettings();
                stg.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;

                MongoIdentity         identity = new MongoInternalIdentity(settings.MongoDatabaseName, settings.MongoUser);
                MongoIdentityEvidence evidence = new PasswordEvidence(settings.MongoPassword);

                stg.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);

                MongoClient client   = new MongoClient(stg);
                var         database = client.GetDatabase(settings.MongoDatabaseName);
                _entities = database.GetCollection <TDataEntity>(collectionName);
            }
            else
            {
                MongoClientSettings stg = new MongoClientSettings();
                stg.Server = new MongoServerAddress(settings.MongoHost, settings.MongoPort);
                var client   = new MongoClient(stg);
                var database = client.GetDatabase(settings.MongoDatabaseName);
                _entities = database.GetCollection <TDataEntity>(collectionName);
            }
        }
Ejemplo n.º 6
0
        public MongoDbRepository(
            IMapper mapper,
            ILogger <MongoDbRepository> logger,
            IOptions <MongoOptions> options)
        {
            this.mapper = mapper;
            this.logger = logger;

            var internalIdentity = new MongoInternalIdentity(Constants.ADMIN, options.Value.Username);
            var passwordEvidence = new PasswordEvidence(options.Value.Password);
            var mongoCredential  = new MongoCredential(options.Value.AuthMechanism, internalIdentity, passwordEvidence);

            var settings = new MongoClientSettings
            {
                Credential         = mongoCredential,
                Server             = new MongoServerAddress(options.Value.MongoHost, int.Parse(options.Value.Port)),
                GuidRepresentation = GuidRepresentation.Standard
            };

            var client = new MongoClient(settings);

            this.database = client.GetDatabase(options.Value.DefaultDb);

            this.insertManyOptions = new InsertManyOptions
            {
                BypassDocumentValidation = false,
                IsOrdered = false
            };

            this.insertOneOptions = new InsertOneOptions
            {
                BypassDocumentValidation = false
            };
        }
        public MongoConnector(string hostname, int port, bool allowAdmin)
        {
            _allowAdmin = allowAdmin;

            string username                        = "******";
            string password                        = "******";
            string mongoDbAuthMechanism            = "SCRAM-SHA-1";
            MongoInternalIdentity internalIdentity =
                new MongoInternalIdentity("admin", username);
            PasswordEvidence passwordEvidence = new PasswordEvidence(password);
            MongoCredential  mongoCredential  =
                new MongoCredential(mongoDbAuthMechanism,
                                    internalIdentity, passwordEvidence);

            MongoClientSettings settings = new MongoClientSettings();

            settings.Server          = new MongoServerAddress(hostname, port);
            settings.Credential      = mongoCredential;
            settings.ApplicationName = "SubterfugeServer";

            var client = new MongoClient(settings);

            _database = client.GetDatabase("subterfugeDb");
            Console.WriteLine("Connected to database. Creating indexes...");
            CreateIndexes();
        }
Ejemplo n.º 8
0
        public static void Setup()
        {
            try {
                MongoClientSettings settings = new MongoClientSettings();
                settings.Server      = new MongoServerAddress("parteimongostorage.mongo.cosmos.azure.com", 10255);
                settings.UseSsl      = true;
                settings.SslSettings = new SslSettings();
                settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;
                settings.RetryWrites = false;

                MongoIdentity         identity = new MongoInternalIdentity("parteidb", "parteimongostorage");
                MongoIdentityEvidence evidence = new PasswordEvidence(Credentials.CosmosPasswordEvidence);

                settings.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);

                MongoClient client = new MongoClient(settings);

                var mongoDataBase = client.GetDatabase("parteidb");

                Images        = mongoDataBase.GetCollection <Image>("Images");
                Organizations = mongoDataBase.GetCollection <Organization>("Organizations");
                Stops         = mongoDataBase.GetCollection <Stop>("Stops");
                Travels       = mongoDataBase.GetCollection <Travel>("Travels");
                TravelMembers = mongoDataBase.GetCollection <TravelMember>("TravelMembers");
                TravelStops   = mongoDataBase.GetCollection <TravelStop>("TravelStops");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Ejemplo n.º 9
0
        public AgileHouseMongoService(IConfiguration config)
        {
            var constr = config.GetValue <string> ("AgileHouseDB");

            string username             = "******";
            string password             = "******";
            string mongoDbAuthMechanism = "SCRAM-SHA-1";

            MongoInternalIdentity internalIdentity =
                new MongoInternalIdentity("admin", username);

            PasswordEvidence passwordEvidence = new PasswordEvidence(password);
            MongoCredential  mongoCredential  =
                new MongoCredential(mongoDbAuthMechanism,
                                    internalIdentity, passwordEvidence);


            MongoClientSettings settings = new MongoClientSettings {
                Credential = mongoCredential,
                Server     = new MongoServerAddress(constr, 27017)
            };

            var client = new MongoClient(settings);

            database = client.GetDatabase("AgileHouse");
        }
Ejemplo n.º 10
0
        public void Configure(IWebJobsBuilder builder)
        {
            builder.Services.AddLogging(loggingBuilder =>
            {
                loggingBuilder.AddFilter(level => true);
            });

            var config = (IConfiguration)builder.Services.First(d => d.ServiceType == typeof(IConfiguration)).ImplementationInstance;

            builder.Services.AddSingleton(
                s => new EventHubProducerClient(config[Settings.EVENT_HUB_CONNECTION_STRING], config[Settings.EVENT_HUB]));

            builder.Services.AddSingleton((s) =>
            {
                MongoClientSettings settings = new MongoClientSettings();
                settings.Server      = new MongoServerAddress(config[Settings.MONGO_HOST], 10255);
                settings.UseSsl      = true;
                settings.RetryWrites = false;
                settings.SslSettings = new SslSettings();
                settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;

                MongoIdentity identity         = new MongoInternalIdentity(config[Settings.DB_NAME], config[Settings.USER_NAME]);
                MongoIdentityEvidence evidence = new PasswordEvidence(config[Settings.MONGO_PASSWORD]);

                settings.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);

                MongoClient client = new MongoClient(settings);

                return(client);
            });
        }
Ejemplo n.º 11
0
        public UserInfoService()
        {
            try
            {
                string host                  = "cryptoguys.mongo.cosmos.azure.com";
                string dbName                = "project";
                string collectionName        = "user_info";
                string password              = "******";
                string username              = "******";
                MongoClientSettings settings = new MongoClientSettings();
                settings.Server      = new MongoServerAddress(host, 10255);
                settings.UseTls      = true;
                settings.SslSettings = new SslSettings();
                settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;
                PasswordEvidence evidence = new PasswordEvidence(password);
                MongoIdentity    identity = new MongoInternalIdentity(dbName, username);
                settings.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);


                var mongoClient = new MongoClient(settings);


                //var ClientConnection = new MongoClient("mongodb://localhost:27017");
                var Database = mongoClient.GetDatabase("project");

                _user_info = Database.GetCollection <User_Info>("user_info");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Ejemplo n.º 12
0
        public DatabaseContext(MongoDBConfig config)
        {
            //var client = new MongoClient(config.ConnectionString);
            //_db = client.GetDatabase(config.Database);
            //string username = config.User;
            //string password = config.Password;

            string mongoDbAuthMechanism            = "SCRAM-SHA-1";
            MongoInternalIdentity internalIdentity =
                new MongoInternalIdentity("admin", config.User);
            PasswordEvidence passwordEvidence = new PasswordEvidence(config.Password);
            MongoCredential  mongoCredential  =
                new MongoCredential(mongoDbAuthMechanism,
                                    internalIdentity, passwordEvidence);
            List <MongoCredential> credentials =
                new List <MongoCredential>()
            {
                mongoCredential
            };


            MongoClientSettings settings = new MongoClientSettings();
            // comment this line below if your mongo doesn't run on secured mode
            //settings.Credentials = credentials;
            String             mongoHost = config.Host;
            MongoServerAddress address   = new MongoServerAddress(mongoHost);

            settings.Server = address;

            MongoClient client = new MongoClient(settings);

            _db = client.GetDatabase(config.Database);
        }
Ejemplo n.º 13
0
        public MongoDbManager()
        {
            // MongoClientの初期化
            var settings = new MongoClientSettings
            {
                Server = new MongoServerAddress(MongoDbManager.host, MongoDbManager.port),
                ServerSelectionTimeout = TimeSpan.FromSeconds(5)
            };

            settings.SslSettings = new SslSettings();
            settings.UseSsl      = true;
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;
            // ローカルMongoDBにオレオレ証明書で接続する場合は、以下のコメントはずす
            //settings.SslSettings.CheckCertificateRevocation = false;
            //settings.VerifySslCertificate = false;

            MongoIdentity         identity = new MongoInternalIdentity(MongoDbManager.database, MongoDbManager.userName);
            MongoIdentityEvidence evidence = new PasswordEvidence(MongoDbManager.password);

            settings.Credentials = new List <MongoCredential>()
            {
                new MongoCredential("SCRAM-SHA-1", identity, evidence)
            };
            this.client = new MongoClient(settings);
        }
Ejemplo n.º 14
0
        public MongoDBAccess()
        {
            string username                        = "******";
            string password                        = "******";
            string mongoDbAuthMechanism            = "SCRAM-SHA-1";
            MongoInternalIdentity internalIdentity =
                new MongoInternalIdentity("CSharpTest", username);
            PasswordEvidence passwordEvidence = new PasswordEvidence(password);
            MongoCredential  mongoCredential  =
                new MongoCredential(mongoDbAuthMechanism,
                                    internalIdentity, passwordEvidence);
            List <MongoCredential> credentials =
                new List <MongoCredential>()
            {
                mongoCredential
            };

            MongoClientSettings settings = new MongoClientSettings();

            // comment this line below if your mongo doesn't run on secured mode
            settings.Credentials = credentials;
            String             mongoHost = "127.0.0.1";
            MongoServerAddress address   = new MongoServerAddress(mongoHost);

            settings.Server = address;

            var         cnn = ConfigurationManager.ConnectionStrings["MongoDB"];
            var         connectionString = cnn.ConnectionString;
            MongoClient client           = new MongoClient(settings);

            db = client.GetDatabase("CSharpTest");
            GetCollection();
        }
Ejemplo n.º 15
0
        private MongoClient CreateClient()
        {
            try
            {
                MongoClientSettings settings = new MongoClientSettings
                {
                    Server      = new MongoServerAddress(_endpoint, 10250),
                    UseSsl      = true,
                    SslSettings = new SslSettings
                    {
                        EnabledSslProtocols = SslProtocols.Tls12
                    }
                };

                MongoIdentity         identity = new MongoInternalIdentity("production", _userName);
                MongoIdentityEvidence evidence = new PasswordEvidence(_password);

                settings.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);

                MongoClient client = new MongoClient(settings);
                return(client);
            }
            catch (Exception)
            {
                throw;
            }
        }
Ejemplo n.º 16
0
        private static IMongoDatabase conectar()
        {
            string username = "******";
            string password = "******";

            string mongoDbAuthMechanism            = "SCRAM-SHA-1";
            MongoInternalIdentity internalIdentity = new MongoInternalIdentity("admin", username);
            PasswordEvidence      passwordEvidence = new PasswordEvidence(password);
            MongoCredential       mongoCredential  = new MongoCredential(mongoDbAuthMechanism, internalIdentity, passwordEvidence);

            List <MongoCredential> credentials = new List <MongoCredential>()
            {
                mongoCredential
            };
            MongoClientSettings settings = new MongoClientSettings();

            // comment this line below if your mongo doesn't run on secured mode
            settings.Credentials = credentials;
            String             mongoHost = "localhost";
            MongoServerAddress address   = new MongoServerAddress(mongoHost);

            settings.Server = address;

            MongoClient client = new MongoClient(settings);

            var mongoServer = client.GetDatabase("TesteMongoDb");


            return(mongoServer);
        }
Ejemplo n.º 17
0
        private MongoClientSettings GetMongoClientSettingsHelper(string endpoint)
        {
            const string MongoAuthScramSHATypeString = "SCRAM-SHA-1";

            string mongoHost     = endpoint;
            string mongoUsername = MongoWorker.MongoUserName;
            string mongoPassword = MongoWorker.MongoPassword;

            MongoClientSettings settings = new MongoClientSettings();

            settings.Server = new MongoServerAddress(mongoHost, MongoWorker.MongoPort);
            settings.UseSsl = true;
            settings.VerifySslCertificate            = true;
            settings.SslSettings                     = new SslSettings();
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;

            settings.ConnectionMode = ConnectionMode.ReplicaSet;
            settings.ReplicaSetName = "globaldb";

            MongoIdentity         identity = new MongoInternalIdentity(MongoWorker.DatabaseName, mongoUsername);
            MongoIdentityEvidence evidence = new PasswordEvidence(mongoPassword);

            settings.Credentials = new List <MongoCredential>()
            {
                new MongoCredential(MongoAuthScramSHATypeString, identity, evidence)
            };

            return(settings);
        }
Ejemplo n.º 18
0
        // ADD THIS PART TO YOUR CODE


        public IMongoCollection <TestCollection> GetTasksCollectionForEdit()
        {
            string dbName                = "TestDB";
            string collectionName        = "TestCollection";
            MongoClientSettings settings = new MongoClientSettings();

            settings.RetryWrites = false;
            settings.Server      = new MongoServerAddress("bot-cosmos-service-account.mongo.cosmos.azure.com", 10255);
            settings.UseSsl      = true;
            settings.SslSettings = new SslSettings();
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;

            MongoIdentity         identity = new MongoInternalIdentity("TestDB", "bot-cosmos-service-account");
            MongoIdentityEvidence evidence = new PasswordEvidence("hcbM5eDcTqVkFam46SuW4w8QqyHsBvwhmYvRVDbbTZ023EYhywMbR0I8GPeoxmNUBWgkVOiW1txxgchKFETfkQ==");

            settings.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);

            MongoClient client             = new MongoClient(settings);
            var         database           = client.GetDatabase(dbName);
            var         todoTaskCollection = database.GetCollection <TestCollection>(collectionName);

            TestCollection collection = new TestCollection();

            collection.name = "hello";
            collection.id   = "2";
            todoTaskCollection.InsertOne(collection);
            return(todoTaskCollection);
        }
Ejemplo n.º 19
0
        private static MongoClient GetClient()
        {
            MongoInternalIdentity internalIdentity =
                new MongoInternalIdentity(MongoHelper.Database, MongoHelper.UserName);
            PasswordEvidence passwordEvidence = new PasswordEvidence(MongoHelper.Password);
            MongoCredential  mongoCredential  =
                new MongoCredential(MongoHelper.AuthType,
                                    internalIdentity, passwordEvidence);
            List <MongoCredential> credentials =
                new List <MongoCredential>()
            {
                mongoCredential
            };


            MongoClientSettings settings = new MongoClientSettings
            {
                Credentials = credentials
            };
            String             mongoHost = MongoHelper.Server;
            MongoServerAddress address   = new MongoServerAddress(MongoHelper.Server);

            settings.Server = address;
            return(new MongoClient(settings));
        }
Ejemplo n.º 20
0
        public IMongoCollection <T> MongoConnection()
        {
            var settings = new MongoClientSettings();

            if (!string.IsNullOrWhiteSpace(this._config.Username))
            {
                var internalIdentity = new MongoInternalIdentity(Mongo_Root_DB, this._config.Username);

                var passwordEvidence = new PasswordEvidence(this._config.Password);

                var mongoCredential = new MongoCredential(
                    this._config.AuthMechanism,
                    internalIdentity,
                    passwordEvidence);

                settings.Credential = mongoCredential;
            }

            var address = new MongoServerAddress(this._config.Host);

            settings.Server = address;

            var client = new MongoClient(settings);

            if (!BsonClassMap.IsClassMapRegistered(typeof(TenantUserProfileBase)))
            {
                BsonClassMap.RegisterClassMap <TenantUserProfileBase>();
            }

            var db   = client.GetDatabase(this._config.Database);
            var coll = db.GetCollection <T>(this._config.Collection);

            return(coll);
        }
    private static MongoClientSettings ApplyMongoConnectionSettings(NautilusMongoDatabaseSetting mongoDbSetting)
    {
        var mongoClientSettings = new MongoClientSettings
        {
            Server = new MongoServerAddress(mongoDbSetting.Host, mongoDbSetting.Port),
        };

        if (mongoDbSetting.UseMongoAuthentication)
        {
            mongoClientSettings.UseTls = mongoDbSetting.UseTls;

            if (!mongoDbSetting.SslProtocol.ToLower().Equals("none"))
            {
                var sslProtocol = (SslProtocols)Enum.Parse(typeof(SslProtocols), mongoDbSetting.SslProtocol, true);
                mongoClientSettings.SslSettings = new SslSettings
                {
                    EnabledSslProtocols = sslProtocol
                };
            }

            var identity = new MongoInternalIdentity(mongoDbSetting.Database, mongoDbSetting.UserName);
            var evidence = new PasswordEvidence(mongoDbSetting.Password);
            mongoClientSettings.Credential = new MongoCredential(mongoDbSetting.MongoCredentialMechanism, identity, evidence);
        }

        return(mongoClientSettings);
    }
Ejemplo n.º 22
0
        private static MongoClient ConnectUsingCredential(string dbname, string user, string password, int tryCount = 2)
        {
            var identity   = new MongoInternalIdentity(dbname, user);
            var evidence   = new PasswordEvidence(password);
            var credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);

            var settings = new MongoClientSettings
            {
                Credentials            = new[] { credential },
                Server                 = new MongoServerAddress(server, port),
                ServerSelectionTimeout = TimeSpan.FromSeconds(10)
            };

            MongoClient clientInstance = null;

            try
            {
                clientInstance = new MongoClient(settings);
            }
            catch (MongoClientException e)
            {
                if (tryCount > 0)
                {
                    ConnectUsingCredential(dbname, user, password, tryCount - 1);
                }
                Console.WriteLine(e.ToString());
            }
            return(clientInstance);
        }
Ejemplo n.º 23
0
        private MongoDBHelperSingleton()
        {
            AzureServiceTokenProvider azureServiceTokenProvider = new AzureServiceTokenProvider();
            KeyVaultClient            keyVaultClient            = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback));

            password = keyVaultClient.GetSecretAsync("https://msskillslab-keyvault.vault.azure.net/secrets/DBPassword").Result.Value;
            userName = keyVaultClient.GetSecretAsync("https://msskillslab-keyvault.vault.azure.net/secrets/DBUserName").Result.Value;
            host     = keyVaultClient.GetSecretAsync("https://msskillslab-keyvault.vault.azure.net/secrets/DBHost").Result.Value;
            dbName   = keyVaultClient.GetSecretAsync("https://msskillslab-keyvault.vault.azure.net/secrets/DBName").Result.Value;

            MongoClientSettings settings = new MongoClientSettings();

            settings.Server      = new MongoServerAddress(host, 10255);
            settings.UseTls      = true;
            settings.SslSettings = new SslSettings();
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;
            settings.RetryWrites = false;
            settings.RetryReads  = false;

            MongoIdentity         identity = new MongoInternalIdentity(dbName, userName);
            MongoIdentityEvidence evidence = new PasswordEvidence(password);

            settings.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);

            client = new MongoClient(settings);
        }
Ejemplo n.º 24
0
        public static IMongoCollection <T> GetCollection <T>(string collectionName)
        {
            var host       = System.Environment.GetEnvironmentVariable("MongoHost");
            var collection = System.Environment.GetEnvironmentVariable(collectionName);
            var userName   = System.Environment.GetEnvironmentVariable("MongoUserName");
            var password   = System.Environment.GetEnvironmentVariable("MongoPwd");
            var dbName     = System.Environment.GetEnvironmentVariable("MongoDBName");

            MongoClientSettings settings = new MongoClientSettings();

            settings.Server      = new MongoServerAddress(host, 10255);
            settings.UseSsl      = true;
            settings.SslSettings = new SslSettings();
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;
            //hotfix fix2 test
            MongoIdentity          identity    = new MongoInternalIdentity(dbName, userName);
            MongoIdentityEvidence  evidence    = new PasswordEvidence(password);
            List <MongoCredential> credentials = new List <MongoCredential>();

            credentials.Add(new MongoCredential("SCRAM-SHA-1", identity, evidence));
            settings.Credentials = credentials;
            MongoClient client   = new MongoClient(settings);
            var         database = client.GetDatabase(dbName);

            return(database.GetCollection <T>(collection));
        }
Ejemplo n.º 25
0
        private void ConfigurePersistence()
        {
            var mongoDbConnectionString = ConfigurationManager.ConnectionStrings["Merp-Accountancy-EventStore"].ConnectionString;
            var mongoDbUrl = MongoDB.Driver.MongoUrl.Create(mongoDbConnectionString);
            MongoClientSettings settings = new MongoClientSettings();

            settings.Server      = new MongoServerAddress(mongoDbUrl.Server.Host, mongoDbUrl.Server.Port);
            settings.UseSsl      = true;
            settings.SslSettings = new SslSettings();
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;

            MongoIdentity         identity = new MongoInternalIdentity(mongoDbUrl.DatabaseName, mongoDbUrl.Username);
            MongoIdentityEvidence evidence = new PasswordEvidence(mongoDbUrl.Password);

            settings.Credentials = new List <MongoCredential>()
            {
                new MongoCredential("SCRAM-SHA-1", identity, evidence)
            };

            MongoClient client = new MongoClient(settings);

            Container.RegisterInstance(client.GetDatabase(mongoDbUrl.DatabaseName));
            Container.RegisterType <IEventStore, Memento.Persistence.MongoDB.MongoDbEventStore>(new InjectionConstructor(typeof(IMongoDatabase), typeof(IEventDispatcher)));
            Container.RegisterType <IRepository, Memento.Persistence.Repository>();
        }
Ejemplo n.º 26
0
        public MongoClient Create()
        {
            var clientSettings = new MongoClientSettings
            {
                Server = new MongoServerAddress(_mongoDbSettings.Host, _mongoDbSettings.Port),
                UseSsl = _mongoDbSettings.UseSsl
            };

            if (clientSettings.UseSsl)
            {
                clientSettings.SslSettings = new SslSettings
                {
                    EnabledSslProtocols = SslProtocols.Tls12
                };
            }

            var identity = new MongoInternalIdentity(_mongoDbSettings.DatabaseName, _mongoDbSettings.UserName);
            var evidence = new PasswordEvidence(_mongoDbSettings.Password);

            clientSettings.Credentials = new List <MongoCredential>
            {
                new MongoCredential("SCRAM-SHA-1", identity, evidence)
            };

            var mongoClient = new MongoClient(clientSettings);

            return(mongoClient);
        }
        public UnitOfWork(INextLevelDBSettings dbSettings)
        {
            //var mongoCredential = MongoCredential.CreateCredential(settings.DatabaseName,
            //                settings.Username, settings.Password);
            //var mongoClientSettings = new MongoClientSettings()
            //{
            //    Credential = mongoCredential,
            //    Server = new MongoServerAddress(settings.Server, settings.Port)
            //};

            MongoClientSettings settings = new MongoClientSettings();

            settings.Server = new MongoServerAddress(dbSettings.Server, dbSettings.Port);

            settings.SslSettings = new SslSettings();
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;

            MongoIdentity         identity = new MongoInternalIdentity(dbSettings.DatabaseName, dbSettings.Username);
            MongoIdentityEvidence evidence = new PasswordEvidence(dbSettings.Password);

            settings.Credential = new MongoCredential("SCRAM-SHA-1", identity, evidence);

            MongoClient client = new MongoClient(settings);

            // var client = new MongoClient(mongoClientSettings);
            _mongoDatabase = client.GetDatabase(dbSettings.DatabaseName);
        }
Ejemplo n.º 28
0
        public static MongoClient getClient()
        {
            string username = Environment.GetEnvironmentVariable("MONGODB_USERNAME");
            string password = Environment.GetEnvironmentVariable("MONGODB_PASSWORD");

            MongoClientSettings settings = new MongoClientSettings();

            if (username != null && password != null)
            {
                string mongoDbAuthMechanism            = "SCRAM-SHA-1";
                MongoInternalIdentity internalIdentity =
                    new MongoInternalIdentity("admin", username);
                PasswordEvidence passwordEvidence = new PasswordEvidence(password);
                MongoCredential  mongoCredential  =
                    new MongoCredential(mongoDbAuthMechanism,
                                        internalIdentity, passwordEvidence);
                // comment this line below if your mongo doesn't run on secured mode
                settings.Credential = mongoCredential;
                Console.WriteLine("Got creds for Mongodb");
            }
            else
            {
                Console.WriteLine("No creds for Mongodb");
            }

            String             mongoHost = "mongo";
            MongoServerAddress address   = new MongoServerAddress(mongoHost);

            settings.Server = address;
            return(new MongoClient(settings));
        }
Ejemplo n.º 29
0
        private IMongoCollection <AirbnbListing> GetTasksCollection()
        {
            MongoClientSettings settings = new MongoClientSettings();

            settings.Server      = new MongoServerAddress(host, 10255);
            settings.UseSsl      = true;
            settings.SslSettings = new SslSettings();
            settings.SslSettings.EnabledSslProtocols = SslProtocols.Tls12;

            MongoIdentity         identity = new MongoInternalIdentity(dbName, userName);
            MongoIdentityEvidence evidence = new PasswordEvidence(password);

            settings.Credentials = new List <MongoCredential>()
            {
                new MongoCredential("SCRAM-SHA-1", identity, evidence)
            };

            MongoClient client = new MongoClient(settings);



            var database           = client.GetDatabase(dbName);
            var todoTaskCollection = database.GetCollection <AirbnbListing>(collectionName);

            return(todoTaskCollection);
        }
Ejemplo n.º 30
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllersWithViews();

            services.AddScoped <ITransactionsRepository, TransactionsRepository>();

            services.AddScoped <IMongoDatabase>(s =>
            {
                string username                        = "******";
                string password                        = "******";
                string mongoDbAuthMechanism            = "SCRAM-SHA-1";
                MongoInternalIdentity internalIdentity =
                    new MongoInternalIdentity("admin", username);
                PasswordEvidence passwordEvidence = new PasswordEvidence(password);
                MongoCredential mongoCredential   =
                    new MongoCredential(mongoDbAuthMechanism,
                                        internalIdentity, passwordEvidence);
                List <MongoCredential> credentials =
                    new List <MongoCredential>()
                {
                    mongoCredential
                };

                MongoClientSettings settings = new MongoClientSettings();
                // comment this line below if your mongo doesn't run on secured mode
                settings.Credentials       = credentials;
                String mongoHost           = Configuration["DOTNET_RUNNING_IN_CONTAINER"] != null ? "mongo" : "localhost"; // <== weblocal 'locahost', container 'mongo'
                MongoServerAddress address = new MongoServerAddress(mongoHost);
                settings.Server            = address;

                MongoDB.Driver.MongoClient client = new MongoDB.Driver.MongoClient(settings);

                return(client.GetDatabase("bank"));
            });
        }
 // constructors
 /// <summary>
 /// Initializes a new instance of the <see cref="GsaslCramMD5Implementation" /> class.
 /// </summary>
 /// <param name="username">The username.</param>
 /// <param name="password">The password.</param>
 public GsaslCramMD5Implementation(string username, PasswordEvidence password)
     : base("CRAM-MD5", new byte[0])
 {
     _username = username;
     _password = password;
 }