34 #ifndef GRPC_INTERNAL_CORE_SECURITY_JWT_VERIFIER_H
35 #define GRPC_INTERNAL_CORE_SECURITY_JWT_VERIFIER_H
45 #define GRPC_OPENID_CONFIG_URL_SUFFIX "/.well-known/openid-configuration"
46 #define GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN \
47 "developer.gserviceaccount.com"
48 #define GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX \
49 "www.googleapis.com/robot/v1/metadata/x509"
109 size_t num_mappings);
125 const char *audience,
133 const char *audience);
const char * grpc_jwt_claims_subject(const grpc_jwt_claims *claims)
Definition: jwt_verifier.c:203
void grpc_jwt_verifier_verify(grpc_jwt_verifier *verifier, grpc_pollset *pollset, const char *jwt, const char *audience, grpc_jwt_verification_done_cb cb, void *user_data)
Definition: jwt_verifier.c:754
void(* grpc_jwt_verification_done_cb)(void *user_data, grpc_jwt_verifier_status status, grpc_jwt_claims *claims)
Definition: jwt_verifier.h:118
const char * grpc_jwt_verifier_status_to_string(grpc_jwt_verifier_status status)
Definition: jwt_verifier.c:49
grpc_jwt_verifier_status
Definition: jwt_verifier.h:53
const char * grpc_jwt_claims_audience(const grpc_jwt_claims *claims)
Definition: jwt_verifier.c:218
Definition: jwt_verifier.c:375
Definition: jwt_verifier.h:54
gpr_timespec grpc_jwt_claims_issued_at(const grpc_jwt_claims *claims)
Definition: jwt_verifier.c:223
Definition: jwt_verifier.h:58
void grpc_jwt_verifier_destroy(grpc_jwt_verifier *verifier)
Definition: jwt_verifier.c:823
Definition: pollset_posix.h:55
grpc_jwt_verifier_status grpc_jwt_claims_check(const grpc_jwt_claims *claims, const char *audience)
Definition: jwt_verifier.c:284
Definition: jwt_verifier.h:55
grpc_jwt_claims * grpc_jwt_claims_from_json(grpc_json *json, gpr_slice buffer)
Definition: jwt_verifier.c:239
const char * grpc_jwt_claims_id(const grpc_jwt_claims *claims)
Definition: jwt_verifier.c:213
Definition: jwt_verifier.h:60
Definition: jwt_verifier.c:178
Definition: jwt_verifier.h:59
void grpc_jwt_claims_destroy(grpc_jwt_claims *claims)
Definition: jwt_verifier.c:192
gpr_timespec grpc_jwt_verifier_clock_skew
Definition: jwt_verifier.c:365
Definition: jwt_verifier.h:56
const char * email_domain
Definition: jwt_verifier.h:89
gpr_timespec grpc_jwt_claims_not_before(const grpc_jwt_claims *claims)
Definition: jwt_verifier.c:233
Definition: jwt_verifier.h:57
const grpc_json * grpc_jwt_claims_json(const grpc_jwt_claims *claims)
Definition: jwt_verifier.c:198
const char * grpc_jwt_claims_issuer(const grpc_jwt_claims *claims)
Definition: jwt_verifier.c:208
Definition: jwt_verifier.h:87
const char * key_url_prefix
Definition: jwt_verifier.h:94
grpc_jwt_verifier * grpc_jwt_verifier_create(const grpc_jwt_verifier_email_domain_key_url_mapping *mappings, size_t num_mappings)
Definition: jwt_verifier.c:800
gpr_timespec grpc_jwt_verifier_max_delay
Definition: jwt_verifier.c:368
gpr_timespec grpc_jwt_claims_expires_at(const grpc_jwt_claims *claims)
Definition: jwt_verifier.c:228