Toggle navigation
Toggle navigation
This project
Loading...
Sign in
2020-1-CloudComputing-E
/
E_Team_KhuBox
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Graphs
Network
Create a new issue
Commits
Issue Boards
Authored by
서승완
2020-06-08 09:00:25 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
130114cf0e1833873fd0a13ef159cf36a4af7f90
130114cf
1 parent
7cd27e0a
feat: add cloudfront signer
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
28 additions
and
0 deletions
khubox-api/config/settings.py
khubox-api/khubox/aws.py
khubox-api/config/settings.py
View file @
130114c
...
...
@@ -122,3 +122,9 @@ USE_TZ = True
# https://docs.djangoproject.com/en/1.11/howto/static-files/
STATIC_URL
=
'/static/'
# Custom Settings
CDN_PATH
=
'https://khubox-files.khunet.net'
CLOUDFRONT_KEY_ID
=
'APKAJ3FOBWI34OZJTXJQ'
CLOUDFRONT_KEY_PRIVATE
=
'-----BEGIN RSA PRIVATE KEY-----
\n
MIIEowIBAAKCAQEA18VtzURs+fQev5L00LRwRbJaObQI4kfJCIsOE7eWSOqq4Akh
\n
A7fI6vs3z8orXBvgc+k6GgAHrIdNwckxoQuTsCxrTDm1104qy1T4JkVxkIBYHJgH
\n
GzKUloK5IqdmcYbOK7IQeHJ2gR9Mv/3oKUytJSsrbM9k4oLrsxGpyEuJeHIg28aP
\n
whoVWmBGcPu48l4aYAZEVY7LZRJSOQ9y7Lf8FS1u7Xtw1P91gEaqrqVXqRWY02C8
\n
sixpJJuiAPnM3rpcpVNlAaPdDkWmaWYJoJDOlce7Dmx1a9Ckr24krM//vpEljurC
\n
Gml0AsHpL8LE9msM5VA+miCxCz/K+wDgm2xvvQIDAQABAoIBAFmP3pLceyuJVBYK
\n
5smWjB+x91eKTkG2sFB2f8JZau0bUxApWeXULHa1DiaW8UaLX7BdN7vBFW5cvz7X
\n
x1zklEoFNghuz/btwD+kJlikbI4hZ/F+fTyh0yFiY3xp5dDrtrpWcBW+1UeleVMc
\n
DnjOFfSepajFsUeANlue0k2MZSRz34s2T2scV5ZkooqdXddYUF/wDhefYm6uvCgI
\n
PyvY/mbJTyhte/xagY/m6yzk5gxgad0qP2ZZrHhLLMlJ/GEZToWDxD2xUei61NQT
\n
FFc5ZutkAE6fVb3I4SJUBSX5fl0tTMz4Aak1GP2phMhjZyjYnQMq8kvL4BNFb7gp
\n
ary8W/UCgYEA+eKkfjjlPsEx6yHMhD7pAwy/MpUqJmF5LMxIG+qfd+GZMQ2oucn5
\n
pUAwBHP7BD6E9H7/7jdjnCiO+iPrzM9vNLfqsdCtPWzoFYJp/6Fv002uX8seNYvJ
\n
QyQqrM85LYIghhnkcmJMA8GR/Iu5ZEeE2BkAl9T2EKclzmB62d/ki6MCgYEA3Q0V
\n
z08IEwSJW+jEsOM+XGg2YkNqCVKGQD9n4CPx0TFVJxfqFl2nVwlN2hfrlJLUQ9+l
\n
fXnS5AW3tE88t9we+ea0saJZEqqlm/rGsfTV/twS9cWSgvG5fTzhUbu9/ElMU29L
\n
mydQfWTvCup7zCuQtgwM5ZRtPwuKsI8urUg6zR8CgYAt0coZvvMCI8i0dbkbkrGF
\n
NqQkcUeOTBc9CKQ8QjRFdh9x6DBFCOz2ySNE3cNsTs5wSo1BL/Ta4HD/GvEU2ABr
\n
KUImor3xYnPX5dbr4b0wgLD1rbf3V49q+Um98C1q086E6GCEPNP1aFwNc81lvtt0
\n
CHmcXZdVDGEZS4WbR7uPgwKBgBO/moY12lPQoPDsH75p3uVkjg9DVJLWo5XT1FTr
\n
ASyeSqw+b7Rl05BsDV+BqZNRdtNFhMRsANJMTHg4aAVJDh9nZBdGmMyZIEiKI/w8
\n
Em49fRgl+YvnSpoMuViS/EswxTfjBo8q+P7q6IxCHKNF9Ry+gNx14TizsEVL1XC3
\n
tkEjAoGBAMyp7wdPobJMXcclRVq6rqHs9OMcnZAveVKyxNgDbZu4OB5X4xTxGEYT
\n
NZQ0MFf/HcwlnH7797gVQeqF9dlqUJYe+Fc8lc/Rcwta/4R5uMgri9t8RKN91YKF
\n
UUFBsDEkWlkoAmfPkcrrq9cLJlmSNt3ehQj4p5iAJwoVBXXa++PO
\n
-----END RSA PRIVATE KEY-----'
...
...
khubox-api/khubox/aws.py
0 → 100644
View file @
130114c
import
datetime
from
botocore.signers
import
CloudFrontSigner
from
cryptography.hazmat.backends
import
default_backend
from
cryptography.hazmat.primitives
import
hashes
,
serialization
from
cryptography.hazmat.primitives.asymmetric
import
padding
from
django.conf
import
settings
def
rsa_signer
(
message
):
private_key
=
serialization
.
load_pem_private_key
(
settings
.
CLOUDFRONT_KEY_PRIVATE
.
encode
(
'ascii'
),
password
=
None
,
backend
=
default_backend
()
)
return
private_key
.
sign
(
message
,
padding
.
PKCS1v15
(),
hashes
.
SHA1
())
def
sign
(
url
):
expire_date
=
datetime
.
datetime
(
2020
,
6
,
10
)
cloudfront_signer
=
CloudFrontSigner
(
settings
.
CLOUDFRONT_KEY_ID
,
rsa_signer
)
signed_url
=
cloudfront_signer
.
generate_presigned_url
(
url
,
date_less_than
=
expire_date
)
return
signed_url
Please
register
or
login
to post a comment