private function setCasEnvironment($environment)
    {
        switch ($environment) {
            case 'development':
                $this->setCasHost('authtest.it.usf.edu');
                $this->setCasPort(443);
                $this->setCasContext('/');
                $this->configureCasClient();
                $this->setCasCaCertPath('/etc/USF-CA-chain.pem');
                phpCAS::handleLogoutRequests(false);
                break;

            case 'production':
                $this->setCasHost('webauth.usf.edu');
                $this->setCasPort(443);
                $this->setCasContext('/');
                $this->configureCasClient();
                $this->setCasCaCertPath('/etc/USF-CA-chain.pem');
                phpCAS::handleLogoutRequests(false);
                break;

            case 'impersonate':
                $this->setCasHost('authtest.it.usf.edu');
                $this->setCasPort(444);
                $this->setCasContext('/');
                $this->configureCasClient();
                $this->setCasCaCertPath('/etc/USF-CA-chain.pem');
                phpCAS::handleLogoutRequests(false);
                break;

            default:
                throw new Exception("Unknown auth environment: " . $environment, 500);
                break;
        }
    }