/** * @param ServiceProvider $serviceProvider * @param IdentityProvider $identityProvider * @return AuthnRequest */ public static function createNewRequest(ServiceProvider $serviceProvider, IdentityProvider $identityProvider) { $request = new SAML2_AuthnRequest(); $request->setAssertionConsumerServiceURL($serviceProvider->getAssertionConsumerUrl()); $request->setDestination($identityProvider->getSsoUrl()); $request->setIssuer($serviceProvider->getEntityId()); $request->setProtocolBinding(SAML2_Const::BINDING_HTTP_POST); $request->setSignatureKey(self::loadPrivateKey($serviceProvider->getPrivateKey(SAML2_Configuration_PrivateKey::NAME_DEFAULT))); return AuthnRequest::createNew($request); }
/** * @test * @group saml2 * @dataProvider provideIsPassiveAndForceAuthnCombinations * * @param string $xml * @param bool $isPassive * @param bool $forceAuthn */ public function is_passive_and_force_authn_can_be_retrieved_from_the_authnrequest($xml, $isPassive, $forceAuthn) { $domDocument = SAML2_DOMDocumentFactory::fromString($xml); $request = new SAML2_AuthnRequest($domDocument->documentElement); $authnRequest = AuthnRequest::createNew($request); $this->assertEquals($isPassive, $authnRequest->isPassive()); $this->assertEquals($forceAuthn, $authnRequest->isForceAuthn()); }
/** * @test * @group saml2 */ public function the_nameid_and_format_can_be_retrieved_from_the_authnrequest() { $domDocument = SAML2_DOMDocumentFactory::fromString($this->authRequestWithSubject); $request = new SAML2_AuthnRequest($domDocument->documentElement); $authnRequest = AuthnRequest::createNew($request); $this->assertEquals($this->nameId, $authnRequest->getNameId()); $this->assertEquals($this->format, $authnRequest->getNameIdFormat()); }