Is there a function for generating settings.SECRET

2020-04-03 04:29发布

I wrote an ansible-role for openwisp2 to ease its deployment, it's a series of django apps. To ease the deployment as much as possible, I wrote a simple (probably trivial) SECRET_KEY generator script which is called by ansible to generate the secret key the first time the ansible playbook is run.

Now, that works fine BUT I think it defeats the built-in security measures Django has in generating a strong key which is also very hard to guess.

At the time I looked at other ways of doing it but didn't find much, now I wonder: is there a function for generating settings.SECRET_KEY in django?

That would avoid this kind of home baked solutions that even though they work they are not effective when it comes to security.

2条回答
劳资没心,怎么记你
2楼-- · 2020-04-03 05:00

For lazy people like me:

from django.core.management.utils import get_random_secret_key  
get_random_secret_key()
查看更多
叛逆
3楼-- · 2020-04-03 05:03

Indeed, you can use the same function that generates a new key when you call startproject, which is django.core.management.utils.get_random_secret_key().

Note however it's not very different from your version.

查看更多
登录 后发表回答