ivangeorgiev / az-jwt Goto Github PK
View Code? Open in Web Editor NEWTools for Azure AD JWT tokens
License: MIT License
Tools for Azure AD JWT tokens
License: MIT License
Client code needs that calls to Azure AD are cached so that bandwidth is preserved is latency is smaller.
There is no need that each time keys or metadata configuration is needed, we retrieve them from Azure AD. Changes to Azure AD tenant metadata are so rear that we could pre-fetch the metadata and use it offline.
There are scenarios where the application cannot access Internet (Azure AD) directly, but still needs to be able to validate provided tokens.
In common cases metadata configuration endpoint could be constructed using a template. The URL could be used to retrieve metadata configuration of Azure AD tenant.
There are multiple scenarios (I might not be aware of all of them). For that reason the endpoint construction is not part of Azure AD metadata discovery (OpenIdDiscovery class), but is rather a parameter.
Given OpenId metadata URL, retrieve the metadata so that it could be used for validation purposes.
Necessary in order to get a particular key and validate a signature, e.g. JWT signature.
Client code is able to create metadata discovery instance with tenant id, so that there is no need to first construct the metadata configuration url
JWT tokens specify in the header the identifier of the key (kid
) used to sign the payload. I want to be able to get the key easily, e.g. via a single method call.
Django is not even part of this project.
Instead of client code having to call conversion, we could return converted key.
Authenticate in Django using Azure AD JWT token
RSA PEM is a common format used to validate signatures. It is used, for example, by pyJWT
package. Client code need an easy way to convert JWK keys, provided by Azure AD tenant metadata to RSA PEM keys.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.