edgegrid-python 2.0.1__tar.gz → 2.0.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/MANIFEST.in +2 -0
- {edgegrid_python-2.0.1/edgegrid_python.egg-info → edgegrid_python-2.0.3}/PKG-INFO +3 -3
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/README.md +1 -1
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/__init__.py +1 -1
- edgegrid_python-2.0.3/akamai/edgegrid/test/sample_file.txt +1 -0
- edgegrid_python-2.0.3/akamai/edgegrid/test/testcases.json +239 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3/edgegrid_python.egg-info}/PKG-INFO +3 -3
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/edgegrid_python.egg-info/SOURCES.txt +2 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/requirements.txt +5 -5
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/setup.py +2 -2
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/LICENSE +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/__init__.py +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/edgegrid.py +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/edgerc.py +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/test/__init__.py +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/test/conftest.py +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/test/edgerc_that_doesnt_parse +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/test/sample_edgerc +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/test/test_edgegrid.py +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/test/testdata.json +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/edgegrid_python.egg-info/dependency_links.txt +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/edgegrid_python.egg-info/namespace_packages.txt +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/edgegrid_python.egg-info/requires.txt +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/edgegrid_python.egg-info/top_level.txt +0 -0
- {edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/setup.cfg +0 -0
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
include README.rst
|
|
2
2
|
include LICENSE
|
|
3
3
|
include requirements.txt
|
|
4
|
+
include akamai/edgegrid/test/testcases.json
|
|
4
5
|
include akamai/edgegrid/test/testdata.json
|
|
5
6
|
include akamai/edgegrid/test/sample_edgerc
|
|
7
|
+
include akamai/edgegrid/test/sample_file.txt
|
|
6
8
|
include akamai/edgegrid/test/edgerc_that_doesnt_parse
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: edgegrid-python
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.3
|
|
4
4
|
Summary: {OPEN} client authentication protocol for python-requests
|
|
5
5
|
Home-page: https://github.com/akamai/AkamaiOPEN-edgegrid-python
|
|
6
6
|
License: Apache 2.0
|
|
7
7
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
8
8
|
Classifier: Programming Language :: Python :: 3
|
|
9
|
-
Requires-Python: >=3.
|
|
9
|
+
Requires-Python: >=3.10
|
|
10
10
|
Description-Content-Type: text/markdown
|
|
11
11
|
License-File: LICENSE
|
|
12
12
|
Requires-Dist: requests>=2.24.0
|
|
@@ -32,7 +32,7 @@ This library implements an Authentication handler for [HTTP requests](https://re
|
|
|
32
32
|
|
|
33
33
|
## Install
|
|
34
34
|
|
|
35
|
-
To use the library, you need to have Python 3.
|
|
35
|
+
To use the library, you need to have Python 3.10 or later installed on your system. You can download it from [https://www.python.org/downloads/](https://www.python.org/downloads/).
|
|
36
36
|
|
|
37
37
|
> __NOTE:__ Python 2 is no longer supported by the [Python Software Foundation](https://www.python.org/doc/sunset-python-2/). You won't be able to use the library with Python 2.
|
|
38
38
|
|
|
@@ -4,7 +4,7 @@ This library implements an Authentication handler for [HTTP requests](https://re
|
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
7
|
-
To use the library, you need to have Python 3.
|
|
7
|
+
To use the library, you need to have Python 3.10 or later installed on your system. You can download it from [https://www.python.org/downloads/](https://www.python.org/downloads/).
|
|
8
8
|
|
|
9
9
|
> __NOTE:__ Python 2 is no longer supported by the [Python Software Foundation](https://www.python.org/doc/sunset-python-2/). You won't be able to use the library with Python 2.
|
|
10
10
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
this is a sample file.
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"testName": "simple GET",
|
|
4
|
+
"request": {
|
|
5
|
+
"method": "GET",
|
|
6
|
+
"path": "/",
|
|
7
|
+
"headers": [
|
|
8
|
+
{
|
|
9
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=tL+y4hxyHxgWVD30X3pWnGKHcPzmrIF+LThiAOhMxYU=",
|
|
14
|
+
"expectedDataToSign": "GET\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/\t\t\t"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"testName": "GET with querystring",
|
|
18
|
+
"request": {
|
|
19
|
+
"method": "GET",
|
|
20
|
+
"path": "/testapi/v1/t1?p1=1&p2=2",
|
|
21
|
+
"headers": [
|
|
22
|
+
{
|
|
23
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
24
|
+
}
|
|
25
|
+
]
|
|
26
|
+
},
|
|
27
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=hKDH1UlnQySSHjvIcZpDMbQHihTQ0XyVAKZaApabdeA=",
|
|
28
|
+
"expectedDataToSign": "GET\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t1?p1=1&p2=2\t\t\t"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"testName": "POST inside limit",
|
|
32
|
+
"request": {
|
|
33
|
+
"method": "POST",
|
|
34
|
+
"path": "/testapi/v1/t3",
|
|
35
|
+
"data": "datadatadatadatadatadatadatadata",
|
|
36
|
+
"headers": [
|
|
37
|
+
{
|
|
38
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=hXm4iCxtpN22m4cbZb4lVLW5rhX8Ca82vCFqXzSTPe4=",
|
|
43
|
+
"expectedDataToSign": "POST\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t3\t\tfDimoYqXOLntG3If/Z0K2aS9I19Pkv9P5OMCoL8lY0w=\t"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"testName": "POST too large",
|
|
47
|
+
"request": {
|
|
48
|
+
"method": "POST",
|
|
49
|
+
"path": "/testapi/v1/t3",
|
|
50
|
+
"data": "ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
51
|
+
"headers": [
|
|
52
|
+
{
|
|
53
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
},
|
|
57
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=6Q6PiTipLae6n4GsSIDTCJ54bEbHUBp+4MUXrbQCBoY=",
|
|
58
|
+
"expectedDataToSign": "POST\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t3\t\tiysZKJ78BqF0NvDrpv9Hc3pJBWC5f5apR4qUK/Qfo5k=\t"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"testName": "POST length equals max_body",
|
|
62
|
+
"request": {
|
|
63
|
+
"method": "POST",
|
|
64
|
+
"path": "/testapi/v1/t3",
|
|
65
|
+
"data": "dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
66
|
+
"headers": [
|
|
67
|
+
{
|
|
68
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
69
|
+
}
|
|
70
|
+
]
|
|
71
|
+
},
|
|
72
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=6Q6PiTipLae6n4GsSIDTCJ54bEbHUBp+4MUXrbQCBoY=",
|
|
73
|
+
"expectedDataToSign": "POST\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t3\t\tiysZKJ78BqF0NvDrpv9Hc3pJBWC5f5apR4qUK/Qfo5k=\t"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"testName": "POST empty body",
|
|
77
|
+
"request": {
|
|
78
|
+
"method": "POST",
|
|
79
|
+
"path": "/testapi/v1/t6",
|
|
80
|
+
"data": "",
|
|
81
|
+
"headers": [
|
|
82
|
+
{
|
|
83
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
84
|
+
}
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=1gEDxeQGD5GovIkJJGcBaKnZ+VaPtrc4qBUHixjsPCQ=",
|
|
88
|
+
"expectedDataToSign": "POST\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t6\t\t\t"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"testName": "Simple header signing with GET",
|
|
92
|
+
"request": {
|
|
93
|
+
"method": "GET",
|
|
94
|
+
"path": "/testapi/v1/t4",
|
|
95
|
+
"headers": [
|
|
96
|
+
{
|
|
97
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"X-Test1": "test-simple-header"
|
|
101
|
+
}
|
|
102
|
+
]
|
|
103
|
+
},
|
|
104
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=8F9AybcRw+PLxnvT+H0JRkjROrrUgsxJTnRXMzqvcwY=",
|
|
105
|
+
"expectedDataToSign": "GET\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t4\tx-test1:test-simple-header\t\t"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"testName": "Header containing spaces",
|
|
109
|
+
"request": {
|
|
110
|
+
"method": "GET",
|
|
111
|
+
"path": "/testapi/v1/t4",
|
|
112
|
+
"headers": [
|
|
113
|
+
{
|
|
114
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"X-Test1": "\" test-header-with-spaces \""
|
|
118
|
+
}
|
|
119
|
+
]
|
|
120
|
+
},
|
|
121
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=ucq2AbjCNtobHfCTuS38fdkl5UDdWHZhQX46fYR8CqI=",
|
|
122
|
+
"expectedDataToSign": "GET\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t4\tx-test1:\" test-header-with-spaces \"\t\t"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"testName": "Header with leading and interior spaces",
|
|
126
|
+
"request": {
|
|
127
|
+
"method": "GET",
|
|
128
|
+
"path": "/testapi/v1/t4",
|
|
129
|
+
"headers": [
|
|
130
|
+
{
|
|
131
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"X-Test1": " first-thing second-thing"
|
|
135
|
+
}
|
|
136
|
+
]
|
|
137
|
+
},
|
|
138
|
+
"failsWithMessage": "Invalid leading whitespace, reserved character(s), or return character(s) in header value: ' first-thing second-thing'",
|
|
139
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=WtnneL539UadAAOJwnsXvPqT4Kt6z7HMgBEwAFpt3+c="
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"testName": "Headers out of order",
|
|
143
|
+
"request": {
|
|
144
|
+
"method": "GET",
|
|
145
|
+
"path": "/testapi/v1/t4",
|
|
146
|
+
"headers": [
|
|
147
|
+
{
|
|
148
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"X-Test2": "t2"
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"X-Test1": "t1"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"X-Test3": "t3"
|
|
158
|
+
}
|
|
159
|
+
]
|
|
160
|
+
},
|
|
161
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=Wus73Nx8jOYM+kkBFF2q8D1EATRIMr0WLWwpLBgkBqY=",
|
|
162
|
+
"expectedDataToSign": "GET\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t4\tx-test1:t1\tx-test2:t2\tx-test3:t3\t\t"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"testName": "Extra header",
|
|
166
|
+
"request": {
|
|
167
|
+
"method": "GET",
|
|
168
|
+
"path": "/testapi/v1/t5",
|
|
169
|
+
"headers": [
|
|
170
|
+
{
|
|
171
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
"X-Test2": "t2"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"X-Test1": "t1"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"X-Test3": "t3"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"X-Extra": "this won't be included"
|
|
184
|
+
}
|
|
185
|
+
]
|
|
186
|
+
},
|
|
187
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=Knd/jc0A5Ghhizjayr0AUUvl2MZjBpS3FDSzvtq4Ixc=",
|
|
188
|
+
"expectedDataToSign": "GET\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t5\tx-test1:t1\tx-test2:t2\tx-test3:t3\t\t"
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"testName": "PUT test",
|
|
192
|
+
"request": {
|
|
193
|
+
"method": "PUT",
|
|
194
|
+
"path": "/testapi/v1/t6",
|
|
195
|
+
"data": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
196
|
+
},
|
|
197
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=GNBWEYSEWOLtu+7dD52da2C39aX/Jchpon3K/AmBqBU=",
|
|
198
|
+
"expectedDataToSign": "PUT\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t6\t\t\t"
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"testName": "PATCH test",
|
|
202
|
+
"request": {
|
|
203
|
+
"method": "PATCH",
|
|
204
|
+
"path": "/testapi/v1/t6",
|
|
205
|
+
"data": "PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP"
|
|
206
|
+
},
|
|
207
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=JIl05ImY1AOnMtmw+9LKgaFA8mnzsEKabbnHmI8LsQ4=",
|
|
208
|
+
"expectedDataToSign": "PATCH\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/t6\t\t\t"
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"testName": "GET with query params",
|
|
212
|
+
"request": {
|
|
213
|
+
"method": "GET",
|
|
214
|
+
"path": "/testapi/v1/configs/111?from=12345&limit=200000",
|
|
215
|
+
"headers": [
|
|
216
|
+
{
|
|
217
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
218
|
+
}
|
|
219
|
+
]
|
|
220
|
+
},
|
|
221
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=XM+hsuSs6nuy/5eDRty1IjtVCAdr8xPFRAZ/b8RXDm8=",
|
|
222
|
+
"expectedDataToSign": "GET\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/configs/111?from=12345&limit=200000\t\t\t"
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
"_comment": "signature must be different here than in 'GET with query params' test",
|
|
226
|
+
"testName": "GET with query params and separator in path",
|
|
227
|
+
"request": {
|
|
228
|
+
"method": "GET",
|
|
229
|
+
"path": "/testapi/v1/configs/111;222;333?from=12345&limit=200000",
|
|
230
|
+
"headers": [
|
|
231
|
+
{
|
|
232
|
+
"Host": "akaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net"
|
|
233
|
+
}
|
|
234
|
+
]
|
|
235
|
+
},
|
|
236
|
+
"expectedAuthorization": "EG1-HMAC-SHA256 client_token=akab-client-token-xxx-xxxxxxxxxxxxxxxx;access_token=akab-access-token-xxx-xxxxxxxxxxxxxxxx;timestamp=20140321T19:34:21+0000;nonce=nonce-xx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;signature=pmQF7Is2+O4r/mMojPR4yeF58BrempNNoBX5/DT0Fxs=",
|
|
237
|
+
"expectedDataToSign": "GET\thttps\takaa-baseurl-xxxxxxxxxxx-xxxxxxxxxxxxx.luna.akamaiapis.net\t/testapi/v1/configs/111;222;333?from=12345&limit=200000\t\t\t"
|
|
238
|
+
}
|
|
239
|
+
]
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: edgegrid-python
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.3
|
|
4
4
|
Summary: {OPEN} client authentication protocol for python-requests
|
|
5
5
|
Home-page: https://github.com/akamai/AkamaiOPEN-edgegrid-python
|
|
6
6
|
License: Apache 2.0
|
|
7
7
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
8
8
|
Classifier: Programming Language :: Python :: 3
|
|
9
|
-
Requires-Python: >=3.
|
|
9
|
+
Requires-Python: >=3.10
|
|
10
10
|
Description-Content-Type: text/markdown
|
|
11
11
|
License-File: LICENSE
|
|
12
12
|
Requires-Dist: requests>=2.24.0
|
|
@@ -32,7 +32,7 @@ This library implements an Authentication handler for [HTTP requests](https://re
|
|
|
32
32
|
|
|
33
33
|
## Install
|
|
34
34
|
|
|
35
|
-
To use the library, you need to have Python 3.
|
|
35
|
+
To use the library, you need to have Python 3.10 or later installed on your system. You can download it from [https://www.python.org/downloads/](https://www.python.org/downloads/).
|
|
36
36
|
|
|
37
37
|
> __NOTE:__ Python 2 is no longer supported by the [Python Software Foundation](https://www.python.org/doc/sunset-python-2/). You won't be able to use the library with Python 2.
|
|
38
38
|
|
|
@@ -11,7 +11,9 @@ akamai/edgegrid/test/__init__.py
|
|
|
11
11
|
akamai/edgegrid/test/conftest.py
|
|
12
12
|
akamai/edgegrid/test/edgerc_that_doesnt_parse
|
|
13
13
|
akamai/edgegrid/test/sample_edgerc
|
|
14
|
+
akamai/edgegrid/test/sample_file.txt
|
|
14
15
|
akamai/edgegrid/test/test_edgegrid.py
|
|
16
|
+
akamai/edgegrid/test/testcases.json
|
|
15
17
|
akamai/edgegrid/test/testdata.json
|
|
16
18
|
edgegrid_python.egg-info/PKG-INFO
|
|
17
19
|
edgegrid_python.egg-info/SOURCES.txt
|
|
@@ -4,17 +4,17 @@
|
|
|
4
4
|
#
|
|
5
5
|
# pip-compile
|
|
6
6
|
#
|
|
7
|
-
certifi==2025.
|
|
7
|
+
certifi==2025.11.12
|
|
8
8
|
# via requests
|
|
9
|
-
charset-normalizer==3.4.
|
|
9
|
+
charset-normalizer==3.4.4
|
|
10
10
|
# via requests
|
|
11
|
-
idna==3.
|
|
11
|
+
idna==3.11
|
|
12
12
|
# via requests
|
|
13
|
-
requests==2.32.
|
|
13
|
+
requests==2.32.5
|
|
14
14
|
# via
|
|
15
15
|
# edgegrid-python (setup.py)
|
|
16
16
|
# requests-toolbelt
|
|
17
17
|
requests-toolbelt==1.0.0
|
|
18
18
|
# via edgegrid-python (setup.py)
|
|
19
|
-
urllib3==2.
|
|
19
|
+
urllib3==2.5.0
|
|
20
20
|
# via requests
|
|
@@ -2,12 +2,12 @@ from setuptools import setup, find_packages
|
|
|
2
2
|
|
|
3
3
|
setup(
|
|
4
4
|
name='edgegrid-python',
|
|
5
|
-
version='2.0.
|
|
5
|
+
version='2.0.3',
|
|
6
6
|
description='{OPEN} client authentication protocol for python-requests',
|
|
7
7
|
url='https://github.com/akamai/AkamaiOPEN-edgegrid-python',
|
|
8
8
|
namespace_packages=['akamai'],
|
|
9
9
|
packages=find_packages(),
|
|
10
|
-
python_requires=">=3.
|
|
10
|
+
python_requires=">=3.10",
|
|
11
11
|
long_description=open("README.md").read(),
|
|
12
12
|
long_description_content_type="text/markdown",
|
|
13
13
|
install_requires=[
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/akamai/edgegrid/test/edgerc_that_doesnt_parse
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/edgegrid_python.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{edgegrid_python-2.0.1 → edgegrid_python-2.0.3}/edgegrid_python.egg-info/namespace_packages.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|