Laravel: Enable Sentry user account be used in multiple computers

后端 未结 2 2068
醉话见心
醉话见心 2021-02-04 10:48

While using Sentry in L4, is it possible to make an account be used in multiple computers at the same time? Right now, Sentry logs out the user the moment the same account is us

2条回答
  •  遥遥无期
    2021-02-04 11:28

    It is possible, but not supported by Sentry itself. To do this, you have to change some core code in Sentry, or find a way to override the User class that's in the Sentry code.

    The function you need to adjust is "GetPresistCode()" in the User model, which can be found in:

    /vendor/cartalyst/sentry/src/Cartalyst/Sentry/Users/Eloquent/User.php
    

    And this is how the function should look like (not tested):

    /**
     * Gets a code for when the user is
     * persisted to a cookie or session which
     * identifies the user.
     *
     * @return string
     */
    public function getPersistCode()
    {
        if (!$this->persist_code) {
            $this->persist_code = $this->getRandomString();
    
            // Our code got hashed
            $persistCode = $this->persist_code;
    
            $this->save();
    
            return $persistCode;
        }
        return $this->persist_code;
    }
    

    I have to say that I highly recommend you don't change the code in Sentry, and that you find another way around, but that might be really hard.

提交回复
热议问题