No... this will let too many people in. It will "allow if" the first rule passes. You should use:
restrict if: memberId is equal to blank
restrict if: access level is blank
allow if: mktime is < logoutTime
otherwise it will read through and say:
allow if - memberID is > 0 so there must be an ID... and if there is an ID it will immediately allow them. It won't go on to the next line once it is allowed.
You want this to be a restrict if rule, so it goes on to the next line if it passes, but doesn't go on to the next line if it fails.
"Allow if" will not go on to the next line if it passes, but will go on to the next line if it fails
"Restrict if" will not go on to the next line if it fails, but will go on to the next line if it passes.
Since you want to go on to the next line if it passes, you need to use "Restrict if"