@azure/web-pubsub
Version:
Azure client library for Azure Web PubSub
27 lines • 922 B
JavaScript
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
import jwt from "jsonwebtoken";
/**
* The programmatic identifier of the webPubSubKeyCredentialPolicy.
*/
export const webPubSubKeyCredentialPolicyName = "webPubSubKeyCredentialPolicy";
/**
* Create an HTTP pipeline policy to authenticate a request
* using an `AzureKeyCredential` for Text Analytics
* @internal
*/
export function webPubSubKeyCredentialPolicy(credential) {
return {
name: webPubSubKeyCredentialPolicyName,
sendRequest(request, next) {
const bearerToken = jwt.sign({}, credential.key, {
audience: request.url,
expiresIn: "1h",
algorithm: "HS256",
});
request.headers.set("Authorization", `Bearer ${bearerToken}`);
return next(request);
},
};
}
//# sourceMappingURL=webPubSubCredentialPolicy.js.map