提交 d036c5cf 编写于 作者: J jackfrued

更新了第95天文档内容

上级 b27a53fe
...@@ -1684,6 +1684,7 @@ Celery是一个本身不提供队列服务,官方推荐使用RabbitMQ或Redis ...@@ -1684,6 +1684,7 @@ Celery是一个本身不提供队列服务,官方推荐使用RabbitMQ或Redis
pass pass
# 消息的生产者
send_email.delay('', [], [], '', '') send_email.delay('', [], [], '', '')
``` ```
...@@ -1700,7 +1701,7 @@ Celery是一个本身不提供队列服务,官方推荐使用RabbitMQ或Redis ...@@ -1700,7 +1701,7 @@ Celery是一个本身不提供队列服务,官方推荐使用RabbitMQ或Redis
beat_schedule={ beat_schedule={
'task1': { 'task1': {
'task': 'common.tasks.show_msg', 'task': 'common.tasks.show_msg',
'schedule': crontab(), 'schedule': crontab('*', '*', '*', '*', '*'),
'args': ('刘强东,奶茶妹妹喊你回家喝奶啦', ) 'args': ('刘强东,奶茶妹妹喊你回家喝奶啦', )
}, },
}, },
...@@ -1759,13 +1760,13 @@ CORS_ORIGIN_ALLOW_ALL = True ...@@ -1759,13 +1760,13 @@ CORS_ORIGIN_ALLOW_ALL = True
### 安全保护 ### 安全保护
问题1:什么是跨站脚本攻击,如何防范?(对提交的内容进行消毒) 问题1:什么是跨站脚本攻击(XSS),如何防范?(对提交的内容进行消毒)
问题2:什么是跨站身份伪造,如何防范?(使用随机令牌) 问题2:什么是跨站身份伪造(CSRF),如何防范?(使用随机令牌)
问题3:什么是SQL注射攻击,如何防范?(不拼接SQL语句,避免使用单引号) 问题3:什么是SQL注射攻击(SQL Injection),如何防范?(不拼接SQL语句,避免使用单引号)
问题4:什么是点击劫持攻击,如何防范?(不允许`<iframe>`加载非同源站点内容) 问题4:什么是点击劫持攻击(Click-hacking),如何防范?(不允许`<iframe>`加载非同源站点内容)
#### Django提供的安全措施 #### Django提供的安全措施
...@@ -1834,21 +1835,6 @@ CSRF令牌和小工具 ...@@ -1834,21 +1835,6 @@ CSRF令牌和小工具
2. 加密和解密(对称加密和非对称加密) 2. 加密和解密(对称加密和非对称加密)
```Shell
pip install rsa
```
```Python
>>> pub_key, pri_key = rsa.newkeys(1024)
>>> message = 'hello, world!'
>>> crypto = rsa.encrypt(message.encode(), pub_key)
>>> crypto
b'Ou{gH\xa9\xa8}O\xe3\x1d\x052|M\x9d9?\xdc\xd8\xecF\xd3v\x9b\xde\x8e\x12\xe6M\xebvx\x08\x08\x8b\xe8\x86~\xe4^)w\xf2\xef\x9e\x9fOg\x15Q\xb7\x7f\x1d\xcfV\xf1\r\xbe^+\x8a\xbf }\x10\x01\xa4U9b\x97\xf5\xe0\x90T\'\xd4(\x9b\x00\xa5\x92\x17\xad4\xb0\xb0"\xd4\x16\x94*s\xe1r\xb7L\xe2\x98\xb7\x7f\x03\xd9\xf2\t\xee*\xe6\x93\xe6\xe1o\xfd\x18\x83L\x0cfL\xff\xe4\xdd%\xf2\xc0/\xfb'
>>> origin = rsa.decrypt(crypto, pri_key).decode()
>>> origin
'hello, world!'
```
```Shell ```Shell
pip install pycrypto pip install pycrypto
``` ```
...@@ -1938,7 +1924,7 @@ CSRF令牌和小工具 ...@@ -1938,7 +1924,7 @@ CSRF令牌和小工具
- 测试套件(测试集)- 组合了多个测试用例而构成的集合。 - 测试套件(测试集)- 组合了多个测试用例而构成的集合。
```Python ```Python
class UtilTest(TestCase): class UtilTest(unittest.TestCase):
def setUp(self): def setUp(self):
self.pattern = re.compile(r'\d{6}') self.pattern = re.compile(r'\d{6}')
...@@ -2340,7 +2326,7 @@ TOTAL 267 176 34% ...@@ -2340,7 +2326,7 @@ TOTAL 267 176 34%
1. 用ID生成器代替自增主键(性能更好、适用于分布式环境)。 1. 用ID生成器代替自增主键(性能更好、适用于分布式环境)。
- 自定义ID生成器 - 自定义ID生成器 - snowflake
- UUID - UUID
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册