Jose\JWTCreator::sign PHP Method

sign() public method

public sign ( $payload, array $signature_protected_headers, Jose\Object\JWKInterface $signature_key )
$signature_protected_headers array
$signature_key Jose\Object\JWKInterface
    public function sign($payload, array $signature_protected_headers, Object\JWKInterface $signature_key)
    {
        $jws = Factory\JWSFactory::createJWS($payload);
        $jws = $jws->addSignatureInformation($signature_key, $signature_protected_headers);
        $this->signer->sign($jws);
        return $jws->toCompactJSON(0);
    }

Usage Example

 /**
  * @param array $payload
  *
  * @return string
  */
 private function sign(array $payload)
 {
     $payload = array_merge($payload, $this->getAdditionalPayload());
     $headers = $this->getSignatureHeaders();
     $signature_key = $this->signature_jwkset->getKey(0);
     if ($signature_key->has('kid')) {
         $headers['kid'] = $signature_key->get('kid');
     }
     return $this->jwt_creator->sign($payload, $headers, $signature_key);
 }