jwt-generate
Use a política de segurança Gerar JWT em IBM® API Connect para gerar um JSON Web Token (JWT).
Suporte de gateway
| Gateway | Versão da política |
|---|---|
| DataPower® Gateway (v5 compatible) | 1.0.0 |
| DataPower API Gateway | 2.1.0 |
Este tópico descreve como configurar a política em sua origem OpenAPI ; para obter detalhes sobre como configurar a política na interface com o usuário do conjunto, consulte Gerar JWT.
Nota:
- Para tipos de algoritmo HS256, HS384 e HS512, os objetos criptográficos referenciados devem ser um Chave secreta compartilhada.
- Para os tipos de algoritmo RS256, RS384, RS512, ES256, ES384, ES512, PS256, PS384, PS512 os objetos criptográficos referenciados devem ser uma Chave de criptografia (chave privada).
- O material criptográfico pode ser fornecido por meio de um JSON Web Key (JWK).
- Se um objeto criptográfico e um JWK forem ambos especificados, o objeto criptográfico será usado para assinar o JWT.
Sobre
A política jwt-generate tem a seguinte estrutura:
- jwt-generate:
version: version
title: title
description: description
jwt: json_web_token
jti-claim: jwt_id_claim
iss-claim: issuer_claim
exp-claim: validity_period
sub-claim: subject_claim
aud-claim: audience_claim
jws-jwk: sign_jwk_variable_name
jws-alg: cryptographic_algorithm
jws-crypto: sign_crypto_object
custom-kid-value-jws: jws.kid
jwe-enc: encryption_algorithm
jwe-jwk: encrypt_jwk_variable_name
jwe-alg: key_encryption_algorithm
jwe-crypto: encrypt_crypto_object
custom-kid-value-jwe: jwe.kidPropriedades
A tabela a seguir descreve as propriedades de política:| Propriedade | Necessário | Descrição | Tipo de dados |
|---|---|---|---|
| version | True | O número de versão da política | sequência |
| title | Não | O título da política. | sequência |
| description | Não | Uma descrição da política. | sequência |
| jwt | Não | A variável de tempo de execução na qual colocar o JWT que é gerado. O valor padrão é: |
sequência |
| jti-claim | Não | Indica se uma solicitação de JWT ID (jti) deve ser incluída no JWT. Se selecionada, a propriedade será configurada como |
booleano |
| iss-claim | True | Variável de tempo de execução a partir da qual a sequência de solicitação do emissor (iss) pode ser recuperada. Esta solicitação representa o diretor que emitiu o JWT. O valor padrão é: |
sequência |
| sub-claim | Não | Variável de tempo de execução a partir da qual a sequência de solicitação do assunto (sub) pode ser recuperada. | sequência |
| aud-claim | Não | Variável de tempo de execução a partir da qual a sequência de solicitação do público (aud) pode ser recuperada. Variáveis múltiplas são configuradas usando uma sequência separada por vírgula. | sequência |
| exp-claim | True | A duração (em segundos) que é incluída na data e hora atuais em que o JWT é considerado válido. O valor padrão é |
número inteiro |
| private-claims | Não | Variável de tempo de execução a partir da qual um conjunto válido de solicitações JSON pode ser recuperado. Essas solicitações são incluídas em qualquer conjunto de solicitações especificado anteriormente. | sequência |
| jws-jwk | Não | A variável de tempo de execução que contém o JWK usado para assinar o JWT. Um JWK e um objeto criptográfico são maneiras válidas de fornecer os dados criptográficos necessários para assinar o JWT. Entretanto, se ambos os tipos de dados forem especificados, somente o Objeto criptográfico será usado. | sequência |
| jws-alg | Não | O algoritmo criptográfico a ser usado. Os valores válidos são:
|
sequência |
| jws-crypto | Não | O objeto criptográfico a ser usado para assinar o JWT. Um JWK e um objeto criptográfico são maneiras válidas de fornecer os dados criptográficos necessários para assinar o JWT. Entretanto, se ambos os tipos de dados forem especificados, somente o Objeto criptográfico será usado. | sequência |
| custom-kid-value-jws | Não | O valor kid customizado para assinatura JWT. |
sequência |
| jwe-enc | Não | O algoritmo de criptografia a ser usado. Os valores válidos são:
|
sequência |
| jwe-jwk | Não | A variável de tempo de execução que contém o JWK a ser usado para criptografar o JWT. | sequência |
| jwe-alg | Não | O algoritmo de criptografia de chave a ser usado. Os valores válidos são:
|
sequência |
| jwe-crypto | Não | O objeto criptográfico a ser usado para criptografar a solicitação. | sequência |
| custom-kid-value-jwe | Não | O valor kid customizado para a criptografia JWT. |
sequência |
Exemplo
A seguir há um exemplo de uma política jwt-generate :
- jwt-generate:
version: 2.1.0
title: jwt-generate
description: New jwt-generate v2.1.0 policy.
jwt: generated.jwt
jti-claim: true
iss-claim: iss.claim
sub-claim: sub.claim
aud-claim: aud.claim
exp-claim: 3600
private-claims: private.claims
jws-jwk: jws.jwk
jws-alg: HS256
jws-crypto: jwsCryptoObjectName
custom-kid-value-jws: jws.kid
jwe-enc: A128CBC-HS256
jwe-jwk: jwe.jwk
jwe-alg: RSA1_5
jwe-crypto: jweCryptoObjectName
custom-kid-value-jwe: jwe.kidPara obter mais informações sobre como usar uma política de segurança do jwt-generate , consulte Gerar JWT na seção de políticas integradas