Skip to content
Snippets Groups Projects
Commit a5738b5a authored by Andy Summers's avatar Andy Summers
Browse files

Move header constants into `Provider` interface

parent d0ada802
No related branches found
No related tags found
1 merge request!2Refactor uw-php-security to use 'Provider' classes
...@@ -9,9 +9,6 @@ namespace edu\wisc\doit; ...@@ -9,9 +9,6 @@ namespace edu\wisc\doit;
class FederatedPreauthUserDetailsProvider implements UserDetailsProvider class FederatedPreauthUserDetailsProvider implements UserDetailsProvider
{ {
const SHIB_SESSION_ID = 'Shib-Session-Id';
const SHIB_SESSION_ID_HTTP = 'HTTP_SHIB_SESSION_ID';
/** @var bool */ /** @var bool */
private $httpHeaders; private $httpHeaders;
......
...@@ -8,13 +8,17 @@ namespace edu\wisc\doit; ...@@ -8,13 +8,17 @@ namespace edu\wisc\doit;
interface UserDetailsProvider interface UserDetailsProvider
{ {
// Constants representing UW Federated login Shibboleth headers which should be mapped by concrete implementations. // Constants representing UW Federated login Shibboleth headers
const FED_EPPN = "eppn"; const FED_EPPN = "eppn";
const FED_SPVI = "eduWisconsinSPVI"; const FED_SPVI = "eduWisconsinSPVI";
const FED_FULLNAME = "eduWisconsinCommonName"; const FED_FULLNAME = "eduWisconsinCommonName";
const FED_FIRST_NAME = "eduWisconsinGivenName"; const FED_FIRST_NAME = "eduWisconsinGivenName";
const FED_LAST_NAME = "eduWisconsinSurname"; const FED_LAST_NAME = "eduWisconsinSurname";
const FED_EMAIL = "eduWisconsinEmailAddress"; const FED_EMAIL = "eduWisconsinEmailAddress";
// Generic and/or UWMSN constants
const SHIB_SESSION_ID = 'Shib-Session-Id';
const SHIB_SESSION_ID_HTTP = 'HTTP_SHIB_SESSION_ID';
const UDDS = "udds"; const UDDS = "udds";
const SOURCE = "source"; const SOURCE = "source";
const ISIS_EMPLID = "isisEmplid"; const ISIS_EMPLID = "isisEmplid";
......
...@@ -32,7 +32,7 @@ class FederatedPreauthUserDetailsProviderTest extends \PHPUnit_Framework_TestCas ...@@ -32,7 +32,7 @@ class FederatedPreauthUserDetailsProviderTest extends \PHPUnit_Framework_TestCas
putenv(UserDetailsProvider::FED_EMAIL . '=' . $attributes[UserDetailsProvider::FED_EMAIL]); putenv(UserDetailsProvider::FED_EMAIL . '=' . $attributes[UserDetailsProvider::FED_EMAIL]);
putenv(UserDetailsProvider::SOURCE . '=' . $attributes[UserDetailsProvider::SOURCE]); putenv(UserDetailsProvider::SOURCE . '=' . $attributes[UserDetailsProvider::SOURCE]);
putenv(UserDetailsProvider::ISIS_EMPLID . '=' . $attributes[UserDetailsProvider::ISIS_EMPLID]); putenv(UserDetailsProvider::ISIS_EMPLID . '=' . $attributes[UserDetailsProvider::ISIS_EMPLID]);
putenv(FederatedPreauthUserDetailsProvider::SHIB_SESSION_ID . '=' . $attributes[FederatedPreauthUserDetailsProvider::SHIB_SESSION_ID]); putenv(UserDetailsProvider::SHIB_SESSION_ID . '=' . $attributes[UserDetailsProvider::SHIB_SESSION_ID]);
} }
public function testLoadUser() { public function testLoadUser() {
...@@ -52,7 +52,7 @@ class FederatedPreauthUserDetailsProviderTest extends \PHPUnit_Framework_TestCas ...@@ -52,7 +52,7 @@ class FederatedPreauthUserDetailsProviderTest extends \PHPUnit_Framework_TestCas
public function testLoadUserWithNoEPPN() { public function testLoadUserWithNoEPPN() {
$this->userProvider = new FederatedPreauthUserDetailsProvider(); $this->userProvider = new FederatedPreauthUserDetailsProvider();
// Clear Shib session ID to simulate no session // Clear Shib session ID to simulate no session
putenv(FederatedPreauthUserDetailsProvider::SHIB_SESSION_ID); putenv(UserDetailsProvider::SHIB_SESSION_ID);
$user = $this->userProvider->loadUser(); $user = $this->userProvider->loadUser();
$this->assertNull($user); $this->assertNull($user);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment