Home / Companies / WorkOS / Blog / June 2024

June 2024 Summaries

8 posts from WorkOS

Filter
Month: Year:
Post Summaries Back to Blog
Identity linking consolidates duplicate accounts with their own authentication credentials into a single account, which can be complex due to email and domain verification considerations. WorkOS handles these complexities and provides secure identity linking by default. The process involves associating user profiles from different authentication providers with a unique user in the application. Email verification is commonly used for this purpose, but there are more frictionless ways depending on the identity provider. In enterprise contexts, domain capture can remove the need to verify emails within that domain once ownership of the domain has been verified by IT admins. Understanding and accounting for the behavior of different authentication providers when linking identities is crucial for maintaining security.
Jun 28, 2024 1,669 words in the original blog post.
The text discusses the migration of User Management from Heroku to Kubernetes on EKS, along with the development of a custom platform called Terrace. The challenges faced while using Heroku included lack of an SLA, limited rollout functionality, and inadequate data locality options. To address these issues, the team chose Kubernetes on EKS and built Terrace to streamline deployment, secret management, and automated load balancing. The migration resulted in significant improvements in uptime, from four nines to consistently achieving five nines over 7 and 30-day periods across all services. Future plans for Terrace include implementing deployments to different data localities and experimenting with blue/green and canary deployment strategies.
Jun 27, 2024 1,738 words in the original blog post.
Webhooks are widely used for real-time updates in modern applications but have significant limitations such as out-of-order updates, dependent webhooks, spiky throughput, and lack of audit trail. An alternative solution is the Events API, which ensures reliable, orderly, and efficient data synchronization. The Events API offers strict ordering, controlled throughput, audit trail, and supports continuous polling for near real-time data syncing. It can be a superior choice for managing real-time data updates compared to webhooks.
Jun 26, 2024 2,261 words in the original blog post.
The article discusses two approaches for user authentication in web applications - route-level and middleware-level authentication. Route-level authentication involves checking if a user is logged in within each page's logic, while middleware-level authentication checks this before the request reaches the main application logic. Both methods have their pros and cons, with middleware-level being more suitable for large applications with many routes requiring different authorization levels. However, the most secure approach is validating access at the data level to ensure both authentication (AuthN) and authorization (AuthZ). The choice between route-level or middleware-level authentication ultimately depends on the application's architecture and the developer's preference.
Jun 25, 2024 1,390 words in the original blog post.
The blog post discusses a migration strategy to adopt Next.js App Router incrementally without disrupting ongoing work. It outlines steps such as upgrading Next.js, migrating routing hooks, creating a temporary /app/new directory, importing existing code from /pages, using a query param to access the App Router, and removing the /pages directory. The post also highlights the benefits of React Server Components when applied in load-bearing code paths.
Jun 24, 2024 1,483 words in the original blog post.
Single-tenant and multi-tenant architectures are two common approaches in SaaS applications. In single-tenant architecture, each customer has a dedicated instance of the software and infrastructure, while in multi-tenant architecture multiple customers share the same software instance and infrastructure. The choice between these two largely depends on factors such as security requirements, operational needs, and cost considerations. Single-tenant architecture offers high levels of data security and compliance due to its isolated environments for each customer. It also allows for extensive customization and dedicated resources, leading to better performance control. However, it can be more expensive to build and maintain, requires longer development times, and has limited scalability. On the other hand, multi-tenant architecture is cost-efficient as computing resources are shared among multiple customers. It's easier to maintain since updates and security patches can be rolled out simultaneously for all customers. Additionally, it allows quick onboarding of new users. However, there are potential security concerns if not implemented well, and performance issues may arise with increased user load. In some cases, a mixed-tenancy architecture combining elements from both single and multi-tenant architectures might be appropriate. For example, premium customers could have dedicated instances while freemium users share a common instance. When deciding between these options, it's crucial to consider the specific needs of your business and customers. If security regulations or data protection laws require it, single-tenant architecture may be necessary. However, for most SaaS apps, multi-tenancy is often the better choice due to its cost efficiency and ease of maintenance. Finally, if planning to offer multi-tenancy options to enterprise clients, implementing Single-Sign-On (SSO) can be beneficial. Tools like WorkOS can help add SSO for all major Identity Providers with minimal effort.
Jun 18, 2024 1,792 words in the original blog post.
OAuth and Single Sign-On (SSO) are often confused but serve different purposes. OAuth is an authorization protocol that allows users to grant one app limited access to their data on another app or service, while SSO is an authentication method that enables users to authenticate once with an Identity Provider (IdP) and gain access to multiple apps. Use OAuth when you want to access or modify data in another service on behalf of a user, and use SSO when you want to authenticate users via a centralized identity provider. The choice between the two depends on whether your priority is gaining access to a user's data (OAuth) or simplifying the login process (SSO).
Jun 18, 2024 1,320 words in the original blog post.
The article discusses three alternatives to the popular SAML Single Sign-On (SSO) protocol: OAuth 2.0, OpenID Connect (OIDC), and WS-Federation. It highlights that while SAML has been widely used for enterprise apps over the last few decades, it has some significant drawbacks such as complexity in implementation, struggles with mobile and API-centric environments, and lack of support for modern authentication methods like social logins. The alternatives are more flexible and developer-friendly. OAuth 2.0 is an authorization framework that sometimes mimics SSO by issuing tokens granting access to multiple services or applications. OpenID Connect (OIDC) extends OAuth 2.0, allowing verification of user identity and obtaining basic profile information in a REST-like manner. WS-Federation enables identity federation across different network/security zones for an SSO experience but is mostly used in legacy Microsoft environments. The choice of which alternative to use depends on specific needs and preferences.
Jun 18, 2024 1,475 words in the original blog post.