Thursday, September 26, 2019

Cloud - KSA

Kubernetes Service Architecture

Kubernetes uses Services to logically group a set of pods together and expose your application for external network connectivity. There are three types of services, or ServiceTypes.

  • ClusterIP
  • NodePort
  • LoadBalancer

LoadBalancer

A LoadBalancer service is the standard way to expose a service to the internet. On GKE, this will spin up a Network Load Balancer that will give you a single IP address that will forward all traffic to your service

NodePort 


This creates a Port mapping on the underlying node that allow application to accessed directly with node address IP and port.


Cluster IP


This creates a internal IP address for use within the AKS cluster. This helps to manage internal workload within cluster.


Ingress

Ingress is actually NOT a type of service. Instead, it sits in front of multiple services and act as a “smart router” or entrypoint into your cluster.

Ingress is probably the most powerful way to expose your services, but can also be the most complicated. There are many types of Ingress controllers, from the 

  • Google Cloud Load Balancer, 
  • Nginx, 
  • Contour, 
  • Istio, and more.

UI development technologies for web applications


Technologies: ASP.NET MVC with HTML5 support

ASP.NET MVC with HTML5 support
·         Use for flexible modern and mobile web apps, cross-browser compatibility, mobile web clients that can run on any modern device, and to take advantage of the ASP.NET MVC mobile features (such as using different pages and rendering based on detection of the current browser user agent).
·         Offers a full HTML rendering control, better unit testing support, and faking capabilities.
·         HTML5: Use libraries like Modernizer for detecting HTML5 features support and workarounds.
·         Use CSS3 for less script and more maintainable code.
·         Use JavaScript and jQuery for client-side programming.
·         MVC allows Search Engine Optimizations (SEO) customizations.
·         Restful URLs are an integral part of MVC.

ASP.NET SPA

Single Page Application (SPA) based on ASP.NET MVC, HTML5/JavaScript, Knockout, and Breeze
·         SPA is not a framework but a design pattern that can be implemented by using ASP.NET MVC and heavy use of JavaScript libraries like Knockout (for supporting the MVVM pattern within JavaScript) and like the Breeze JavaScript library for advanced data management and JavaScript frameworks like Durandal.
·         Use it for highly interactive web applications and smooth UI updates (minimum server page reload and visible round trips) and when including significant client-side interactions using HTML5, CSS3, and JavaScript.
·         Take advantage of the open-source SignalR JavaScript client library for bi-directional communication between the client and server.
·         Consume ASP.NET Web API services from JavaScript.

HTML5 client for LightSwitch projects

LightSwitch HTML5 client
·         Use if your web application or module is mostly data-driven (CRUD [Create, Read, Update, and Delete]).
·         The LightSwitch HTML5 client is the easiest way to create data-centric, cross-browser, and mobile web applications that can run on any modern device, take advantage of automatic HTML rendering, and adapt to different form factors
·         Take advantage of CSS3, JavaScript, and OSS JavaScript libraries like jQuery Mobile and themes.
·         Coupled to the end-to-end LightSwitch runtime server engine which is built on top of ASP.NET.

ASP.NET Web Pages

ASP.NET Web Pages
·         ASP.NET Web Pages and the Razor syntax provide a fast, approachable, and lightweight way to combine server code with HTML to create dynamic web content. 

Tuesday, September 10, 2019

ASP.NET Web API Security



Authentication validates the identity of a user who is accessing the system to see if that end user has valid credentials. A quick view of some of the ways to Authenticate

  • Forms Authentication
  • Basic Authentication
  • Digest Authentication
  • Windows Authentication
  • Preshared Key or API Key-Based Authentication: Use API keys if you have to build internal application that don't need to access more than single user's data.
  • X.509 Client Certificate-Based Authentication
  • SWT-Based Authentication and Authorization
  • JWT-Based Authentication and Authorization
  • Google Authenticator OTP-Based Authentication
  • OAuth 2.0 Access Token-Based Authentication and Authorization: OAuth has been designed for use with applications on the internet, primarily for delegated authorization of internet resources. OAuth is designed for Internet Scale
  • SMS-Delivered OTP-Based Authentication
  • SAML Token-Based Authentication and Authorization : SAML was designed to be applicable openly, it is typically used in Enterprise SSO scenarios
    • within an enterprise or
    • enterprise to partner or
    • Enterprise to cloud scenarios.

Monday, April 22, 2019

Basics for Python


Python is (programming language) high level, Scripting, dynamic, strongly typed, Object Oriented, Open Source.
Python software, contains over 117,000 packages with a wide range of functionality, including:
·         Graphical user interfaces
·         Web frameworks
·         Multimedia
·         Databases
·         Networking
·         Test frameworks
·         Automation
·         Web scraping
·         Documentation
·         System administration
·         Scientific computing
·         Text processing
·         Image processing

IDE’s used for Python

·         PyCharm
·         Visual Studio + Python Tools
·         Spyder
·         Eclipse + PyDev /Aptana Studio
Editors
  • IDLE
  • SublimeText + PyLint/Anaconda/PythonAutoComplete
  • VIM + PyLint + PEP
  • PythonScriptEditor

Azure Cloud shell commands cheetsheet

  Certainly! Here's a cheat sheet of commonly used Azure Cloud Shell commands: Azure Account az login : Authenticate and log in to your ...