DevTeach Montreal 2017 Talk on OAuth and OpenId Connect, how the technology works the communication channels used and the different kind of grants in OAuth and how OpenId Connect plays in the entire ecosystem
An introduction to Microsoft Bot FrameworkTaswar Bhatti
Talk given in #Ottawa Meetup Group https://www.meetup.com/ottawaitcommunity/events/235920172/
Want to learn what bots and Microsoft Bot Framework can offer? The Microsoft Bot Framework provides just what you need to build and connect intelligent bots that interact naturally wherever your users are talking, from text/sms to Skype, Slack, Office 365 mail and other popular services.In this session we will go over building a Bot using the SDK and Bot Connector
Building intelligent chat bot with microsoft bot frameworkRukshan Dangalla
The Bot Framework enables you to build bots that support different types of interactions with users. You can design conversations in your bot to be freeform. Your bot can also have more guided interactions where it provides the user choices or actions. The conversation can use simple text strings or more complex rich cards that contain text, images, and action buttons. And you can add natural language interactions, which let your users interact with your bots in a natural and expressive way.
Introduction to Microsoft Bot FrameworkSam Fernando
This presentation was carried out at the Adelaide Dot Net User Group in October 2017 about the Bot Framework. The presentation covered all aspects of the bot framework including demos and capabilities while touching up the advanced capabilities like LUIS, Cortana and Azure Bot Service.
The document discusses the Microsoft Bot Framework, which provides tools for building and connecting intelligent bots that interact with users across various services. It describes bots and chatbots, then explains that the Bot Framework allows bots to be built that can interact through text, SMS, Skype, Slack, Office 365 mail and other popular services. It also outlines the development process for building bots using the Bot Framework, including registering bots, using dialogs and state, and integrating LUIS for natural language understanding. Resources for further learning about the Bot Framework are also listed.
This document provides an overview of Azure Bot Services and the Microsoft Bot Framework. It discusses the key components including the Connector service, activities, messages, intents/prompts, state management, dialogs, attachments/cards/actions, and supported channels. It also mentions tools like the Channel Inspector, Bot Framework Emulator, and Microsoft QnA Maker. The document demonstrates how Azure Bot Services can be used to create and manage bots directly in the browser without a local editor.
Build intelligent chatbot with bot frameworkPuja Pramudya
A Chatbot 101 Explanation from developer perspective.
We explain about human nature of communication bring chatbot into the play, what to expect and how to build chatbot using ASPNET, Azure Bot Service and App Service.
Developing intelligent bots from the beginningSuthahar J
This document provides an overview of developing intelligent bots using the Microsoft Bot Framework. It introduces the Bot Framework and describes how to design, develop, test, and deploy bots using the Bot Builder SDK and Azure Bot Service. The target audience is developers who are new to bot development. The document explains what bots are and are not, the pillars of the Bot Framework like the bot connector and channels, and how to get started building a first bot using the provided resources and prerequisites.
DDD12 - Introduction to Microsoft Bot FrameworkJames Mann
This deck accompanies the talk I did at DDD 12 16/6/17.
It introduces the what and why of chatbots, then goes on to introduce Microsoft Bot Framework, covering the tools and techniques you can use to build up conversations.
The document discusses Azure Chatbots and provides an overview of:
- The Azure Bot Framework platform for building intelligent chatbots
- How chatbots can integrate with Cognitive Services and external APIs
- The development process including using SDKs for .NET or Node.js, state management, dialogs, and form flows
- Deploying a bot app to the Azure App Service
Bots are all the rage these days. But if you need one that's capable of understanding your users' natural language, so it can figure out what they WANT and not just what they say, then you're going to need some pretty strong AI behind it. Come to this session to find out how you can use Node.js and Microsoft Bot Framework together with Language Understanding Intelligent Service (luis.ai) to build an intelligent bot for Skype, Slack, Facebook, SMS and more.
Artificial Intelligent: Intelligent Bot With Microsoft Bot Framework & AzureMarvin Heng
With Microsoft's Botframework - Create a simple chatbot or AI bot that can help your website to serve customers intelligently. By following this tutorial, you should learn how to create a simple bot using Bot Framework.
Read more @ www.techconnect.io/
by Marvin, Heng
Twitter: @hmheng
Blog: www.techconnect.io
Difference between authentication and authorization in asp.netUmar Ali
Authentication verifies a user's identity by having them log in, while authorization determines which resources and pages the authenticated user has access to. For example, after authenticating normal and admin users on a website, authorization would prevent normal users from accessing admin pages. Authentication occurs before authorization and verifies the user, even if anonymously, while authorization checks the user's access rights after identity is confirmed.
This document provides an overview and introduction to widgets in Kentico CMS. It begins with an agenda that includes a widget overview and developing widgets. It then defines what a widget is, noting they are similar to web parts and provide page personalization. The document demonstrates widgets in action and explains that widgets in Kentico CMS are based on existing web parts, so development always starts with a web part. It concludes with information on upcoming technical learning activities and contact information for the presenter.
Authentication and Authorization in Asp.NetShivanand Arur
This presentation gives a little information about Why Security is important, then moving towards understanding about Authentication and Authorization and its various ways
1. Forms Authentication
2. Windows Authentication
3. Passport Authentication
This document provides an overview of membership and user roles in ASP.NET. It discusses authentication and authorization, and how membership providers and role providers allow ASP.NET applications to manage user accounts and roles. Membership providers like SQLMembershipProvider abstract the data source for user accounts. Role providers similarly manage user roles and role-based authorization. The document provides code samples for configuring these providers in ASP.NET applications.
virtual-2021-data.sql_.saturday.la-Building database interactions with users ...Luis Beltran
Slides for my presentation at Data SQL Saturday 2021 about building user interactions with chatbots consuming information from a database and sending messages to Microsoft Teams
This document discusses two-factor authentication (2fa) methods for securing accounts, including interactive methods like SMS codes and token codes, as well as non-interactive methods like mobile app pushes and phone call confirmations. It provides information on implementing 2fa for various systems like *nix, Windows, databases, web apps, and more. The document also covers topics like common use cases, authentication tokens, and questions about securing accounts with 2fa.
Silverlight enables creating desktop applications that run outside the browser with access to local files and systems. Developing an out-of-browser Silverlight application involves setting configuration to allow installation, running the application like a desktop program offline or with intermittent connectivity, and signing the application as trusted to access things like the file system. These applications provide the richness of Silverlight in a desktop context without browser restrictions.
This document discusses building an application using Microsoft Identity Platform (formerly known as Azure Active Directory):
- Microsoft Identity Platform allows building applications with a single sign-on experience and securely accessing data from any API using tokens.
- The document outlines how to authenticate users via the implicit flow in MSAL, get tokens to call web APIs, and best practices for handling permissions and consent in an incremental way.
- It encourages developers to leverage the Office 365 developer program resources to build applications that integrate with Microsoft cloud services using single sign-on for a seamless user experience.
Mozilla Persona is a login system that allows users to sign in to websites using their email address, eliminating the need for separate usernames and passwords for each site. It provides a more private sign-in experience for users and is easy for developers to implement. The system relies on a federated protocol and identity providers to issue certificates to users, allowing them to prove ownership of their email address during the sign-in process.
Mozilla Persona is an open source login system that allows users to sign in to websites using their email address instead of separate usernames and passwords for each site. It provides a decentralized single sign-on solution where users get a certificate from their email provider to authenticate, eliminating the need for separate passwords. The presentation provided an overview of Persona for users, developers, and identity providers and demonstrated how to implement Persona through its JavaScript library and API.
The document discusses the Microsoft Bot Framework and how it can benefit businesses, end users, and developers. It provides an overview of what chatbots are and the key components of the Bot Framework, including the Bot Connector service. It then gives an example of using the Bot Framework to build a bot that allows users to access past webinars, see upcoming webinars, and register for webinars with Dear Azure.
DIGIT Noe 2016 - Overview of front end development todayBojan Veljanovski
This document provides an overview of front-end development approaches, including traditional server-side rendering and modern single-page applications (SPAs). It discusses the evolution from traditional to SPA approaches, characteristics of SPAs like modularity and client-side rendering, and considerations for choosing between server-side and client-side solutions. The document also showcases GitHub.com and the Azure Portal as examples of applications that take hybrid approaches, with some modules behaving as traditional sites and others as fully-fledged SPAs.
The document discusses OAuth 2.0 and how it addresses issues with traditional approaches to authorizing third party access to user accounts and resources. It provides an overview of OAuth 2.0 concepts like authorization grants, access tokens, refresh tokens, and the roles of the client, resource owner, authorization server and resource server. It then describes the authorization code grant flow and client credentials flow in more detail through examples. The goal is to explain how OAuth 2.0 works and how it can be used to securely authorize access to resources while avoiding the risks of directly sharing user credentials.
1. Intro - Auth - Authentication & Authorization & SSO
2. OAuth2 in Depth
3. Where does JWT fit in ?
4. How to do stateless Authorization using OAUTH2 & JWT ?
5. Some Sample Code ? How easy is it to implement ?
OAuth 2 is an authorization framework that allows applications to access user data and perform actions on their behalf. It defines flows for applications to request access, and provides short-lived credentials in response. The main roles in OAuth are the resource owner (user), client (application), resource server (API), and authorization server (issues tokens). Common grant types include authorization code, implicit, and client credentials flows. Tokens returned include access and refresh tokens, and OpenID Connect adds optional ID tokens containing user information.
The document discusses OAuth 2.0 and JSON Web Tokens (JWT). It defines OAuth 2.0 as the industry standard framework for authorization that enables third party applications to obtain limited access to HTTP services. It describes the common roles in OAuth 2.0 including the resource owner, resource server, client, and authorization server. It also explains the different token types used in OAuth like access tokens and refresh tokens. Finally, it provides an overview of JSON Web Tokens, defining them as a way to securely transmit information between parties as a JSON object using digital signatures.
Developing intelligent bots from the beginningSuthahar J
This document provides an overview of developing intelligent bots using the Microsoft Bot Framework. It introduces the Bot Framework and describes how to design, develop, test, and deploy bots using the Bot Builder SDK and Azure Bot Service. The target audience is developers who are new to bot development. The document explains what bots are and are not, the pillars of the Bot Framework like the bot connector and channels, and how to get started building a first bot using the provided resources and prerequisites.
DDD12 - Introduction to Microsoft Bot FrameworkJames Mann
This deck accompanies the talk I did at DDD 12 16/6/17.
It introduces the what and why of chatbots, then goes on to introduce Microsoft Bot Framework, covering the tools and techniques you can use to build up conversations.
The document discusses Azure Chatbots and provides an overview of:
- The Azure Bot Framework platform for building intelligent chatbots
- How chatbots can integrate with Cognitive Services and external APIs
- The development process including using SDKs for .NET or Node.js, state management, dialogs, and form flows
- Deploying a bot app to the Azure App Service
Bots are all the rage these days. But if you need one that's capable of understanding your users' natural language, so it can figure out what they WANT and not just what they say, then you're going to need some pretty strong AI behind it. Come to this session to find out how you can use Node.js and Microsoft Bot Framework together with Language Understanding Intelligent Service (luis.ai) to build an intelligent bot for Skype, Slack, Facebook, SMS and more.
Artificial Intelligent: Intelligent Bot With Microsoft Bot Framework & AzureMarvin Heng
With Microsoft's Botframework - Create a simple chatbot or AI bot that can help your website to serve customers intelligently. By following this tutorial, you should learn how to create a simple bot using Bot Framework.
Read more @ www.techconnect.io/
by Marvin, Heng
Twitter: @hmheng
Blog: www.techconnect.io
Difference between authentication and authorization in asp.netUmar Ali
Authentication verifies a user's identity by having them log in, while authorization determines which resources and pages the authenticated user has access to. For example, after authenticating normal and admin users on a website, authorization would prevent normal users from accessing admin pages. Authentication occurs before authorization and verifies the user, even if anonymously, while authorization checks the user's access rights after identity is confirmed.
This document provides an overview and introduction to widgets in Kentico CMS. It begins with an agenda that includes a widget overview and developing widgets. It then defines what a widget is, noting they are similar to web parts and provide page personalization. The document demonstrates widgets in action and explains that widgets in Kentico CMS are based on existing web parts, so development always starts with a web part. It concludes with information on upcoming technical learning activities and contact information for the presenter.
Authentication and Authorization in Asp.NetShivanand Arur
This presentation gives a little information about Why Security is important, then moving towards understanding about Authentication and Authorization and its various ways
1. Forms Authentication
2. Windows Authentication
3. Passport Authentication
This document provides an overview of membership and user roles in ASP.NET. It discusses authentication and authorization, and how membership providers and role providers allow ASP.NET applications to manage user accounts and roles. Membership providers like SQLMembershipProvider abstract the data source for user accounts. Role providers similarly manage user roles and role-based authorization. The document provides code samples for configuring these providers in ASP.NET applications.
virtual-2021-data.sql_.saturday.la-Building database interactions with users ...Luis Beltran
Slides for my presentation at Data SQL Saturday 2021 about building user interactions with chatbots consuming information from a database and sending messages to Microsoft Teams
This document discusses two-factor authentication (2fa) methods for securing accounts, including interactive methods like SMS codes and token codes, as well as non-interactive methods like mobile app pushes and phone call confirmations. It provides information on implementing 2fa for various systems like *nix, Windows, databases, web apps, and more. The document also covers topics like common use cases, authentication tokens, and questions about securing accounts with 2fa.
Silverlight enables creating desktop applications that run outside the browser with access to local files and systems. Developing an out-of-browser Silverlight application involves setting configuration to allow installation, running the application like a desktop program offline or with intermittent connectivity, and signing the application as trusted to access things like the file system. These applications provide the richness of Silverlight in a desktop context without browser restrictions.
This document discusses building an application using Microsoft Identity Platform (formerly known as Azure Active Directory):
- Microsoft Identity Platform allows building applications with a single sign-on experience and securely accessing data from any API using tokens.
- The document outlines how to authenticate users via the implicit flow in MSAL, get tokens to call web APIs, and best practices for handling permissions and consent in an incremental way.
- It encourages developers to leverage the Office 365 developer program resources to build applications that integrate with Microsoft cloud services using single sign-on for a seamless user experience.
Mozilla Persona is a login system that allows users to sign in to websites using their email address, eliminating the need for separate usernames and passwords for each site. It provides a more private sign-in experience for users and is easy for developers to implement. The system relies on a federated protocol and identity providers to issue certificates to users, allowing them to prove ownership of their email address during the sign-in process.
Mozilla Persona is an open source login system that allows users to sign in to websites using their email address instead of separate usernames and passwords for each site. It provides a decentralized single sign-on solution where users get a certificate from their email provider to authenticate, eliminating the need for separate passwords. The presentation provided an overview of Persona for users, developers, and identity providers and demonstrated how to implement Persona through its JavaScript library and API.
The document discusses the Microsoft Bot Framework and how it can benefit businesses, end users, and developers. It provides an overview of what chatbots are and the key components of the Bot Framework, including the Bot Connector service. It then gives an example of using the Bot Framework to build a bot that allows users to access past webinars, see upcoming webinars, and register for webinars with Dear Azure.
DIGIT Noe 2016 - Overview of front end development todayBojan Veljanovski
This document provides an overview of front-end development approaches, including traditional server-side rendering and modern single-page applications (SPAs). It discusses the evolution from traditional to SPA approaches, characteristics of SPAs like modularity and client-side rendering, and considerations for choosing between server-side and client-side solutions. The document also showcases GitHub.com and the Azure Portal as examples of applications that take hybrid approaches, with some modules behaving as traditional sites and others as fully-fledged SPAs.
The document discusses OAuth 2.0 and how it addresses issues with traditional approaches to authorizing third party access to user accounts and resources. It provides an overview of OAuth 2.0 concepts like authorization grants, access tokens, refresh tokens, and the roles of the client, resource owner, authorization server and resource server. It then describes the authorization code grant flow and client credentials flow in more detail through examples. The goal is to explain how OAuth 2.0 works and how it can be used to securely authorize access to resources while avoiding the risks of directly sharing user credentials.
1. Intro - Auth - Authentication & Authorization & SSO
2. OAuth2 in Depth
3. Where does JWT fit in ?
4. How to do stateless Authorization using OAUTH2 & JWT ?
5. Some Sample Code ? How easy is it to implement ?
OAuth 2 is an authorization framework that allows applications to access user data and perform actions on their behalf. It defines flows for applications to request access, and provides short-lived credentials in response. The main roles in OAuth are the resource owner (user), client (application), resource server (API), and authorization server (issues tokens). Common grant types include authorization code, implicit, and client credentials flows. Tokens returned include access and refresh tokens, and OpenID Connect adds optional ID tokens containing user information.
The document discusses OAuth 2.0 and JSON Web Tokens (JWT). It defines OAuth 2.0 as the industry standard framework for authorization that enables third party applications to obtain limited access to HTTP services. It describes the common roles in OAuth 2.0 including the resource owner, resource server, client, and authorization server. It also explains the different token types used in OAuth like access tokens and refresh tokens. Finally, it provides an overview of JSON Web Tokens, defining them as a way to securely transmit information between parties as a JSON object using digital signatures.
OAuth is an open standard for authorization that allows users to share private resources stored on one server with another server. It provides a process for users to authorize third-party access to their server resources without sharing credentials. OAuth has gone through several versions to address security issues and limitations of previous versions. OAuth involves resource owners, clients, and an authorization server, and defines common flows for authorization like authorization code flow and refresh token flow.
It seems that OAuth 2.0 is everywhere these days. Whether you are building a hot new single page web application (SPA), a native mobile experience, or just trying to integrate with the API economy, you can't go far without running into the popular authorization framework for REST/APIs and social authentication.
During Oktane15 (https://www.okta.com/oktane15/), Karl McGuinness, our Senior Director of Identity, demystified the powerful, yet often misunderstood, world of OAuth 2.0 and shared details on Okta’s growing support for OpenID Connect.
The document discusses stateless authorization using OAuth2 and JSON Web Tokens (JWT). It begins with an introduction to authentication, authorization, and single sign-on (SSO). It then provides an in-depth explanation of OAuth2 actors, flows, and grant types. The Authorization Code Grant flow and Implicit Grant flow are explained in detail. Finally, it introduces JWT and why it is a suitable standard for representing OAuth2 access tokens since it meets the requirements and libraries are available.
This document provides an overview of OAuth 2.0. It discusses what OAuth is, its history and terminology. It then covers the main authorization flows in OAuth 2.0 including server-side web applications, client-side web applications, resource owner passwords, and client credentials. Considerations for using OAuth in mobile apps are also outlined. The document concludes with information about tools, libraries and a demo for implementing OAuth.
OAuth 2.0 is an open authentication and authorization protocol which enables applications to access each others data. This talk will presents how to implement the OAuth2 definitions to secure RESTful resources developed using JAX-RS in the Java EE platform.
My talk for the Dutch PHP Conference, explaining the point of oauth, the mechanics of oauth2 and the various flows, and a spot of oauth1 for completeness
This is my first public speech about way to secure your API. Interective presentation you could find here - https://sergeypodgornyy.github.io/oauth-webbylab-presentation/
Security is something you want to get right. If you need to secure an API right now, I imagine you are worrying about how, exactly, to do it. It is to my surprise that JSON Web Tokens is a topic not often talked about, and I think it deserves to be in the spotlight today. We will see how easy it is to integrate it in an API authentication mechanism. If you want simple stateless HTTP authentication to an API, then JWT is just fine and relatively quick to implement. But JWT is a simple authentication protocol, OAuth is an authentication framework, that enables a third-party application to obtain limited access to an HTTP service. OAuth is a simple way to publish and interact with protected data. It's also a safer and more secure way for people to give you access.
OAuth2 is an authorization frame to perform app authorization to access resources.
The process is as below-
1. App sends authorization request.
2. API service provides auth code.
3. Application sends auth code with API gateway to issue access token.
4. Access token is used to access restricted resources.
5. Refresh token is used to renew access token.
OAuth is an open standard that allows users to grant third party applications access to private resources like photos without sharing credentials. It works by exchanging an authorization code for an access token that allows limited access to specific resources for a set time period. OAuth 2.0 is the current version but was criticized for being more complex than the previous version and less secure. The document then discusses the OAuth process flow, different authorization methods, and some service providers that support OAuth.
OAuth2 is a protocol for authorization that allows clients limited access to user accounts and specifies four methods for obtaining an access token, including the authorization code flow. The authorization code flow involves a client redirecting a user to an authorization server, the user authorizing access, and the authorization server issuing an authorization code to the client, which can then request an access token to access a resource server on the user's behalf, while avoiding exposing the user's credentials directly.
The document discusses OAuth2 and the authorization code flow. OAuth2 is a protocol for authorization that allows clients to obtain limited access to user accounts and reduces the scope of access. It involves four main actors: a resource owner (user), client app, authorization server, and resource server. The authorization code flow involves the client redirecting the user to the authorization server to log in, the user authorizing access, and the authorization server issuing an authorization code to the client, which can then request an access token to access protected resources from the resource server on the user's behalf.
Stateless authentication for microservices applications - JavaLand 2015Alvaro Sanchez-Mariscal
This talk is about how to secure your front-end + backend applications using a RESTful approach. As opposed to traditional and monolithic server-side applications (where the HTTP session is used), when your front-end application is running on a browser and not securely from the server, there are few things you need to consider.
In this session Alvaro will explore standards like OAuth or JWT to achieve a stateless, token-based authentication using frameworks like Angular JS on the front-end and Spring Security on the backend.
An introduction to OAuth2 and OpenID Connect intended for a technical audience. This covers terminology, core concepts, and all the core grants/flows for OAuth2 and OpenID Connect
OAuth 2.0 provides several authorization flows for developers including the web server flow. It has advantages like wide adoption and new authorization types but also disadvantages such as lack of interoperability between implementations and potential security issues if SSL is not used. The web server flow involves authenticating the client, obtaining an authorization code from the resource owner, exchanging the code for an access token, using the access token to access resources, and refreshing tokens as needed. OAuth 1.0 adds security features like digital signatures and nonces/timestamps but requires more complex implementation.
OAuth2 Implementation Presentation (Java)Knoldus Inc.
The OAuth 2.0 authorization framework is a protocol that allows a user to grant a third-party web site or application access to the user's protected resources, without necessarily revealing their long-term credentials or even their identity. It is commonly used in scenarios such as user authentication in web and mobile applications and enables a more secure and user-friendly authorization process.
Get productive with python Visual Studio 2019Taswar Bhatti
Visual Studio 2019 was launched with improved support for Python developers. Several large companies such as Gemalto/Thales, Netflix, Dropbox, Google, and Reddit use Python for tasks like building agents for communications, running content delivery networks, statistical analysis, security monitoring, and certificate management. The Visual Studio 2019 launch demostrated new features for Python like open folder support, a Python toolbar, and cookie cutter project templates. More information can be found at aka.ms/pythonvs and aka.ms/pythonblog.
Introduction of using Hashicorp Vault with your NodeJS Application. How to store your secrets when using a cloud application in nodejs. Meetup in Austin Texas May 2019 (https://www.meetup.com/austinnodejs/events/srwjzqyzhbtb/)
Cloud patterns forwardjs April Ottawa 2019Taswar Bhatti
The document discusses various software design patterns including the external configuration pattern, cache aside pattern, federated identity pattern, valet key pattern, gatekeeper pattern, circuit breaker pattern, retry pattern, and strangler pattern. It provides descriptions of each pattern, examples of problems they aim to address, and considerations for applying the patterns. Taswar Bhatti presents on these patterns and takes questions.
Micrsoft Ignite Toronto - BRK3508 - 8 Cloud Design Patterns you ought to knowTaswar Bhatti
Microsoft Ignite Toronto Tour - 8 Cloud Design Pattern you ought to know,.
In software engineering, a design pattern is a general repeatable solution to a commonly occurring problem in software design.
You probably know about the GoF patterns, but did you know there are also Cloud Design Patterns solutions to a commonly occurring problem when building applications in the Cloud.
In this Talk we will go through 8 Cloud Design Patterns that will help you in your Design and Implementation, Data Management, Resiliency and Security; namely
- External Configuration
- Cache Aside
- Federated Identity
- Valet Key
- Gatekeeper
- Circuit Breaker
- Retry
- Strangler
8 cloud design patterns you ought to know - Update Conference 2018Taswar Bhatti
This document discusses 8 cloud design patterns: External Configuration, Cache Aside, Federated Identity, Valet Key, Gatekeeper, Circuit Breaker, Retry, and Strangler. It provides an overview of each pattern, including what problem it addresses, when to use it, considerations, and examples of cloud offerings that implement each pattern. It aims to help developers understand and apply common best practices for cloud application design.
This document provides an overview of Elastic Stack including ElasticSearch, Logstash, Kibana, and Beats. It discusses how Gemalto was using a monolithic solution to store logs from distributed systems and microservices, and wanted to implement a centralized scalable logging system. It describes various designs considered using Elastic Stack components like Logstash, Elasticsearch, and Filebeat to ingest, parse, store and visualize logs. Future plans discussed include using machine learning and Kafka.
Cloud Design Patterns - Hong Kong CodeaholicsTaswar Bhatti
Talk on Cloud Design Patterns at Hong Kong Codeaholics Meetup Group. Talk includes External Config Pattern, Cache Aside, Federated Identity Pattern, Valet Key Pattern, Gatekeeper Pattern, Circuit Breaker Pattern, Retry Pattern and the Strangler Pattern. These patterns depicts common problems in designing cloud-hosted applications and design patterns that offer guidance.
Conference Talk at ForwardJS at Ottawa on using Vault to store your secrets for your nodejs application. How to use Vault to store secrets. How to use approles to authenticate with vault using node-vault. How not to use env variable to pass in secrets.
A description of Azure Key Vault. Why do we need Azure Key Vault where does it fit in a solution. The details of storing keys, secrets and certificate inside of key vault. Using key vault for encryption and decryption of data
Cloud Design Pattern at Carlerton University
External Config Pattern, Cache Aside, Federated Identity Pattern, Valet Key Pattern, Gatekeeper Pattern, Circuit Breaker Pattern, Retry Pattern and the Strangler Pattern. These patterns depicts common problems in designing cloud-hosted applications and design patterns that offer guidance.
At Ottawa .NET User Group I had a talk on Cloud Design Patterns, External Config Pattern, Cache Aside, Federated Identity Pattern, Valet Key Pattern, Gatekeeper Pattern and the Circuit Breaker Pattern. These patterns depicts common problems in designing cloud-hosted applications and design patterns that offer guidance.
Devteach 2017 Store 2 million of audit a day into elasticsearchTaswar Bhatti
The document discusses using Elastic Stack to store and analyze 2 million audit logs per day from distributed systems. It introduces Elastic Stack components like Logstash, Kibana, Elasticsearch and Beats. It describes how the speaker's company Gemalto used Logstash and Elasticsearch to ingest logs from .NET applications into Elasticsearch at speeds of 1000 logs/second. Future plans include using Elasticsearch's machine learning and integrating with Kafka for cross data center replication.
Dev days 1 Introduction to Xamarin Taswar BhattiTaswar Bhatti
This document discusses building cross-platform mobile apps using Xamarin. It notes that traditionally, developing for iOS, Android and Windows required separate codebases in different languages and development environments, making code sharing difficult. Xamarin allows sharing a C# codebase across platforms, providing full native API access and high performance. It enables building user interfaces natively for each platform or sharing some or all of the UI code. Xamarin integrates with Visual Studio for development. It compiles to native code for each platform's store using ahead-of-time or just-in-time compilation. Visual Studio Mobile Center can be used to add services like crash reporting, push notifications and more.
Xamarin forms introduction by Taswar Bhatti and Ahmed AssadTaswar Bhatti
The document compares mobile development platforms for Windows, Android and iOS. Each platform has its own native tools for source control, build systems, monitoring and testing. C# with Visual Studio is used for Windows, Java with Android Studio for Android, and Objective-C with Xcode for iOS. Xamarin allows building mobile apps using C# that can target all three platforms from a single codebase, while maintaining native performance and UI through platform-specific libraries. The choice of cross-platform or native development depends on factors like audience, goals, expertise and resources available.
Presentation at DotNet Conf on using Docker with .NET core. Basic commands of docker, docker compose, and using a database Postgres with docker and asp .net core.
How John started to like TDD (instead of hating it) (ViennaJUG, June'25)Nacho Cougil
Let me share a story about how John (a developer like any other) started to understand (and enjoy) writing Tests before the Production code.
We've all felt an inevitable "tedium" when writing tests, haven't we? If it's boring, if it's complicated or unnecessary? Isn't it? John thought so too, and, as much as he had heard about writing tests before production code, he had never managed to put it into practice, and even when he had tried, John had become even more frustrated at not understanding how to put it into practice outside of a few examples katas 🤷♂️
Listen to this story in which I will explain how John went from not understanding Test Driven Development (TDD) to being passionate about it... so much that now he doesn't want to work any other way 😅 ! He must have found some benefits in practising it, right? He says he has more advantages than working in any other way (e.g., you'll find defects earlier, you'll have a faster feedback loop or your code will be easier to refactor), but I'd better explain it to you in the session, right?
PS: Think of John as a random person, as if he was even the speaker of this talk 😉 !
---
Presentation shared at ViennaJUG, June'25
Feedback form:
https://bit.ly/john-like-tdd-feedback
Providing Better Biodiversity Through Better DataSafe Software
This session explores how FME is transforming data workflows at Ireland’s National Biodiversity Data Centre (NBDC) by eliminating manual data manipulation, incorporating machine learning, and enhancing overall efficiency. Attendees will gain insight into how NBDC is using FME to document and understand internal processes, make decision-making fully transparent, and shine a light on underlying code to improve clarity and reduce silent failures.
The presentation will also outline NBDC’s future plans for FME, including empowering staff to access and query data independently, without relying on external consultants. It will also showcase ambitions to connect to new data sources, unlock the full potential of its valuable datasets, create living atlases, and place its valuable data directly into the hands of decision-makers across Ireland—ensuring that biodiversity is not only protected but actively enhanced.
Bonk coin airdrop_ Everything You Need to Know.pdfHerond Labs
The Bonk airdrop, one of the largest in Solana’s history, distributed 50% of its total supply to community members, significantly boosting its popularity and Solana’s network activity. Below is everything you need to know about the Bonk coin airdrop, including its history, eligibility, how to claim tokens, risks, and current status.
https://blog.herond.org/bonk-coin-airdrop/
Integration Ignited Redefining Event-Driven Architecture at Wix - EventCentricNatan Silnitsky
At Wix, we revolutionized our platform by making integration events the backbone of our 4,000-microservice ecosystem. By abandoning traditional domain events for standardized Protobuf events through Kafka, we created a universal language powering our entire architecture.
We'll share how our "single-aggregate services" approach—where every CUD operation triggers semantic events—transformed scalability and extensibility, driving efficient event choreography, data lake ingestion, and search indexing.
We'll address our challenges: balancing consistency with modularity, managing event overhead, and solving consumer lag issues. Learn how event-based data prefetches dramatically improved performance while preserving the decoupling that makes our platform infinitely extensible.
Key Takeaways:
- How integration events enabled unprecedented scale and extensibility
- Practical strategies for event-based data prefetching that supercharge performance
- Solutions to common event-driven architecture challenges
- When to break conventional architectural rules for specific contexts
AI and Deep Learning with NVIDIA TechnologiesSandeepKS52
Artificial intelligence and deep learning are transforming various fields by enabling machines to learn from data and make decisions. Understanding how to prepare data effectively is crucial, as it lays the foundation for training models that can recognize patterns and improve over time. Once models are trained, the focus shifts to deployment, where these intelligent systems are integrated into real-world applications, allowing them to perform tasks and provide insights based on new information. This exploration of AI encompasses the entire process from initial concepts to practical implementation, highlighting the importance of each stage in creating effective and reliable AI solutions.
Build Smarter, Deliver Faster with Choreo - An AI Native Internal Developer P...WSO2
Enterprises must deliver intelligent, cloud native applications quickly—without compromising governance or scalability. This session explores how an internal developer platform increases productivity via AI for code and accelerates AI-native app delivery via code for AI. Learn practical techniques for embedding AI in the software lifecycle, automating governance with AI agents, and applying a cell-based architecture for modularity and scalability. Real-world examples and proven patterns will illustrate how to simplify delivery, enhance developer productivity, and drive measurable outcomes.
Learn more: https://wso2.com/choreo
Build enterprise-ready applications using skills you already have!PhilMeredith3
Process Tempo is a rapid application development (RAD) environment that empowers data teams to create enterprise-ready applications using skills they already have.
With Process Tempo, data teams can craft beautiful, pixel-perfect applications the business will love.
Process Tempo combines features found in business intelligence tools, graphic design tools and workflow solutions - all in a single platform.
Process Tempo works with all major databases such as Databricks, Snowflake, Postgres and MySQL. It also works with leading graph database technologies such as Neo4j, Puppy Graph and Memgraph.
It is the perfect platform to accelerate the delivery of data-driven solutions.
For more information, you can find us at www.processtempo.com
FME for Climate Data: Turning Big Data into Actionable InsightsSafe Software
Regional and local governments aim to provide essential services for stormwater management systems. However, rapid urbanization and the increasing impacts of climate change are putting growing pressure on these governments to identify stormwater needs and develop effective plans. To address these challenges, GHD developed an FME solution to process over 20 years of rainfall data from rain gauges and USGS radar datasets. This solution extracts, organizes, and analyzes Next Generation Weather Radar (NEXRAD) big data, validates it with other data sources, and produces Intensity Duration Frequency (IDF) curves and future climate projections tailored to local needs. This presentation will showcase how FME can be leveraged to manage big data and prioritize infrastructure investments.
The rise of e-commerce has redefined how retailers operate—and reconciliation...Prachi Desai
As payment flows grow more fragmented, the complexity of reconciliation and revenue recognition increases. The result? Mounting operational costs, silent revenue leakages, and avoidable financial risk.
Spot the inefficiencies. Automate what’s slowing you down.
https://www.taxilla.com/ecommerce-reconciliation
Agentic Techniques in Retrieval-Augmented Generation with Azure AI SearchMaxim Salnikov
Discover how Agentic Retrieval in Azure AI Search takes Retrieval-Augmented Generation (RAG) to the next level by intelligently breaking down complex queries, leveraging full conversation history, and executing parallel searches through a new LLM-powered query planner. This session introduces a cutting-edge approach that delivers significantly more accurate, relevant, and grounded answers—unlocking new capabilities for building smarter, more responsive generative AI applications.
Traditional Retrieval-Augmented Generation (RAG) pipelines work well for simple queries—but when users ask complex, multi-part questions or refer to previous conversation history, they often fall short. That’s where Agentic Retrieval comes in: a game-changing advancement in Azure AI Search that brings LLM-powered reasoning directly into the retrieval layer.
This session unveils how agentic techniques elevate your RAG-based applications by introducing intelligent query planning, subquery decomposition, parallel execution, and result merging—all orchestrated by a new Knowledge Agent. You’ll learn how this approach significantly boosts relevance, groundedness, and answer quality, especially for sophisticated enterprise use cases.
Key takeaways:
- Understand the evolution from keyword and vector search to agentic query orchestration
- See how full conversation context improves retrieval accuracy
- Explore measurable improvements in answer relevance and completeness (up to 40% gains!)
- Get hands-on guidance on integrating Agentic Retrieval with Azure AI Foundry and SDKs
- Discover how to build scalable, AI-first applications powered by this new paradigm
Whether you're building intelligent copilots, enterprise Q&A bots, or AI-driven search solutions, this session will equip you with the tools and patterns to push beyond traditional RAG.
How to purchase, license and subscribe to Microsoft Azure_PDF.pdfvictordsane
Microsoft Azure is a cloud platform that empowers businesses with scalable computing, data analytics, artificial intelligence, and cybersecurity capabilities.
Arguably the biggest hurdle for most organizations is understanding how to get started.
Microsoft Azure is a consumption-based cloud service. This means you pay for what you use. Unlike traditional software, Azure resources (e.g., VMs, databases, storage) are billed based on usage time, storage size, data transfer, or resource configurations.
There are three primary Azure purchasing models:
• Pay-As-You-Go (PAYG): Ideal for flexibility. Billed monthly based on actual usage.
• Azure Reserved Instances (RI): Commit to 1- or 3-year terms for predictable workloads. This model offers up to 72% cost savings.
• Enterprise Agreements (EA): Best suited for large organizations needing comprehensive Azure solutions and custom pricing.
Licensing Azure: What You Need to Know
Azure doesn’t follow the traditional “per seat” licensing model. Instead, you pay for:
• Compute Hours (e.g., Virtual Machines)
• Storage Used (e.g., Blob, File, Disk)
• Database Transactions
• Data Transfer (Outbound)
Purchasing and subscribing to Microsoft Azure is more than a transactional step, it’s a strategic move.
Get in touch with our team of licensing experts via [email protected] to further understand the purchasing paths, licensing options, and cost management tools, to optimize your investment.
Join the Denver Marketo User Group, Captello and Integrate as we dive into the best practices, tools, and strategies for maintaining robust, high-performing databases. From managing vendors and automating orchestrations to enriching data for better insights, this session will unpack the key elements that keep your data ecosystem running smoothly—and smartly.
We will hear from Steve Armenti, Twelfth, and Aaron Karpaty, Captello, and Frannie Danzinger, Integrate.
Artificial Intelligence Applications Across IndustriesSandeepKS52
Artificial Intelligence is a rapidly growing field that influences many aspects of modern life, including transportation, healthcare, and finance. Understanding the basics of AI provides insight into how machines can learn and make decisions, which is essential for grasping its applications in various industries. In the automotive sector, AI enhances vehicle safety and efficiency through advanced technologies like self-driving systems and predictive maintenance. Similarly, in healthcare, AI plays a crucial role in diagnosing diseases and personalizing treatment plans, while in financial services, it helps in fraud detection and risk management. By exploring these themes, a clearer picture of AI's transformative impact on society emerges, highlighting both its potential benefits and challenges.
Alt-lenders are scaling fast, but manual loan reconciliation is cracking under pressure. See how automation solves revenue leakage and compliance chaos.
https://www.taxilla.com/loan-repayment-reconciliation
From Chaos to Clarity - Designing (AI-Ready) APIs with APIOps CyclesMarjukka Niinioja
Teams delivering API are challenges with:
- Connecting APIs to business strategy
- Measuring API success (audit & lifecycle metrics)
- Partner/Ecosystem onboarding
- Consistent documentation, security, and publishing
🧠 The big takeaway?
Many teams can build APIs. But few connect them to value, visibility, and long-term improvement.
That’s why the APIOps Cycles method helps teams:
📍 Start where the pain is (one “metro station” at a time)
📈 Scale success across strategy, platform, and operations
🛠 Use collaborative canvases to get buy-in and visibility
Want to try it and learn more?
- Follow APIOps Cycles in LinkedIn
- Visit the www.apiopscycles.com site
- Subscribe to email list
-
Scalefusion Remote Access for Apple DevicesScalefusion
🔌Tried restarting.
🔁Then updating.
🔎Then Googled a fix.
And then it crashed.
Guess who has to fix it? You. And who’ll help you? - Scalefusion.
Scalefusion steps in with real-time access, not just remote hope. Support for Apple devices that support you (and them) to do more.
For more: https://scalefusion.com/remote-access-software-mac
https://scalefusion.com/es/remote-access-software-mac
https://scalefusion.com/fr/remote-access-software-mac
https://scalefusion.com/pt-br/remote-access-software-mac
https://scalefusion.com/nl/remote-access-software-mac
https://scalefusion.com/de/remote-access-software-mac
https://scalefusion.com/ru/remote-access-software-mac
Simplify Training with an Online Induction Portal for ContractorsSHEQ Network Limited
Enhance safety and compliance with our online induction portal, designed for efficient online induction and contractor onboarding processes. Contact us on +353 214536034.
Content Mate Web App Triples Content Managers‘ ProductivityAlex Vladimirovich
Content Mate is a web application that consolidates dozens of fragmented operations into a single interface. The input is a list of product SKUs, and the output is an archive containing processed images, PDF documents, and spreadsheets with product names, descriptions, attributes, and key features—ready for bulk upload.
Marketo & Dynamics can be Most Excellent to Each Other – The SequelBradBedford3
So you’ve built trust in your Marketo Engage-Dynamics integration—excellent. But now what?
This sequel picks up where our last adventure left off, offering a step-by-step guide to move from stable sync to strategic power moves. We’ll share real-world project examples that empower sales and marketing to work smarter and stay aligned.
If you’re ready to go beyond the basics and do truly most excellent stuff, this session is your guide.
2. WHO AM I??
- 4 years Microsoft MVP
- 17 years in software
- Author of Instant Automapper (Packt)
- Currently working at as System Architect at Enterprise Security
Space (Gemalto)
- You may not have heard of Gemalto but 1/3 of the world population
uses Gemalto but they just dont know that
3. WHAT WE WILL COVER TODAY?
OAuth 2.0
OAuth flows
OpenID
JWT (JavaScript Web Token) some says “jot”
OpenID Connect
Demo (Keycloak IDP)
4. WHAT IS OAUTH?
An open protocol to allow secure authorization in a simple and
standard method from web, mobile and desktop applications.
5. OAUTH HISTORY
OAuth started circa 2007
2010 - RFC 5849 defines OAuth 1.0
2010 - OAuth 2.0 work begins in IETF
Working deployments of various drafts & versions at Google,
Microsoft, Facebook, Github , Twitter, Flickr, Dropbox …
Mid 2012 – Lead author and editor resigned & withdraws his name
from all specs (DRAMA……)
October 2012 – RFC 6749, RFC 6750
6. THE GOOD
OAuth 2.0 is easier to implement than OAuth 1.0
Wide spread and continue growing
Shorted lived token
Encapsulated Token
OAuth2 makes it HTTP/JSON friendly to request and transmit tokens
Takes "multiple client" architectures into account
Clients can have varying trust levels
7. OAUTH 2.0
- Transport Security : Using HTTPS and TLS
- Ease : Usable (no digital certs to verify)
- Flexible : Mobile, Web SPA apps, etc
- Decoupled: Resource server and authorization server
- Bearer Token : Easy for integration; Id Token also known as keys
9/24/2017 7
12. OAUTH MISCONCEPTION
Ohh this is easy!! When I login to
Spotify with Twitter, it grabs by
username and password from
Twitter….
Wrong
!!!!!!!!!!!!!!
9/24/2017 12
Developer
13. OAUTH IS NOT FOR
9/24/2017 13
- Traditional Access Control
- Not for authentication
- Not for Federation
- OAuth should be used for delegation
14. BEARER TOKEN
GET /somedata HTTP/1.1
Host: someserver.com
Authorization: Bearer a3b4c55cf
The access token can be JWT
format
- A security token with the
property that any party in
possession of the token (a
"bearer") can use the token in
any way that any other party in
possession of it can
9/24/2017 14
15. OAUTH TERMINOLOGY
- Client or Consumer Application : Is typically a web based
or mobile application that wants to access User’s Protected
Resources
- Resource Server or the Resource Provider: Is a web site or
web service API where the User keeps his/her protected
data
- Authorized Server : The server issuing access tokens to
the client after successfully authenticating the resources
and obtaining authorization
- User or the Resource Owner : Is a member of the Resource
Provider, wanting to share certain resources with a third
party
- Client Credentials : Are the consumer keys and consumer
secret used to authenticated the Client
- Tokens : are the access token generated by server after
request from client
16. OAUTH TOKEN TYPES
- Access Token : Used to directly access protected resources on
behalf of a user or service
- Refresh Token : When given to an authorization server, it will give
you a new access token
- Authorization Code Token : Use only in the authorization code
grant type for access token or refresh token
9/24/2017 16
17. HIGH LEVEL FLOW OF OAUTH 2
- An app registers him/herself on an oauth service provider (lets say
twitter)
- S/he gets an app key/secret for each app that s/he registers
- When users login they are redirected to the service provider to
provide the credentials
- If user approves then a token is issued to the app for a limited time
- Finally the client uses the token to access the resource
18. OAUTH USAGE
In OAuth [authorization]
You are in BigPhotoPrintingCorp.net account and you need to access your
images from AwesomeImage.com site
BigPhotoPrintingCorp.net site will redirect you to AwesomeImage.com site
You enter you credential to AwesomeImage.com site and authenticated your
self. This is like in openId
AwesomeImage.com site will ask if you want to give permission to access
only photos of AwesomeImage.com site
you select yes
AwesomeImage.com site will redirect back to BigPhotoPrintingCorp.net site
BigPhotoPrintingCorp.net can access AwesomeImage.com site
20. 4 TYPES OF OAUTH FLOW
Authorization Code Grant : for apps running on a web server, long
lived tokens
Implicit Grant : For browser-based or mobile apps, during user is
logged in, short lived tokens
Resource Owner Credentials Grant : For logging in with a username
and password, trusted application
Client credentials Grant : for application access machine to machine
21. AUTHORIZATION CODE FOR APPS
RUNNING ON A WEB SERVER
This is the most common type of application you have when dealing
with OAuth servers.
Web apps are run on a server where the source code of the
application is not available to the public.
This case your site will REDIRECT you to particular authorization
server. If webserver making multiple request it can use STATE
parameter for map callback response with request
One of the most complicated one in OAuth
23. IMPLICIT FOR BROWSER-BASED OR
MOBILE APPS
Browser-based apps run entirely in the browser after getting source
code from a web server. Since the entire source code is available to
the public, they cannot maintain the confidentiality of their client
secret, so the secret is not used in this case
One will make api calls with the token that is assign to it
For mobile apps also cannot maintain the confidentiality of their
client secret. Because of this, mobile apps must also use an OAuth
flow that does not require a client secret. With this concept token is
exposed to local operating system. So there are no refresh tokens.
24. PASSWORD FOR LOGGING IN WITH A
USERNAME AND PASSWORD
OAuth 2 also provides a “password” grant type which can be used to
exchange a username and password for an access token directly.
This obviously requires the application to collect the user’s password.
As a result users may hesitate to use this service unless this app
comes from the auth service provider.
Only used in highly trusted application, your social media Facebook
app, rather than 3rd party apps (Batman Fancy Facebook app)
25. MEET THE ACTORS IN OUR OAUTH
9/24/2017 25
Resource Owner
Or User
Application Authorization Server Resource Server
Or API
26. CLIENT CREDENTIALS FOR
APPLICATION ACCESS
There are scenarios that applications may wish to get statistics about
the users of the app.
In this case, applications need a way to get an access token for their
own account, outside the context of any specific user.
OAuth provides the client credentials grant type for this purpose.
This is machine to machine communication sort of concept
32. SCOPES AKA PERMISSIONS
- Roles, Authority where you want to give access control to who can
do what with it
- The name of permissions
- User scopes
- Client/Applications Scopes
- Token contains intersection
9/24/2017 32
37. AUTHORIZATION GRANT
$ https://fancy.mysite.com/oidc #Reaching out to application, are
you logged in?
302 HTTP Redirect
https://api.mysite.com/authorize?response_type=code&client_id=Te
stClient&redirect_uri=https://fancy.mysite.com/oidc
9/24/2017 37
38. AUTHORIZATION CODE GRANT
GET /oauth/authorize #Login to the app
SUCCESS you get back a code
HTTP 302 redirect back to redirect_uri
https://fancy.mysite.com/oidc?code=SplxlOBeZQQYbYS6WxSbIA&stat
e=xyz
9/24/2017 38
40. ACCESS TOKEN
Response from Authorization Server
{
"access_token":"03807cb390319329bdf6c777d4dfae9c0d3b3c35",
"expires_in":3600,“
token_type":"bearer",
"scope": “CarKey.Ignite”
}
9/24/2017 40
41. RESOURCE SERVER CHECK TOKEN
- If it is a Jwt token you can verify the key who signed it
- Endpoint to check the token returning the scopes to verify if valid
token
9/24/2017 41
42. IMPLICT GRANT TYPE
- Used for clients that can easily be impersonated like phone or
mobile application
- 3rd party application
- A simplified Authorization Code Grant with eliminating the code
step
- Access token is given directly to the app
- No Refresh Token are given, Access token are short lived
- Requires Resource Owner to invoke for new Access Token
9/24/2017 42
44. OPENID
Sharing a single Identity with different consumers
Decentralized
OpenID is a form of Single Sign On (SSO)
OpenID is a URL http://myname.myopenid.com
45. WHAT CAN YOU DO?
One can claim and prove they own the openid
Use it for authentication
At a high level its like Microsoft Passport
It’s a form of authentication, if you have a system you still will need
to populate your fields (e.g firstname, email, etc)
OpenId does not provide you with those information
46. OPENID USAGE
In OpenId [authentication]
You want to access your account on bigcorp.net
bigcorp.net is asking your openId
You entered your username for openId
bigcorp.net will redirect you to the your openid providers site
User give password to openId provider and authenticate him/her self
openId provider will redirect user back to bigcorp.net site
bigcorp.net will grant you to access your account
47. OPENID CONNECT
We have talked about OAuth and OpenId and there is also OpenId
Connect
It’s the new SSO authentication for the internet
OpenId Connect build on top of OAuth2 since sometimes you may
just need authentication
Remember OAuth2 is for authorization
OpenID Connect provides
Implict flows and Authorization code flow
51. JWT (JAVA WEB TOKEN)
JSON Web Token (JWT) is a compact URL-safe means of representing
claims to be transferred between two parties.
The claims in a JWT are encoded as a JavaScript Object Notation
(JSON) object that is used as the payload of a JSON Web Signature
(JWS) structure or as the plaintext of a JSON Web Encryption (JWE)
structure, enabling the claims to be digitally signed or MACed and/or
encrypted.
52. JWT CONT
JWT Token looks like this
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjEzODY4OTkxMzEsI
mlzcyI6ImppcmE6MTU0ODk1OTUiLCJxc2giOiI4MDYzZmY0Y2ExZTQx
ZGY3YmM5MGM4YWI2ZDBmNjIwN2Q0OTFjZjZkYWQ3YzY2ZWE3OTdi
NDYxNGI3MTkyMmU5IiwiaWF0IjoxMzg2ODk4OTUxfQ.uKqU9dTB6gK
wG6jQCuXYAiMNdfNRw98Hw_IWuA5MaMo
Ok great…………. Once you understand the format, it's actually pretty
simple:
..
[header].[payload].[signature]
53. JWT CONT
In other words:
You create a header object, with the JSON format. Then you encode it
as a base64
You create a claims object, with the JSON format. Then you encode it
in base64
You create a signature for the URI. Then you encode it in base64
You concatenate the three items, with the "." separator
54. BENEFITS
JSON Web Tokens work across different programming languages:
JWTs work in .NET, Python, Node.js, Java, PHP, Ruby, Go, JavaScript,
and Haskell. So you can see that these can be used in many different
scenarios.
JWTs are self-contained: They will carry all the information necessary
within itself. This means that a JWT will be able to transmit basic
information about itself, a payload (usually user information), and a
signature.
JWTs can be passed around easily: Since JWTs are self-contained, they
are perfectly used inside an HTTP header when authenticating an API.
You can also pass it through the URL.
55. HEADER
The header carries 2 parts (JWT and the hashing algorithm like below)
{ “typ”: “JWT”. “algo”, “HS256” }
Then base64 encode it
56. PAYLOAD & CLAIMS
The payload will carry the bulk of our JWT, also called the JWT Claims. This is
where we will put the information that we want to transmit and other
information about our token.
There are multiple claims that we can provide. This includes registered claim
names, public claim names, and private claim names.
{
"iss": “taswar.zeytinsoft.com",
"exp": 1300819380,
"name": “Taswar Bhatti",
"admin": true
}
57. SIGNATURE
The third and final part of our JSON Web Token is going to be the
signature. This signature is made up of a hash of the following
components:
the header
the payload
Secret
The secret is the signature held by the server. This is the way that our
server will be able to verify existing tokens and sign new ones.
var encodedString = base64UrlEncode(header) + "." +
base64UrlEncode(payload);
HMACSHA256(encodedString, 'secret');
59. OPENID CONNECT TOKENS
The OpenID Connect server provides client applications with two
key tokens:
ID token - asserts the users identity in a signed and verifiable way.
Access token - provides access to the user’s details at the UserInfo
endpoint and other protected web APIs.