OneLogin_Saml_XmlSec::validateTimestamps PHP Method

validateTimestamps() public method

Verify that the document is still valid according
public validateTimestamps ( ) : boolean
return boolean
    public function validateTimestamps()
    {
        $rootNode = $this->_document;
        $timestampNodes = $rootNode->getElementsByTagName('Conditions');
        for ($i = 0; $i < $timestampNodes->length; $i++) {
            $nbAttribute = $timestampNodes->item($i)->attributes->getNamedItem("NotBefore");
            $naAttribute = $timestampNodes->item($i)->attributes->getNamedItem("NotOnOrAfter");
            if ($nbAttribute && strtotime($nbAttribute->textContent) > time()) {
                return false;
            }
            if ($naAttribute && strtotime($naAttribute->textContent) <= time()) {
                return false;
            }
        }
        return true;
    }

Usage Example

Example #1
0
 public function testValidateTimestampsValid()
 {
     $assertion = file_get_contents(TEST_ROOT . '/data/responses/valid_response.xml.base64');
     $response = new OneLogin_Saml_Response($this->_settings, $assertion);
     $xmlSec = new OneLogin_Saml_XmlSec($this->_settings, $response);
     $this->assertTrue($xmlSec->validateTimestamps());
 }