Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-01-20Removes some code marked as deprecated (#15419)Stefan Giehl
2020-01-20Store session ID hashed in the DB (#15390)Thomas Steur
2019-12-10Use appropriate SameSite value for session cookie (#15186)Kate Butler
* Set SameSite=lax for session cookie * Update warning text when Matomo is installed on HTTP * urlencode all session cookie values
2019-08-06In case global config is not working, default idle timeout so user can still ↵diosmosis
login. (#14736)
2019-07-05Update the link tag for all php files (#14635)Luca
I updated the link tag for all php files with the new matomo link. Not sure if it is realistic that this will get merged but I though that someday someone has to do this(?)
2019-06-17Detect expired session use (#14502)diosmosis
* Add INI config option and add tests. * Detect expired sessions. * Update config docs. * Apply review feedback including storing expiration in session fingerprint. * fixing tests. * fix unit tests * fix test
2018-12-19Send all session cookie params when updating session expire time. (#13869)diosmosis
* Send all session cookie params when updating session expire time. * Use login_cookie_path INI config to init the session cookie path.
2018-12-04Use db sessions by default, deprecate file session handler (#13540)Thomas Steur
* use db sessions by default, deprecate file session handler * trying to fix tests
2018-12-03Implement Two Factor Authentication (#13670)Thomas Steur
2018-11-04Update session cookie timeout on each request if session was remembered. ↵diosmosis
(#13554) * Update session cookie on each request if session was remembered. * Fix unit test.
2018-09-24Remove user-agent checking code in SessionAuth. (#13470)3.6.1-b2diosmosis
* Remove user-agent checking code in SessionAuth. * Fixing test. * Fixing couple more tests.
2018-09-14Allow session to be writable in CLI mode so tests can write values. (#13430)diosmosis
2018-08-17Always set Auth interface in DI to the correct plugin's Auth implementation ↵diosmosis
(#13279) * Make sure Auth interface is always set even if session auth succeeds. * Add failing test. * Fix FrontControllerTest * Put hash token authentication back since it is still in use in plugins.
2018-08-16Make two SessionAuth private methods protected. (#13300)diosmosis
2018-07-27Sessions with more security (#12208)diosmosis
* Modifying "cookie authentication" to be more secure. Instead of authenticating by token auth if it exists in the cookie, validate an existing session. If the session has the user name stored as a session var, it has been authenticated. If the request has the same IP address and user agent as the request that created the session, the request is from the user that created the session. If both of these are true, then the session is valid, and we don't need a token auth to authenticate. If the session is deleted before the Piwik auth cookie expires (due to garbage collection), we attempt to re-authenticate using a secure hash of the token auth. We don't do this on every request since password_verify() will, at BEST, add 3.5ms to every request. * Invalidate existing sessions after user password change. Invalidation is accomplished w/o having to individually touch sessions by: 1. Using the password hash as the piwik_auth key secret, instead of the token auth. So when a password changes, existing piwik_auth keys are no longer valid. This affects session re-authentication. 2. Saving the session start time & the last time a user's password was modified, and checking that the session start time is always newer than the password modification time. * Set session.gc_maxlifetime to login_cookie_expire time so session data does not disappear, remove session re-auth functionality & tie cookie hash to password modified time instead of password hash to retain automatic session invalidation on password change. * In SessionInitializer, clear other cookie values so previously stored token auths will be removed. * Make sure anonymous user is still default user whan authenticating. * fixing test failures * Remove hash checking in piwik_auth cookie. piwik_auth cookie still required since it's presence indicates we should use SessionAuth instead of the normal authentication mechanism. Since there's always a session, even if you're not logged in, PIWIK_SESSID can't be used by itself to determine this. * Make sure session auth doesnt break in edge case where ts_password_modified column does not exist. * Clarify session destruction/invalidation logic in SessionAuth. * Make UsersManagerTest slightly more comprehensive. * Use Date::now()->getTimestampUTC() instead of time() in SessionFingerprint::initialize(). * Check getUser returns correct user info in SessionAuth for sanity. * Add SessionInitializer::getAuthCookie() back since it is @api. * Remove IP address from session auth info + check. * Refactor session start changes so it is started in one place only. * Remove SessionAuthCookieFactory & deprecate auth cookie INI config vars (still needed for SessionInitializer deprectaed method). * Make sure user can still login if ts_password_modified column is not present in database. * Rename ts_password_modified Update class. * Update comment in SessionAuth to include why Piwik tries to create another session. * Restore 3.x-dev SessionInitializer for BC (deprecated), move new SessionInitializer to core, add tests for both SessionInitializers. * Change update to 3.5 version. * Make sure normal auth implementation is used if sessionauth fails so anonymous user can be logged in. * On logout clear session fingerprint so same session cannot be used to login. * Change update name + bump version, and make sure Session::rememberMe() is called before session is started (otherwise it has no effect). * Fixing tests. * apply review fixes * remove test
2015-05-27fix core folder with php-cs-fixer for psr-2fabiocarneiro
2015-02-20refs #7104 This should prevent from accidentally starting a Zend_Session.Thomas Steur
Sometimes, eg when module=API, we do not start a session. If any code part during such a request uses SessionNamespace although we did not start a session, Zend_Session_Namespace will start a Zend_Session which does not respect our configuration. It would use default Zend Session options and therefore probably file based sessions. Therefore, we force the creation of a "Piwik session". If we have created the session before it won't be started again.
2014-09-30coding style fixes, some PHPStorm inspection fixes, improved readability of ↵Thomas Steur
code, few refactorings, all as part of our code cleanup strategy
2014-06-24minor code stylemattab
2014-06-10Piwik is a free/libre analytics platform. Refs #4455 GNU Package requirement ↵mattab
to use free/libre instead of open source
2014-03-21Get Db connection singleton in DbTable session handler upon use instead of ↵diosmosis
storing the connection upon creation.
2014-02-03Remove all occurences of @package / @subpackage / @category from core/ files.Fabian Becker
refs #4609
2013-10-08Applying phpstorm code style PSR refs #3771mattab
2013-09-19Moving isPhpCli to Commonmattab
2013-09-14Moving PHP/server settings getter/setter to SettingsServer classmattab
2013-08-02fixed undefined classes in doc blockssgiehl
2013-08-01fixing more namespacessgiehl
2013-07-31Refs #3741 PHP Namespace conversion continued: Tracker classes,mattab
renaming Unzip to Uncompress, Renaming Tracker/Referer to Tracker/Referrer, and few more
2013-07-23Refs #4059 Work in progress: Conversion to use Namespaces of dozen more classesmattab
Removed many Piwik_ functions, in Piwik 2 it is best practise to use the methods calls instead Todo: finish converting core/ classes + convert plugins/ classes to use \Piwik\Plugin namespace + fix build + Merge master
2013-07-20Removing extra namespace \Coremattab
2013-07-18Refactor class Piwik_Common to \Piwik\Core\CommonFabian Becker
Notice that auto refactoring has created a nested namespace. Not sure this is what we want - so we might have to edit those nested namespaces afterwards (I think they don't look so good)
2013-07-18Refactor class Piwik_Commin to \Piwik\Core\CommonFabian Becker
Notice that auto refactoring has created a nested namespace. Not sure this is what we want - so we might have to edit those nested namespaces afterwards (I think they don't look so good)
2013-03-28Mass conversion of all files to the newly agreed coding standard: PSR 1/2mattab
Converting Piwik core source files, PHP, JS, TPL, CSS More info: http://piwik.org/participate/coding-standards/
2013-02-06Removing SVN $, since Git does not provide auto properties.Fabian Becker
2012-05-27moved another interface to its own file; fixed/added lot of doc blockssgiehl
git-svn-id: http://dev.piwik.org/svn/trunk@6325 59fd770c-687e-43c8-a1e3-f5a4ff64c105
2011-07-03refs #2491 - fix typorobocoder
The new savehandler uses the DB adapters that have already been well-tested in Piwik, instead of using Zend_DB_Table (as Zend_Db_Adapter_Mysqli isn't as well-supported as the PDO adapters in ZF). Note: there's a MySQL-ism which we can address later in #1368. git-svn-id: http://dev.piwik.org/svn/trunk@4970 59fd770c-687e-43c8-a1e3-f5a4ff64c105
2011-07-03refs #2491 - replace Zend_Session_SaveHandler_DbTable with a leaner and ↵robocoder
cleaner implementation git-svn-id: http://dev.piwik.org/svn/trunk@4969 59fd770c-687e-43c8-a1e3-f5a4ff64c105
2011-04-03refs #2256robocoder
git-svn-id: http://dev.piwik.org/svn/trunk@4297 59fd770c-687e-43c8-a1e3-f5a4ff64c105
2010-12-19fixes #1901, refs #1592 - we can't use mock objects because of static method ↵robocoder
calls, so the wrappers around Zend_Session and Zend_Session_Namespace dummy initialize when executing from php-cli or headless php-cgi; this also addresses the hack by Parallels in their APS scripts git-svn-id: http://dev.piwik.org/svn/trunk@3468 59fd770c-687e-43c8-a1e3-f5a4ff64c105