/** * @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); }