A Quick Guide to Elasticsearch for .NET
![A Quick Guide to Elasticsearch for .NET](/assets-jekyll/blog/featured/okta-dotnet-books-quarter-6992cd7ef76e401753740ebf29ba9ac5f94d75288bcdc9f14f7b821c8249e65d.jpg)
Implementing search functionality in your .NET Core apps doesn’t have to be hard! Using Elasticsearch makes it easy to develop fast, searchable apps. In this post, I’ll walk you through building a simple web application using Okta (for user authentication), Elastic Cloud (the official Elasticsearch hosting provider), and the fabulous Elasticsearch NEST SDK. Why Use Elasticsearch? Elasticsearch is an analytics and search engine based on the Apache Lucene library. It is developed in Java, following...
Create a Secure Chat Application with Socket.IO and React
![Create a Secure Chat Application with Socket.IO and React](/assets-jekyll/blog/socket-io-react-tutorial/socket-io-tutorial-f43fd09682930e21b8d0ce17a788603a5c2d04b685b35bdf46894e9439940440.png)
The HTTP protocol powers the web. Traditionally, HTTP is a request-response protocol. This means that a client requests data from a server, and the server responds to that request. In this model, a server will never send data to a client without having been queried first. This approach is suitable for many use cases that the web is used for. It allows loose coupling between clients and servers without the need to keep a persistent...
Faster Spring Boot Testing with Test Slices
![Faster Spring Boot Testing with Test Slices](/assets-jekyll/blog/spring-boot-test-slices/spring-boot-test-slices-acf0fc85dd7f6ab7b54128b20da9e1c9ac54b60405a5c1ba9c0a0656a5eda3a1.png)
We know unit testing is a vital part of the software development process. We also know us developers love to debate techniques, frameworks, strategies, and how different layers and components need testing. Unit tests are the most valuable when they are stable, fast, and reproducible. Spring Boot is known to reduce boilerplate code and make development extremely efficient, but it can come with a cost when it comes down to the testing. Without prior optimization,...
Update App Secrets with Jenkins CI and .NET Core
![Update App Secrets with Jenkins CI and .NET Core](/assets-jekyll/blog/featured/okta-dotnet-books-quarter-6992cd7ef76e401753740ebf29ba9ac5f94d75288bcdc9f14f7b821c8249e65d.jpg)
Introduction Jenkins is a free and open-source application that makes it easy to create CI/CD pipelines in almost any language or environment. Jenkins features a vast number of plugs to help create a CI/CD environment that is tailored to your technologies. In this application, you will create a .NET5 MVC web application and check it into a git repository. You will secure this application with Okta. Finally, you will set up a Jenkins project to...
Developers Guide to GPG and YubiKey
![Developers Guide to GPG and YubiKey](/assets-jekyll/blog/developers-guide-to-gpg/developers-guide-to-gpg-540fbc298126b5cfcc660b5095f6f8aef591798787f408e51c3b3eeaf15bbb2c.png)
Setting up a new YubiKey as a second factor is easy—your browser walks you through the entire process. However, setting up a YubiKey to sign your Git commits and Secure Shell (SSH) authentication is a very different experience. In this post, I’ll walk through configuring a YubiKey and highlight some of the things I’ve learned along the way. I’ve used GPG for years, but it didn’t really "click" for me until I sat down and...
What Apple's App Tracking Changes Mean for Developers
![What Apple's App Tracking Changes Mean for Developers](/assets-jekyll/blog/apple-app-tracking/alex-bachor-fWsT3PpoE-A-unsplash-adf8e047775ccc3653b8fc574e8090a7332ba6bfc18058e87da940731213f440.jpg)
You know how you will see an ad on Instagram for something that you just searched for hours earlier? This is in no small part due to a special API for iOS that allows app developers to track your behavior across apps, even those by different developers. Well, all of this is changing with the rollout of iOS 14.5, so let’s take a look at what exactly is changing and what this means for app...
Set Access Control Policies With Kong Konnect and Okta
![Set Access Control Policies With Kong Konnect and Okta](/assets-jekyll/blog/access-control-policies-kong-connect/access-control-policies-kong-1560c8f95013766768ffd34db43d8be66ba8c8d1fce14d3869941df5bc22aed5.png)
In our last Kong and Okta tutorial, we will implement a basic access control policy based on Okta’s groups and planes. This series will show you how to implement service authentication and authorization for Kong Konnect and Okta using the OpenID Connect (OIDC) plugin. Parts 1, 2 and 3 covered: Implement client credentials for application authentication Authorization Code for user authentication Implement introspection flow for token validation Table of Contents How Access Control Works Configure...
Use Okta and Oso to Secure a FastAPI + SQLAlchemy App
![Use Okta and Oso to Secure a FastAPI + SQLAlchemy App](/assets-jekyll/blog/oso-fastapi-sqlalchemy/card-fddb6d3ba2086069dfda628a333e56a0a46ca81964d4a85f50b06428f73587af.png)
FastAPI is really fast and SQLAlchemy is really…SQL-y. But what good is a fast and SQL-y application if it isn’t secure? In this post, we’re going to show you how to secure a fast and SQL-y app! First we will need some authentication, which is how we identify who the user is. We’ll use Okta for this. Next, we’ll want to perform authorization, which controls what the user can do in our application. We’ll be...
Build Native Java Apps with Micronaut, Quarkus, and Spring Boot
![Build Native Java Apps with Micronaut, Quarkus, and Spring Boot](/assets-jekyll/blog/native-java-comparison/native-java-d4247e8b43d2cf94f96d9d0483c6ee462646481ee5b9473ff3a3f5978eeefb9f.png)
Java has been able to invoke native programs on an operating system for decades. Invoking native programs is often done using JNI (Java Native Interface) and JNA (Java Native Access). In the last few years, Java has also gained the ability to run JVM apps as native apps. That is, they’re binary executables that have no dependency on the Java runtime. This is huge! Mostly because it gives Java apps the ability to start up...
A Developer's Guide to Session Management in React
![A Developer's Guide to Session Management in React](/assets-jekyll/blog/featured/okta-react-skew-20ab8acd8d83d87203df9c403aa60b4ff73efcba6c08384079d7d2d9d0f6e907.jpg)
Sessions can be a challenging topic for developers of all skill levels. Many React developers never consider the internals of session management because so much of the work is abstracted away. But, it is important to understand what sessions are, how they work, and how best to manage and manipulate them. There are several different strategies for session management in React. In this article, you will learn the basics about sessions, how to manage them...