11
11
from saml2 .saml import ConditionAbstractType_
12
12
from saml2 .samlp import STATUS_AUTHN_FAILED
13
13
from saml2 .time_util import in_a_while , a_while_ago
14
- from sp_test .check import VerifyAuthnRequest
14
+ from sp_test .check import VerifyAuthnRequest , VerifyDigestAlgorithm , \
15
+ VerifySignatureAlgorithm , VerifyIfRequestIsSigned
15
16
from sp_test import check
16
17
from saml2test import ip_addresses
17
18
@@ -62,7 +63,7 @@ class Response(object):
62
63
_args = {}
63
64
_class = samlp .Response
64
65
_sign = False
65
- tests = {"post " : [], "pre " : []}
66
+ tests = {"pre " : [], "post " : []}
66
67
67
68
def __init__ (self , conv ):
68
69
self .args = self ._args .copy ()
@@ -81,7 +82,10 @@ def post_processing(self, message, *kwargs):
81
82
class Request (object ):
82
83
response = ""
83
84
_class = None
84
- tests = {"post" : [VerifyAuthnRequest ], "pre" : []}
85
+ tests = {"pre" : [],
86
+ "post" : [VerifyAuthnRequest ,
87
+ VerifyDigestAlgorithm ,
88
+ VerifySignatureAlgorithm ,]}
85
89
86
90
def __init__ (self ):
87
91
pass
@@ -377,6 +381,12 @@ def pre_processing(self, message, **kwargs):
377
381
"sequence" : [(Login , AuthnRequest , AuthnResponse , check .VerifyEchopageContents )],
378
382
"tests" : {"pre" : [], "post" : []}
379
383
},
384
+ 'sp-02' : {
385
+ "name" : 'Require AuthnRequest to be signed' ,
386
+ "descr" : 'Same as SP-00, and check if a request signature can be found' ,
387
+ "sequence" : [(Login , AuthnRequest , AuthnResponse , None )],
388
+ "tests" : {"pre" : [], "post" : [VerifyIfRequestIsSigned ]}
389
+ },
380
390
'sp-08' : {
381
391
"name" : "SP should accept a Response without a "
382
392
"SubjectConfirmationData element. If confirmation method"
0 commit comments