Wiki for Jasig.phpCAS

Features

  • multiple CAS-Servers can be used simultanously for authentication
    • each provider one CAS-Server
  • settings validation
    • pretty feedback by setting errors in command line

see full Features here

Installation and Configuration

run following command:

composer require rafaelka/jasigphpcas:0.5.*@dev

or

composer --dev require rafaelka/jasigphpcas:0.5.*@dev

add following settings to your Settings.yaml

TYPO3:
  Flow:
    security:
      authentication:
        providers:
          FirstCasProvider:
          ##################################################################
          # Requred: works only with this provider class
            provider: RafaelKa\JasigPhpCas\Security\Authentication\Provider\PhpCasAuthenticationProvider
            providerOptions:
            # The CAS client settings for this provider.
              casClient:
              ##################################################################
              # Requred: Hostname from CAS-Server
                server_hostname:
              # Requered: Path to Root-Certifiacete(X.509) from CAS-Server
                casServerCACertificatePath:

              Mapping:
              ##################################################################
              # Requered: 
                Account:
                ################################################################
                # Requered: path to value in casAttributes array. F.e. arraySubKey.keyName
                  accountidentifier:

              ##################################################################
              # Requered: blocks with possible roles 
                Roles:
                  -
                  ##############################################################
                  # One of both options must be defined.
                  # "identifier:" expects path to value in casAttributes array.
                    identifier: userClass
                  # "staticIdentifier" overrides "identifier" and uses role identifier from Policy.yaml
                  # mapper will not look in CAS-attributes and simply assign difined role to account.
                    staticIdentifier: casUser
                  ###
                  # Requered: package key for role.
                    packageKeys: RafaelKa.JasigPhpCas.Demo
                  -
                     identifier: userClass
                     packageKeys: RafaelKa.JasigPhpCas.Demo

then you can run following command and you will see feedback to your configuration:

./flow jasigphpcas:validate:all

see full Installation and Configuration here