‪TYPO3CMS  ‪main
TYPO3\CMS\Workspaces\Authentication\PreviewUserAuthentication Class Reference
Inheritance diagram for TYPO3\CMS\Workspaces\Authentication\PreviewUserAuthentication:
TYPO3\CMS\Core\Authentication\BackendUserAuthentication TYPO3\CMS\Core\Authentication\AbstractUserAuthentication

Public Member Functions

 __construct ()
 
array false checkWorkspace (int|array $wsRec)
 
string getPagePermsClause ($perms)
 
int calcPerms ($row)
 
- ‪Public Member Functions inherited from ‪TYPO3\CMS\Core\Authentication\BackendUserAuthentication
bool isAdmin ()
 
bool doesUserHaveAccess ($row, $perms)
 
int null isInWebMount ($idOrRow, $readPerms='')
 
 isSystemMaintainer (bool $pure=false)
 
bool check ($type, $value)
 
bool checkAuthMode ($table, $field, $value)
 
bool checkLanguageAccess ($langValue)
 
bool checkFullLanguagesAccess ($table, $record)
 
bool recordEditAccessInternals ($table, $idOrRow, $newRecord=false, $deletedRecord=false, $checkFullLanguageAccess=false)
 
bool mayMakeShortcut ()
 
 workspaceAllowsLiveEditingInTable (string $table)
 
 workspaceCanCreateNewRecord (string $table)
 
bool workspaceCheckStageForCurrent ($stage)
 
array getTSConfig ()
 
 getUserTsConfig ()
 
array returnWebmounts ()
 
 setWebmounts (array $mountPointUids, $append=false)
 
 initializeWebmountsForElementBrowser ()
 
bool jsConfirmation (int $bitmask)
 
 fetchGroupData ()
 
array getCategoryMountPoints ()
 
array getFileMountRecords ()
 
TYPO3 CMS Core Resource ResourceStorage[] getFileStorages ()
 
 evaluateUserSpecificFileFilterSettings ()
 
 getFilePermissions ()
 
 setWorkspace ($workspaceId)
 
bool setTemporaryWorkspace ($workspaceId)
 
int writelog ($type, $action, $error, $details_nr, $details, $data, $tablename='', $recuid='', $recpid='', $event_pid=-1, $NEWid='', $userId=0)
 
 backendCheckLogin (?ServerRequestInterface $request=null)
 
 initializeBackendLogin (?ServerRequestInterface $request=null)
 
 handleUserLoggedIn (?ServerRequestInterface $request=null)
 
 backendSetUC ()
 
 overrideUC ()
 
 resetUC ()
 
bool isUserAllowedToLogin ()
 
 logoff ()
 
int null getOriginalUserIdWhenInSwitchUserMode ()
 
 isMfaSetupRequired ()
 
 isImportEnabled ()
 
 isExportEnabled ()
 
 shallDisplayDebugInformation ()
 
- ‪Public Member Functions inherited from ‪TYPO3\CMS\Core\Authentication\AbstractUserAuthentication
 initializeUserSessionManager (?UserSessionManager $userSessionManager=null)
 
 start (ServerRequestInterface $request)
 
 appendCookieToResponse (ResponseInterface $response, ?NormalizedParams $normalizedParams=null)
 
 checkAuthentication (ServerRequestInterface $request)
 
UserSession createUserSession (array $userRecordCandidate)
 
 enforceNewSessionId ()
 
 removeCookie ($cookieName=null)
 
 writeUC ()
 
 pushModuleData (string $module, mixed $data, bool $dontPersistImmediately=false)
 
mixed getModuleData (string $module, string $type='')
 
mixed getSessionData ($key)
 
 setSessionData ($key, $data)
 
 setAndSaveSessionData ($key, $data)
 
array getLoginFormData (ServerRequestInterface $request)
 
 isActiveLogin (ServerRequestInterface $request)
 
array processLoginData (array $loginData, ServerRequestInterface $request)
 
array getAuthInfoArray (ServerRequestInterface $request)
 
 writelog ($type, $action, $error, $details_nr, $details, $data, $tablename, $recuid, $recpid)
 
 setBeUserByUid ($uid)
 
 setBeUserByName ($name)
 
array getRawUserByUid ($uid)
 
array getRawUserByName ($name)
 
 getUserId ()
 
 getUserName ()
 
 getSession ()
 

Additional Inherited Members

- ‪Static Public Member Functions inherited from ‪TYPO3\CMS\Core\Authentication\BackendUserAuthentication
static getCookieName ()
 
- ‪Public Attributes inherited from ‪TYPO3\CMS\Core\Authentication\BackendUserAuthentication
const ROLE_SYSTEMMAINTAINER = 'systemMaintainer'
 
string $usergroup_column = 'usergroup'
 
string $usergroup_table = 'be_groups'
 
array $groupData
 
array $userGroupsUID = array( )
 
int $workspace = -99
 
array $workspaceRec = array( )
 
string $errorMsg = ''
 
string $user_table = 'be_users'
 
string $username_column = 'username'
 
string $userident_column = 'password'
 
string $userid_column = 'uid'
 
string $lastLogin_column = 'lastlogin'
 
array $enablecolumns
 
bool $writeStdLog = true
 
bool $writeAttemptLog = true
 
int $firstMainGroup = 0
 
array $uc_default
 
string $loginType = 'BE'
 
- ‪Public Attributes inherited from ‪TYPO3\CMS\Core\Authentication\AbstractUserAuthentication
string $name = ''
 
string $user_table = ''
 
string $usergroup_table = ''
 
string $username_column = ''
 
