1load("@rules_python//python:defs.bzl", "py_library", "py_test") 2load("@tink_py_pip_deps//:requirements.bzl", "requirement") 3 4package(default_visibility = ["//:__subpackages__"]) 5 6licenses(["notice"]) 7 8py_library( 9 name = "jwt", 10 srcs = ["__init__.py"], 11 srcs_version = "PY3", 12 visibility = ["//visibility:public"], 13 deps = [ 14 ":_jwk_set_converter", 15 ":_jwt_error", 16 ":_jwt_hmac_key_manager", 17 ":_jwt_key_templates", 18 ":_jwt_mac", 19 ":_jwt_mac_wrapper", 20 ":_jwt_public_key_sign", 21 ":_jwt_public_key_verify", 22 ":_jwt_signature_key_manager", 23 ":_jwt_signature_wrappers", 24 ":_jwt_validator", 25 ":_raw_jwt", 26 ":_verified_jwt", 27 ], 28) 29 30py_library( 31 name = "_raw_jwt", 32 srcs = ["_raw_jwt.py"], 33 srcs_version = "PY3", 34 deps = [ 35 ":_json_util", 36 ":_jwt_error", 37 ], 38) 39 40py_test( 41 name = "_raw_jwt_test", 42 srcs = ["_raw_jwt_test.py"], 43 srcs_version = "PY3", 44 deps = [ 45 ":jwt", 46 requirement("absl-py"), 47 ], 48) 49 50py_library( 51 name = "_verified_jwt", 52 srcs = ["_verified_jwt.py"], 53 srcs_version = "PY3", 54 deps = [ 55 ":_raw_jwt", 56 "//tink/core", 57 ], 58) 59 60py_test( 61 name = "_verified_jwt_test", 62 srcs = ["_verified_jwt_test.py"], 63 srcs_version = "PY3", 64 deps = [ 65 ":jwt", 66 requirement("absl-py"), 67 ], 68) 69 70py_library( 71 name = "_jwt_validator", 72 srcs = ["_jwt_validator.py"], 73 srcs_version = "PY3", 74 deps = [ 75 ":_jwt_error", 76 ":_raw_jwt", 77 ], 78) 79 80py_test( 81 name = "_jwt_validator_test", 82 srcs = ["_jwt_validator_test.py"], 83 srcs_version = "PY3", 84 deps = [ 85 ":_jwt_validator", 86 ":jwt", 87 requirement("absl-py"), 88 ], 89) 90 91py_library( 92 name = "_jwt_key_templates", 93 srcs = ["_jwt_key_templates.py"], 94 srcs_version = "PY3", 95 deps = [ 96 "//tink:tink_python", 97 "//tink/internal:big_integer_util", 98 "//tink/proto:jwt_ecdsa_py_pb2", 99 "//tink/proto:jwt_hmac_py_pb2", 100 "//tink/proto:jwt_rsa_ssa_pkcs1_py_pb2", 101 "//tink/proto:jwt_rsa_ssa_pss_py_pb2", 102 "//tink/proto:tink_py_pb2", 103 ], 104) 105 106py_test( 107 name = "_jwt_key_templates_test", 108 srcs = ["_jwt_key_templates_test.py"], 109 srcs_version = "PY3", 110 deps = [ 111 ":jwt", 112 requirement("absl-py"), 113 ], 114) 115 116py_library( 117 name = "_jwt_error", 118 srcs = ["_jwt_error.py"], 119 srcs_version = "PY3", 120 deps = [ 121 "//tink/core", 122 ], 123) 124 125py_library( 126 name = "_json_util", 127 srcs = ["_json_util.py"], 128 srcs_version = "PY3", 129 deps = [":_jwt_error"], 130) 131 132py_test( 133 name = "_json_util_test", 134 srcs = ["_json_util_test.py"], 135 python_version = "PY3", 136 deps = [ 137 ":_json_util", 138 ":_jwt_error", 139 requirement("absl-py"), 140 ], 141) 142 143py_library( 144 name = "_jwt_format", 145 srcs = ["_jwt_format.py"], 146 srcs_version = "PY3", 147 deps = [ 148 ":_json_util", 149 ":_jwt_error", 150 ":_raw_jwt", 151 "//tink/proto:tink_py_pb2", 152 ], 153) 154 155py_test( 156 name = "_jwt_format_test", 157 srcs = ["_jwt_format_test.py"], 158 python_version = "PY3", 159 deps = [ 160 ":_json_util", 161 ":_jwt_error", 162 ":_jwt_format", 163 ":_raw_jwt", 164 "//tink/proto:tink_py_pb2", 165 requirement("absl-py"), 166 ], 167) 168 169py_library( 170 name = "_jwt_mac", 171 srcs = ["_jwt_mac.py"], 172 srcs_version = "PY3", 173 deps = [ 174 ":_jwt_validator", 175 ":_raw_jwt", 176 ":_verified_jwt", 177 ], 178) 179 180py_library( 181 name = "_jwt_public_key_sign", 182 srcs = ["_jwt_public_key_sign.py"], 183 srcs_version = "PY3", 184 deps = [":_raw_jwt"], 185) 186 187py_library( 188 name = "_jwt_public_key_verify", 189 srcs = ["_jwt_public_key_verify.py"], 190 srcs_version = "PY3", 191 deps = [ 192 ":_jwt_validator", 193 ":_verified_jwt", 194 ], 195) 196 197py_library( 198 name = "_jwt_hmac_key_manager", 199 srcs = ["_jwt_hmac_key_manager.py"], 200 srcs_version = "PY3", 201 deps = [ 202 ":_json_util", 203 ":_jwt_error", 204 ":_jwt_format", 205 ":_jwt_mac", 206 ":_jwt_validator", 207 ":_raw_jwt", 208 ":_verified_jwt", 209 "//tink/cc/pybind:tink_bindings", 210 "//tink/core", 211 "//tink/proto:common_py_pb2", 212 "//tink/proto:jwt_hmac_py_pb2", 213 "//tink/proto:tink_py_pb2", 214 ], 215) 216 217py_test( 218 name = "_jwt_hmac_key_manager_test", 219 srcs = ["_jwt_hmac_key_manager_test.py"], 220 python_version = "PY3", 221 deps = [ 222 ":_jwt_format", 223 ":_jwt_hmac_key_manager", 224 ":_jwt_mac", 225 ":jwt", 226 requirement("absl-py"), 227 "//tink:tink_python", 228 "//tink/proto:jwt_hmac_py_pb2", 229 ], 230) 231 232py_library( 233 name = "_jwt_mac_wrapper", 234 srcs = ["_jwt_mac_wrapper.py"], 235 srcs_version = "PY3", 236 deps = [ 237 ":_jwt_error", 238 ":_jwt_format", 239 ":_jwt_mac", 240 ":_jwt_validator", 241 ":_raw_jwt", 242 ":_verified_jwt", 243 "//tink/core", 244 "//tink/proto:tink_py_pb2", 245 ], 246) 247 248py_test( 249 name = "_jwt_mac_wrapper_test", 250 srcs = ["_jwt_mac_wrapper_test.py"], 251 python_version = "PY3", 252 deps = [ 253 ":_json_util", 254 ":_jwt_format", 255 ":jwt", 256 "//tink/proto:jwt_hmac_py_pb2", 257 "//tink/proto:tink_py_pb2", 258 requirement("absl-py"), 259 "//tink:cleartext_keyset_handle", 260 "//tink:tink_python", 261 "//tink/testing:keyset_builder", 262 ], 263) 264 265py_library( 266 name = "_jwt_signature_key_manager", 267 srcs = ["_jwt_signature_key_manager.py"], 268 srcs_version = "PY3", 269 deps = [ 270 ":_json_util", 271 ":_jwt_error", 272 ":_jwt_format", 273 ":_jwt_public_key_sign", 274 ":_jwt_public_key_verify", 275 ":_jwt_validator", 276 ":_raw_jwt", 277 ":_verified_jwt", 278 "//tink/cc/pybind:tink_bindings", 279 "//tink/core", 280 "//tink/proto:jwt_ecdsa_py_pb2", 281 "//tink/proto:tink_py_pb2", 282 ], 283) 284 285py_test( 286 name = "_jwt_signature_key_manager_test", 287 srcs = ["_jwt_signature_key_manager_test.py"], 288 deps = [ 289 ":_jwt_format", 290 ":_jwt_signature_key_manager", 291 ":_jwt_signature_wrappers", 292 ":jwt", 293 "//tink/proto:jwt_ecdsa_py_pb2", 294 "//tink/proto:tink_py_pb2", 295 requirement("absl-py"), 296 "//tink:tink_python", 297 ], 298) 299 300py_library( 301 name = "_jwt_signature_wrappers", 302 srcs = ["_jwt_signature_wrappers.py"], 303 srcs_version = "PY3", 304 deps = [ 305 ":_jwt_error", 306 ":_jwt_format", 307 ":_jwt_public_key_sign", 308 ":_jwt_public_key_verify", 309 ":_jwt_validator", 310 ":_raw_jwt", 311 ":_verified_jwt", 312 "//tink/core", 313 "//tink/proto:tink_py_pb2", 314 ], 315) 316 317py_test( 318 name = "_jwt_signature_wrappers_test", 319 srcs = ["_jwt_signature_wrappers_test.py"], 320 python_version = "PY3", 321 srcs_version = "PY3", 322 deps = [ 323 ":_json_util", 324 ":_jwt_format", 325 ":jwt", 326 "//tink/proto:jwt_ecdsa_py_pb2", 327 "//tink/proto:jwt_rsa_ssa_pkcs1_py_pb2", 328 "//tink/proto:jwt_rsa_ssa_pss_py_pb2", 329 "//tink/proto:tink_py_pb2", 330 requirement("absl-py"), 331 "//tink:cleartext_keyset_handle", 332 "//tink:tink_python", 333 "//tink/testing:keyset_builder", 334 ], 335) 336 337py_library( 338 name = "_jwk_set_converter", 339 srcs = ["_jwk_set_converter.py"], 340 srcs_version = "PY3", 341 deps = [ 342 "//tink:cleartext_keyset_handle", 343 "//tink:tink_python", 344 "//tink/proto:jwt_ecdsa_py_pb2", 345 "//tink/proto:jwt_rsa_ssa_pkcs1_py_pb2", 346 "//tink/proto:jwt_rsa_ssa_pss_py_pb2", 347 "//tink/proto:tink_py_pb2", 348 ], 349) 350 351py_test( 352 name = "_jwk_set_converter_test", 353 srcs = ["_jwk_set_converter_test.py"], 354 python_version = "PY3", 355 srcs_version = "PY3", 356 deps = [ 357 ":jwt", 358 requirement("absl-py"), 359 "//tink:cleartext_keyset_handle", 360 "//tink:tink_python", 361 ], 362) 363