Exemplo n.º 1
0
    def options(self):
        self.set_extra_headers()
        if self.csrf_protection:
            origin = self.request.headers.get("Origin")
            if not check_origin(origin, self.request.headers,
                                self.allowed_origins):
                self.set_status(403, f"Access denied for origin {origin}")
                return

            self.set_header("Access-Control-Allow-Origin", f"{origin}")
            self.set_header("Access-Control-Allow-Headers", "Content-Type")

        self.set_status(204)
Exemplo n.º 2
0
 def test_empty_origin_allowed(self):
     assert handlers.check_origin("", self.headers, self.allowed)
Exemplo n.º 3
0
 def test_chrome_file_origin_allowed(self):
     assert handlers.check_origin("file://", self.headers, self.allowed)
Exemplo n.º 4
0
 def test_empty_origin_allowed(self):
     self.assertTrue(handlers.check_origin('', self.headers, self.allowed))
Exemplo n.º 5
0
 def test_chrome_file_origin_allowed(self):
     self.assertTrue(handlers.check_origin(
         'file://', self.headers, self.allowed))
Exemplo n.º 6
0
 def test_different_host_origin_blocked(self):
     self.assertFalse(
         handlers.check_origin('http://other:6680', self.headers,
                               self.allowed))
Exemplo n.º 7
0
 def test_extra_origin_allowed(self):
     self.allowed.add('other:6680')
     self.assertTrue(
         handlers.check_origin('http://other:6680', self.headers,
                               self.allowed))
Exemplo n.º 8
0
 def test_missing_origin_blocked(self):
     self.assertFalse(handlers.check_origin(
         None, self.headers, self.allowed))
Exemplo n.º 9
0
 def test_firefox_null_origin_allowed(self):
     assert handlers.check_origin("null", self.headers, self.allowed)
Exemplo n.º 10
0
 def test_different_port_blocked(self):
     self.assertFalse(handlers.check_origin(
         'http://localhost:80', self.headers, self.allowed))
Exemplo n.º 11
0
 def test_extra_origin_allowed(self):
     self.allowed.add('other:6680')
     self.assertTrue(handlers.check_origin(
         'http://other:6680', self.headers, self.allowed))
Exemplo n.º 12
0
 def test_different_host_origin_blocked(self):
     self.assertFalse(handlers.check_origin(
         'http://other:6680', self.headers, self.allowed))
Exemplo n.º 13
0
 def test_same_host_origin_allowed(self):
     self.assertTrue(handlers.check_origin(
         'http://localhost:6680', self.headers, self.allowed))
Exemplo n.º 14
0
 def test_firefox_null_origin_allowed(self):
     self.assertTrue(handlers.check_origin(
         'null', self.headers, self.allowed))
Exemplo n.º 15
0
 def test_firefox_null_origin_allowed(self):
     self.assertTrue(
         handlers.check_origin('null', self.headers, self.allowed))
Exemplo n.º 16
0
 def test_same_host_origin_allowed(self):
     assert handlers.check_origin("http://localhost:6680", self.headers,
                                  self.allowed)
Exemplo n.º 17
0
 def test_same_host_origin_allowed(self):
     self.assertTrue(
         handlers.check_origin('http://localhost:6680', self.headers,
                               self.allowed))
Exemplo n.º 18
0
 def test_different_host_origin_blocked(self):
     assert not handlers.check_origin("http://other:6680", self.headers,
                                      self.allowed)
Exemplo n.º 19
0
 def test_different_port_blocked(self):
     self.assertFalse(
         handlers.check_origin('http://localhost:80', self.headers,
                               self.allowed))
Exemplo n.º 20
0
 def test_different_port_blocked(self):
     assert not handlers.check_origin("http://localhost:80", self.headers,
                                      self.allowed)
Exemplo n.º 21
0
 def test_missing_origin_blocked(self):
     self.assertFalse(
         handlers.check_origin(None, self.headers, self.allowed))
Exemplo n.º 22
0
 def test_extra_origin_allowed(self):
     self.allowed.add("other:6680")
     assert handlers.check_origin("http://other:6680", self.headers,
                                  self.allowed)
Exemplo n.º 23
0
 def test_chrome_file_origin_allowed(self):
     self.assertTrue(
         handlers.check_origin('file://', self.headers, self.allowed))
Exemplo n.º 24
0
 def test_empty_origin_allowed(self):
     self.assertTrue(handlers.check_origin('', self.headers, self.allowed))