string $userident_column = ''
 
string $userid_column = ''
 
string $usergroup_column = ''
 
array $enablecolumns
 
bool $writeStdLog = false
 
bool $writeAttemptLog = false
 
bool $checkPid = true
 
int string null $checkPid_value = 0
 
array null $user
 
array $userGroups = []
 
string $loginType = ''
 
array $uc = []
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Core\Authentication\BackendUserAuthentication
 isMemberOfGroup (int $groupId)
 
array filterValidWebMounts (string $listOfWebMounts)
 
 prepareUserTsConfig ()
 
 initializeFileStorages ()
 
 workspaceInit ()
 
 initializeDbMountpointsInWorkspace ()
 
 hasEditAccessToLiveWorkspace ()
 
 checkWorkspaceCurrent ()
 
 setDefaultWorkspace ()
 
int getDefaultWorkspace ()
 
 releaseLockedRecords (int $userId)
 
 evaluateMfaRequirements ()
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Core\Authentication\AbstractUserAuthentication
 setSessionCookie ()
 
 shallSetSessionCookie ()
 
bool isSetSessionCookie ()
 
bool isRefreshTimeBasedCookie ()
 
 getAuthServiceConfiguration ()
 
 fetchPossibleUsers (array $loginData, bool $activeLogin, bool $isExistingSession, ?array $authenticatedUserFromSession, ServerRequestInterface $request)
 
Traversable getAuthServices (string $subType, array $loginData, ?array $authenticatedUserFromSession, ServerRequestInterface $request)
 
 regenerateSessionId ()
 
 updateLoginTimestamp (int $userId)
 
 fetchValidUserFromSessionOrDestroySession (bool $skipSessionUpdate=false)
 
 performLogoff ()
 
bool isCookieSet ()
 
 userConstraints ()
 
 unpack_uc ()
 
mixed removeSensitiveLoginDataForLoggingInfo ($data, bool $isUserRecord=false)
 
- ‪Protected Attributes inherited from ‪TYPO3\CMS\Core\Authentication\BackendUserAuthentication
UserTsConfig $userTsConfig = null
 
bool $userTSUpdated = false
 
array null $checkWorkspaceCurrent_cache
 
TYPO3 CMS Core Resource ResourceStorage[] $fileStorages
 
array null $filePermissions
 
string $formfield_uname = 'username'
 
string $formfield_uident = 'userident'
 
string $formfield_status = 'login_status'
 
- ‪Protected Attributes inherited from ‪TYPO3\CMS\Core\Authentication\AbstractUserAuthentication
string $lastLogin_column = ''
 
string $formfield_uname = ''
 
string $formfield_uident = ''
 
string $formfield_status = ''
 
bool $loginSessionStarted = false
 
bool $dontSetCookie = false
 
UserSession $userSession = null
 
UserSessionManager $userSessionManager
 
SetCookieBehavior $setCookie = SetCookieBehavior::None
 

Detailed Description

A backend-user like preview user with read-only permissions for a certain workspace is used for previewing a workspace in the frontend without having a full backend user available.

Has

  • ‪no user[uid]
  • ‪cookie fetched from ADMCMD_prev cookie name
  • ‪read-only everywhere
  • ‪locked to a certain workspace > 0
  • ‪locked to the current page ID as webmount

This class explicitly does not derive from FrontendBackendUserAuthentication. As this user is only meant for using against GET/cookie of "ADMCMD_prev" = clicked on a preview link This user cannot use any admin panel / frontend editing capabilities.

Definition at line 45 of file PreviewUserAuthentication.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Workspaces\Authentication\PreviewUserAuthentication::__construct ( )

Constructor

Reimplemented from TYPO3\CMS\Core\Authentication\BackendUserAuthentication.

Definition at line 47 of file PreviewUserAuthentication.php.

Member Function Documentation

◆ calcPerms()

int TYPO3\CMS\Workspaces\Authentication\PreviewUserAuthentication::calcPerms (   $row)

Has read permissions on the whole workspace, but nothing else

Parameters
array$row
Returns
‪int

Reimplemented from TYPO3\CMS\Core\Authentication\BackendUserAuthentication.

Definition at line 106 of file PreviewUserAuthentication.php.

References TYPO3\CMS\Core\Type\Bitmask\Permission\PAGE_SHOW.

◆ checkWorkspace()

array false TYPO3\CMS\Workspaces\Authentication\PreviewUserAuthentication::checkWorkspace ( int|array  $wsRec)

Checking if a workspace is allowed for backend user This method is intentionally called with setTemporaryWorkspace() to check if the workspace exists.

Parameters
array | int$wsRec‪If integer, workspace record is looked up, if array it is seen as a Workspace record with at least uid, title, members and adminusers columns. Can be faked for workspaces uid 0
Returns
‪array|false Output will also show how access was granted. For preview users, if the record exists, it's a go.

Reimplemented from TYPO3\CMS\Core\Authentication\BackendUserAuthentication.

Definition at line 60 of file PreviewUserAuthentication.php.

References TYPO3\CMS\Core\Database\Connection\PARAM_INT.

◆ getPagePermsClause()

string TYPO3\CMS\Workspaces\Authentication\PreviewUserAuthentication::getPagePermsClause (   $perms)

A preview user has read-only permissions, always.

Parameters
int$perms
Returns
‪string

Reimplemented from TYPO3\CMS\Core\Authentication\BackendUserAuthentication.

Definition at line 92 of file PreviewUserAuthentication.php.

References TYPO3\CMS\Core\Type\Bitmask\Permission\PAGE_SHOW.