In my application i use the login mechanism from the base webapp. In my config i have allowAutoLogin set true for the user component. So i thought i would stay logged in for 30 days. But that’s not the case, i sometimes have to re-login multiple times a day.
I've checked the cookie, it's still present, even when i have to re-login again.
I understand that this gives some additional security, but isn't it a bit too rigid? I'd say, that most users come from dynamically assigned IPs that change every day. So by default, the "remember Me" feature will not work as expected for the majority of users. Shouldn't this be configurable, at least? Yes, i could use my own WebUser class, but i'd say, the framework should be configurable for such basic tasks.
I vote for removal. Just think about all the business travellers with their laptops. I’d have a hard time to explain, why “Remember me” doesn’t work on my applications.
I can't think of better measures but i'm also not sure, why it could be a security risk if we allow different IPs.
I am developing a shopping mall program with Yii. and I like extra security feature like this. They don't use "Remember me" things for security critical program, like shopping cart. How about giving an option to Yii user, use it or not?
I removed this check mainly because using IP to check security is not reliable and will cause failures to some end users. The current cookie-based login is still secure without IP check. Do not worry.
I think user agent could also be problematic as it might change with (automatic) updates of the browser.
That is a reasonable time to require a login. Browser updates are more likely to be between fairly large intervals, say 1 month or more. The remember me cookie should not last too long.