makeitheady / simplesamlphp-module-mongodb
A SimpleSAMLphp module to provide a SimpleSAML_Store implementation for MongoDB in PHP 5.5 or higher.
This package's canonical repository appears to be gone and the package has been frozen as a result.
This package has no released version yet, and little information is available.
README
This module is an implementation of a SimpleSAMLphp (SSP) data store to add support for the MongoDB PHP library.
Features
- Can be used for backend storage of sessions in MongoDB
- Includes support for replica sets
Requirements
PHP 5.5 or higher
Installation
If your project manages SSP with Composer run:
php composer.phar require makeitheady/simplesamlphp-module-mongodb
This command will add makeitheady/simplesamlphp-module-mongodb
to your projects' composer.json file and install the module
into SSP's modules
directory, which relative to your project's root directory is conventionally vendor/simplesamlphp/simplesamlphp/modules
.
Usage
Set the store.type
option in your SSP config file to mongo:Store
.
Provide your MongoDB connection information to the module by copying the file provided in the config-templates
directory into SSP's config directory, and setting the following environment variables:
DB_DEFAULT_CONNECTION
DB_MONGODB_HOST
DB_MONGODB_PORT
DB_MONGODB_USERNAME
DB_MONGODB_PASSWORD
DB_MONGODB_DATABASE
DB_DEFAULT_CONNECTION - can be set to following configuration:
mongodb - default
mongodb_replica - mongodb replica set
mongodb_replica_string - full mongo db connection string with replica set
If your connecting to a replica set, you'll need to set the following environment variables below as well:
DB_DEFAULT_CONNECTION # Must contain the substring "_replica"
DB_MONGODB_REPLICASET
DB_MONGODB_READ_PREFERENCE
See the MongoDB extension PHP Manual for more information about appropriate values for DB_MONGODB_REPLICASET
and DB_MONGODB_READ_PREFERENCE
.
If you want to use full database connection string, you'll need to set the following environment variables below as well:
DB_DEFAULT_CONNECTION=mongodb_replica_string
DB_MONGODB_DSN=<mongodb connection string>
DB_MONGODB_DATABASE
Finally, you can enable the module by creating an empty file name enable
in the vendor/simplesamlphp/simplesamlphp/modules/mongodb
directory.
Note: This module stores PHP session data in the session
collection.
Running test
Setup up configuration in fixture. test/lib/Store/fixture/single-host/module_mongodb.php Set environment variables manually:
export DB_DEFAULT_CONNECTION=<database connection>
export DB_MONGODB_DATABASE=<database>
Running the test:
vendor/bin/phpunit --bootstrap vendor/autoload.php --testsuite Store Tests
Contributing to SimpleSAMLphp Mongo Module
To report a bug or enhancement request, feel free to file an issue under the respective heading.
If you wish to contribute to the project, fork this repo and submit a pull request.
License
Copyright (c) 2017 Prolific Interactive
SimpleSAMLphp Mongo Module is maintained and sponsored by Prolific Interactive. It may be redistributed under the terms specified in the LICENSE file.