Post Syndicated from The History Guy: History Deserves to Be Remembered original https://www.youtube.com/watch?v=TY4oVHn0pAU
Australia Requires Ransomware Victims to Declare Payments
Post Syndicated from Bruce Schneier original https://www.schneier.com/blog/archives/2025/06/australia-requires-ransomware-victims-to-declare-payments.html
A new Australian law requires larger companies to declare any ransomware payments they have made.
Air Traffic Control: Last Week Tonight with John Oliver (HBO)
Post Syndicated from LastWeekTonight original https://www.youtube.com/watch?v=YeABJbvcJ_k
ASRock Rack EPYC4000D4U AMD EPYC 4005 Motherboard Review
Post Syndicated from Patrick Kennedy original https://www.servethehome.com/asrock-rack-epyc4000d4u-amd-epyc-4005-motherboard-review/
In our ASRock Rack EPYC4000D4U review, we see what makes this AMD EPYC 4000 and server motherboard different
The post ASRock Rack EPYC4000D4U AMD EPYC 4005 Motherboard Review appeared first on ServeTheHome.
S12 E13: Trump Pardons & Air Traffic Control: 6/1/25: Last Week Tonight with John Oliver
Post Syndicated from LastWeekTonight original https://www.youtube.com/watch?v=MZARkhJP3v4
Lost Hopes for Empire.
Post Syndicated from The History Guy: History Deserves to Be Remembered original https://www.youtube.com/watch?v=_S0Pmf4J-jQ
Bridge Types
Post Syndicated from xkcd.com original https://xkcd.com/3097/

„Алеф” награди победителите в дванадесетия Международен литературен и филмов ученически конкурс „Който спаси един човешки живот, спасява цяла вселена”
Post Syndicated from original https://bivol.bg/%D0%B0%D0%BB%D0%B5%D1%84-%D0%BD%D0%B0%D0%B3%D1%80%D0%B0%D0%B4%D0%B8-%D0%BF%D0%BE%D0%B1%D0%B5%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D0%B8%D1%82%D0%B5-%D0%B2-%D0%B4%D0%B2%D0%B0%D0%BD%D0%B0.html

Ако не бяха те…. Какво би се случило, ако в мрачните години на Холокоста нямаше хора с кураж и състрадание, които да променят съдбите на хиляди и да оставят примери…
Материалът „Алеф” награди победителите в дванадесетия Международен литературен и филмов ученически конкурс „Който спаси един човешки живот, спасява цяла вселена” е публикуван за пръв път на Bivol!.
GIGABYTE G383-R80-AAP1 AMD Instinct MI300A Server Review
Post Syndicated from Patrick Kennedy original https://www.servethehome.com/gigabyte-g383-r80-aap1-amd-instinct-mi300a-server-review/
We check out the GIGABYTE G383-R80-AAP1 an AMD Instinct MI300A supercomputer server with a unique APU architecture
The post GIGABYTE G383-R80-AAP1 AMD Instinct MI300A Server Review appeared first on ServeTheHome.
Maritime Disaster
Post Syndicated from The History Guy: History Deserves to Be Remembered original https://www.youtube.com/watch?v=N2KUNTsDp0g
Comic for 2025.06.01 – Everything
Post Syndicated from Explosm.net original https://explosm.net/comics/everything
New Cyanide and Happiness Comic
If We launched Voyager 3, Would We Still Send the Golden Records?
Post Syndicated from Curious Droid original https://www.youtube.com/watch?v=iK8abB0efW4
Comic for 2025.05.31 – Be My Dad
Post Syndicated from Explosm.net original https://explosm.net/comics/be-my-dad
New Cyanide and Happiness Comic
Седмицата (25–31 май)
Post Syndicated from Надежда Радулова original https://www.toest.bg/sedmitsata-25-31-mai/
С балончета, с пръчици леки –
като перца
изписваме с букви големи
за всички деца:
Лека нощ, лека нощ,
лееекааа ноооощ!

Тези приспивни думи са от една древна (по-древна и от мен) песничка от предаването „Лека нощ, деца“, известно още като „Сънчо“ (ама Сънчо още отпреди станалото „вайръл“ – ако използваме езика на днешните деца – „Аз съм Сънчо, ида от горица“). Та напоследък тези балончета, пръчици и перца ненадейно изплуваха в паметта ми благодарение на извънредно забавната обществена поръчка за прескъпо струващи икони, балони, бонбони, топки, мешки, смешки и прочее поучително-увеселителни артикули, с които МВР да образова децата така, щото да се пазят от юнаците зад волана.
Разбира се, този умопомрачителен списък с артикули заслужено се предвожда от иконите и това е напълно разбираемо. Та нали се радваме на образование, модерно, толерантно и изтъкано от междупредметни връзки. Сега новият предмет добродетели и религии ще черпи с пълни шепи от материалната база на часовете по безопасност на движението. И обратното. Изобщо, въпросните 420 000 лева, срещу които всички писнаха, ще се избият още преди края на първия срок… Докато пътни знаци и икони заедно навигират децата ни по пътищата на родината, а ние, спокойни за тях, тънем в сън и без участието на къдравото момченце от горицата – така и така вече са ни хвърлили достатъчно прах в очите.
На фона на това изобщо не се оплаквайте, ако вцърковеното честване на 24 май пред Паметника на Кирил и Методий в София в края на миналата седмица ви е се е сторило въздълго и тегаво предвид доминиращия програмата молебно-водосветен елемент. Това нищо не е. Най-хубавото предстои – държавата се е погрижила, ей го къде е 15 септември.
От тази любима моя тема за образованието скачам на нещо наистина умно и приятно за четене в настоящия брой – новата рубрика „Вкусната страна“, в която Чило Попов ще ни разхожда из България и Балканите, за да ни среща с интересни хора, произвеждащи храни и продукти, а за капак ще повдига капака на личната си тенджера, за да споделя с нас по някоя и друга рецепта. Рубриката започва с материал за аспержите – „Завръщането на буржоазния зеленчук“ (шшшт, да не чуе Костадинов, че ще размаха чукундура).
Още един интригуващ разговор предлага и рубриката ни „Игромислие“, която този път се фокусира върху моралната двусмисленост на видеоигрите. Или по-конкретно, в „Киберпънк 2077“. Удоволствие и лудонаративен дисонанс“ Миглена Николчина, Северина Станкева, Еньо Стоянов и Николай Генов разискват противоречията между наратив и игрова механика. И ще продължат тази тема и в следващите няколко издания на рубриката – затова следете внимателно.
Пореден разговор в броя – „Даниела Михайлова и Дора Петкова – за служебните адреси, личните документи и порочните кръгове“. Светла Енчева задава въпросите, а всички отговори водят до заключението, че без адресна регистрация автоматично преставаш да си част от обществото.
И докато с православни икони се опитваме да регулираме движението по пътищата, Анастасия Орманджиева ни разказва за едно революционно събитие в медицината – „Трънливият път до успешната трансплантация на трахея“.
Трънлив и изпълнен с опасности е и дългият път, вървян от ДПС, особено откакто прие в редиците си момчето Пеевски – „новото начало“ на „доброто“ старо автентично „движение“. За най-новите развития в лагерите на почетния председател и на еманципиралия се олигарх – четете седмичния политически анализ на Емилия Милчева „Сериалът не е турски“.
За да ни е по-лесно да преглътнем седмицата, винаги е добре да отворим книга. А и в момента тече Пролетният панаир на книгата в парка пред НДК, така че, ако имате път из столицата (и чадър подръка), разходете се дотам. Освен всичко друго, ще можете да откриете и трите заглавия, които Зорница Христова ни препоръчва този месец в рубриката си „По буквите“ – „Да ти бъда тяло“ от Албена Тодорова, „Маслен нос“ от Владислав Христов и „Дървеният костюм“ от Йордан Д. Радичков. С повечко късмет дори може да си тръгнете с автографи от авторите.
Стихотворението, с което напускаме месец май, е на Виолета Кунева и носи ултимативното заглавие „Или истината, или“.
за мъртвите цялата истина
иначе се събуждат,
се казва в стихотворението. А настоящият момент, който – въпреки различията – обитаваме заедно, го доказва.
И докато чакаме Христо Грозев да публикува поредното разследване, с което да разкрие името на български журналист на руска хранилка, вижте (ако все още не сте го направили) този кратък филм на Мая Димитрова за пропагандните машини и машинисти днес, който БНТ сметна за редно да излъчи в 23:25 ч. Няма да ви казвам повече – сами ще се убедите в размера на бедствието, пряко следствие от некачествено образование и осакатени, превзети медии.
Ако и на вас ви е писнало да ви хвърлят прах в очите и да сте част от общество, управлявано от „архитектите на хаоса“, подкрепете ни, за да сме заедно. Иначе горим.
A Brooklyn Bridge Disaster
Post Syndicated from The History Guy: History Deserves to Be Remembered original https://www.youtube.com/watch?v=lzBPfL1oDu4
penumbra
Post Syndicated from Oglaf! -- Comics. Often dirty. original https://www.oglaf.com/penumbra/
Черна писта или защо точно така следва да работят отворените данни
Post Syndicated from Боян Юруков original https://yurukov.net/blog/2025/cherna-pista/
Поздравления на Мартин Атанасов за картата, но също така, че е пуснал свободно справката, която са му предоставили от МВР. Наистина се е постарал с визуализацията и е направил нещо, което взима сурови данни и ги показва по разбираем начин.

Забелязах нещо сред коментарите, включително многобройните статии в медиите, което има нужда да се уточни. На много места се говорят неща в посока, че „държавата разчита на ученик да ѝ върши работата“ и „едно момче направи това, което цяла държава не направи“. Не съм съгласен. Това, което Мартин е направил е похвално, включително защото е успял да получи по ЗДОИ данните от МВР, за които много хора търсим и питаме и съдим от години. Многократно през последните 15 години съм повтарял, че не е работа на обществените институции да правят такива визуализации, а да предоставят свободно данните в разбираем и структуриран вид. Картата на Мартин е демонстрация на една от причините защо това е важно.
Последният съм, който ще хвали МВР за предоставяне на данни – все пак именно заради липсата им сложих на пауза проекта Lipsva. В случая обаче са направили именно това, което се очаква от тях като институция. Когато ги исках преди 10 години ми се изсмяха. Преди пет години исках пак и се пробвах да съдя. Миналата година ги искахме с Жоро Пенчев и Божидар Божанов и казаха, че ще помислят как да ги изготвят. Божанов писа днес, че преди два месеца е питал отново да ги предоставят публично и са казали, че „било много сложно“.
Та наистина браво на Мартин, че е успял да ги получи най-накрая и ги пуска свободно. Свалих ги да ги разгледам, защото именно картата му ми показа няколко странни неща, които може би показват повече за работата на КАТ, отколкото за катастрофите. Ако някак не сте видели още, ще я намерите на chernapista.com.
Впрочем, сетих се, че преди 13 години бях направил проект за crowdsourcing на данни за катастрофите. Вадеше данните от бюлетина на КАТ София, но тъй като не бяха геокодирани, а имаха странни адреси, бях направил инструмент и с помощта на хора в Twitter ги поставяхме на карта всеки ден. Продължи доста дълго време и беше интересен експеримент, в който научих доста за модерацията на такива проекти. После се опитах да направя и подобна карта за престъпността, но и тя спря недълго по-късно заради невъзможността да се модерират и изчистват данните. Знам, че МВР има данни за престъпността с точност до части от квартал още през 2015-та, но не ги публикуват никъде.
The post Черна писта или защо точно така следва да работят отворените данни first appeared on Блогът на Юруков.
New and improved Amazon Q Developer experience in the AWS Management Console
Post Syndicated from Brendan Jenkins original https://aws.amazon.com/blogs/devops/new-and-improved-amazon-q-developer-experience-in-the-aws-management-console/
Amazon Q Developer just launched a new agentic experience within the AWS Management Console, that enables builders to get deeper insights about their AWS resources and improve their operational troubleshooting efficiency. This expands the agentic capabilities of Amazon Q Developer from both the integrated development environment (IDE) and command line interface (CLI) to the AWS console. Amazon Q Developer now functions as a resource analysis and operational troubleshooting assistant, able to consult multiple information sources and resolve complex queries, to get deeper insight into AWS environments faster and more easily than before. These capabilities are also available in chat applications such as Microsoft Teams and Slack. Now users can ask any question about AWS services and their resources, leaving Amazon Q Developer to automatically identify appropriate tools for the task, selecting from any AWS API across all services. It breaks queries into executable steps, asks for clarification when needed and combines information from multiple services to solve the task at hand. It can help analyze relationships between resources across multiple AWS services, examine configurations spanning different parts of infrastructure, synthesize information from various data sources to provide comprehensive insights, and respond to complex queries with detailed, actionable information.
For example, while troubleshooting an AWS Lambda function, a builder can simply ask, “How is this Lambda function getting invoked?” or “What are the IAM roles and permissions of my Lambda function?” and Amazon Q Developer will provide insights about the dependencies and interdependencies, evaluating their integration with other AWS services – all from a single natural language prompt. This enhancement allows builders to quickly obtain nuanced, contextual information about their AWS environment, significantly reducing the time and effort required for complex infrastructure analysis.
In this blog post, I’ll showcase several examples of complex prompts to demonstrate how Amazon Q Developer now delivers relevant and insightful responses based on the builder’s specific resources. Specifically, we’ll deep-dive into two main use cases: deeper resource introspection analysis and increased operational troubleshooting efficiency.
Deeper resource introspection and analysis
Amazon Q Developer now offers enhanced capabilities that make it even easier for builders to understand their AWS resources. With a single prompt, builders can now get comprehensive insights about their AWS services that previously required multiple steps. For example, when analyzing Amazon Simple Notification Service (SNS) topics and their subscribers, builders can simply ask “Show me all my SNS topics and their subscribers” to get a complete view of their configurations. This streamlined approach saves valuable time and effort, allowing developers to focus on building rather than navigating through multiple queries.
These new enhanced capabilities enable builders to simply ask for the insight needed, and Amazon Q Developer will perform the necessary multi-step reasoning based on a builder’s prompt. When the request is made, Amazon Q Developer determines the analytical steps required, retrieves information about the resources from multiple data sources, analyzes the relationships and configurations, and provides a comprehensive answer that addresses the need. Rather than builders having to think about which APIs to call or which services to check, Amazon Q Developer handles the complexity of the analysis, allowing builders to focus on understanding infrastructure rather than querying it.
To illustrate Amazon Q Developer’s capability in handling complex queries, let’s consider an example. Suppose a builder has a three-tier web application in an AWS account and they need to identify which Amazon Elastic Compute Cloud (Amazon EC2) instances, based on their Amazon Machine Images (AMIs) in the application layer, are actively communicating with Amazon Relational Database (RDS) in the backend. With this new update, a builder could open a new Amazon Q Developer chat in the AWS Management Console, and enter a prompt such as “List the AMIs used by my running EC2 instances in us-west-2 that can communicate with my RDS cluster”.

Figure 1: Prompt to Amazon Q Developer and Amazon RDS database
Based on Amazon Q Developer’s response shown in figure 1 above, Amazon Q Developer was able to list the steps it took to gather the information, pulled applicable information from each service API, and gave one comprehensive and detailed insight about which AMIs were being used to communicate with the Amazon RDS cluster. This shows how Amazon Q Developer can take a single prompt, pull in information from multiple resources and give a comprehensive insight.
Let’s move to another example around AWS Lambda. Suppose a builder wants to know which AWS CloudFormation stacks are managing Lambda function resources. To do this, a builder could enter a prompt such as “List my AWS Lambda functions and the CloudFormation stacks that manage those resources”.

Figure 2: Prompt to Amazon Q Developer about Lambda and AWS CloudFormation
As shown above in figure 2, Amazon Q Developer was able to pull AWS CloudFormation information related to the AWS Lambda resources, and list each stack that was associated with the Lambda functions in the account. This, for example, can help many development and IT professionals better understand and manage their account resources by leveraging the complex reasoning of Amazon Q Developer.
Proceeding with one more example around AWS Lambda, let’s now suppose a builder wants to use Amazon Q Developer to see if there are any Amazon Simple Storage Service (Amazon S3) buckets invoking an AWS Lambda function in their AWS account. To identify this, a builder could enter a prompt such as “What AWS Lambda functions do I have in us-east-1 and are any of them invoked by an Amazon S3 bucket in the same region?”.


Figure 3: Prompt and response from Amazon Q Developer about Amazon S3 and AWS Lambda
As shown in figure 3 above, Amazon Q Developer again called applicable service APIs to analyze Amazon S3 and AWS Lambda resources and was able to find that there was one AWS Lambda function with S3 as an event trigger.
Furthermore, building on our previous example, builders can try prompts around costs as well. For example, a builder can now prompt Amazon Q Developer “How much did I spend on Lambda functions that are invoked by my S3 bucket?” and Amazon Q will use its deeper resource introspection to tie costs to the resources that are connected.
These examples demonstrate Amazon Q Developer’s enhanced capability to process complex prompts involving multiple resource relationships. This improvement allows builders to obtain comprehensive answers with fewer steps, streamlining the overall process of asking questions about resources in accounts and making it easier to understand and manage AWS resources.
Improved Operational Troubleshooting
Amazon Q Developer can not only discover resources, their configurations, and their relationships, but also correlate that information with logs, metrics, and events to identify, analyze, and determine the root cause while troubleshooting operational issues in the AWS console. This helps streamline the process of resolving issues to enable quick troubleshooting.
To illustrate Amazon Q Developer’s capability in improved operational troubleshooting, let’s consider an example. Suppose a builder has a simple payment processing application consisting of Amazon API Gateway, AWS Lambda, and Amazon RDS in the backend. Furthermore, the application is returning 500 internal server errors causing downstream issues. Now, a builder can prompt Amazon Q Developer “Why is my user-profile-service-prod Lambda function throwing a 500 Internal server error?”.

Figure 4: Prompt to Amazon Q Developer about internal server error
As shown above in figure 4, Amazon Q Developer automatically begins to gather relevant Amazon CloudWatch metrics, examines the function’s configuration and permissions, checks connected services like API Gateway and Amazon RDS, and analyzes recent changes

Figure 5: Response from Q Developer for database timeouts
As shown above in figure 5, after querying applicable resources, Amazon Q Developer identified the root cause of the 500 internal server error. It shared information it pulled from the database and Lambda function logs and referenced a custom CloudWatch metric dashboard for evidence that the issue is due to database connection timeouts. Lastly, Amazon Q Developer also provided a list of ways to resolve the issue it identified. This example showcases how this new capability streamlines the process of analyzing operational issues, enabling quick troubleshooting.
Conclusion
The examples we’ve shown demonstrate how Amazon Q Developer handles the heavy lifting for users even better than before – from breaking down requests into analytical steps, to gathering data from multiple sources, to delivering meaningful insights about infrastructure, costs, and providing troubleshooting assistance.
As we continue to enhance Amazon Q Developer’s multi-step reasoning capabilities, builders will see it tackle even more complex analysis scenarios, helping them better understand and optimize AWS environments. Whether analyzing security configurations, examining resource relationships, or troubleshooting infrastructure issues, Amazon Q Developer can help save time and provide deeper insights into AWS resources.
To learn more and get started, visit Amazon Q Developer and Chatting with Amazon Q Developer in AWS Console Documentation.
About the authors
Minisforum MS-A2 Review An Almost Perfect Homelab System
Post Syndicated from Patrick Kennedy original https://www.servethehome.com/minisforum-ms-a2-review-an-almost-perfect-amd-ryzen-intel-10gbe-homelab-system/
In our Minisforum MS-A2 review, we take a look at the 10GbE, AMD Ryzen system with 16 cores that will be a hit with the homelab community
The post Minisforum MS-A2 Review An Almost Perfect Homelab System appeared first on ServeTheHome.
How Launchpad from Pega enables secure SaaS extensibility with AWS Lambda
Post Syndicated from Anton Aleksandrov original https://aws.amazon.com/blogs/architecture/how-launchpad-from-pega-enables-secure-saas-extensibility-with-aws-lambda/
Large organizations increasingly adopt software as a service (SaaS) solutions to focus on business priorities, reduce infrastructure management overhead, and optimize costs. These organizations expect SaaS vendors to provide customizability facilities for tailoring the solution behavior according to their needs. Although traditional approaches like feature flags and webhooks offer some flexibility, they often fall short of providing a high degree of customizability. A new emerging pattern in this space is tenant-supplied custom code execution, which allows tenants to inject their own code into specific workflow points, enabling deep customization while preserving the core SaaS solutions’ integrity and security.
In this post, we share how Pegasystems (Pega) built Launchpad, its new SaaS development platform, to solve a core challenge in multi-tenant environments: enabling secure customer customization. By running tenant code in isolated environments with AWS Lambda, Launchpad offers its customers a secure, scalable foundation, eliminating the need for bespoke code customizations.
Solution overview
Launchpad, which is built on AWS, is an end-to-end platform on which software providers can build, launch, and operate workflow-centric B2B SaaS applications and AI solutions. It provides a managed, secure, scalable cloud environment for hosting multi-tenant applications and data. It accelerates the build experience with generative AI-powered low code tools, prebuilt capabilities, and subscriber-level configuration. Being a multi-tenant platform at its core, Launchpad had to maintain stringent isolation across tenants in its architecture.
One of the requirements Launchpad had was to allow their tenants to augment the workflows natively by providing custom code. Some common scenarios included communicating with external systems with proprietary non-industry-standard protocols, reuse of existing business logic, and SDK-based custom code development.
The solution necessitated the ability for tenants to provide custom code that would implement the required business logic, which Launchpad would be executing. This required architecting a secure runtime environment for custom code execution that maintains the highest degree of cross-tenant isolation within the multi-tenant architecture, at the same time allowing sufficient access to platform APIs and services. It was essential to build an architecture that would decouple the environment running tenant code from the core SaaS platform, as illustrated in the following diagram.

Architecting the solution topology
To achieve the required high level of compute isolation for running code provided by different tenants, Launchpad has adopted Lambda functions in its architecture as the secure ephemeral compute environment. Each untrusted code snippet provided by tenants is bootstrapped as a stand-alone Lambda function, with strong Firecracker-based isolation across different functions and execution environments addressing Launchpad’s requirements. This isolation provides dedicated resources, customizable access permissions, independent monitoring and operations, and automatic scaling for each function, while maintaining complete separation from other functions and their execution environments, as illustrated in the following diagram.

With Lambda being a serverless compute service, adopting it for the Launchpad architecture yielded several significant benefits. The major business benefit was that tenants could implement thousands of custom workflow augmentations on their own simply by providing code snippets, instead of the Launchpad engineering team being responsible for implementing them in the core platform code. Other benefits included:
- Managed runtimes – AWS handles patching and updating the underlying infrastructure, operating system, and runtimes for customers, reducing the potential attack surface.
- Fine-grained permissions – Each function can have its own set of access policies to tightly control what resources and actions it can access.
- No need to pre-provision and pay for overprovisioned capacity – Lambda functions scale up and down automatically based on traffic patterns.
- Built-in monitoring – Lambda functions emit detailed metrics, logs, and traces through Amazon CloudWatch and AWS X-Ray out of the box, making it straightforward to monitor tenant code execution.
To further reduce risks, Launchpad runs these Lambda functions with untrusted code in a dedicated AWS account. This account is separated from the core SaaS platform account. When end-users create a new function in the Launchpad authoring portal, they upload their code and specify the code handler to be executed during the invocation. Users can also map function input and output to Launchpad fields for further processing to enable an even higher degree of customizability and integration. The multi-tenant authoring service is a Control Plane component that runs as a microservice on the Amazon Elastic Kubernetes Service (Amazon EKS) cluster and uses the Lambda API for function lifecycle management, as illustrated in the following diagram. After a function resource is created, it can be used for further invocations.

Runtime architecture
At runtime, when Launchpad needs to invoke a function, it calls the Lambda Invoke API. Before the function is invoked, the multi-tenant runtime service performs a tenancy check to make sure the request is coming from an authorized tenant by doing the token validation. After a successful validation, the service invokes the required Lambda function. To invoke functions hosted in a different AWS account, the multi-tenant runtime service uses an AWS Identity and Access Management (IAM) role to assume the required permissions and invokes the Lambda service using the AWS SDK. The sequence of interactions is shown in the following architecture diagram.

The workflow consists of the following steps:
- An incoming user request reaches the application gateway service.
- The application gateway authenticates the request using the tenancy security service.
- After it’s authenticated, the request is forwarded to the multi-tenant runtime service
- The multi-tenant runtime service validates the supplied token and performs a tenancy check. This makes sure tenants can only invoke own functions they have permissions for (for example, functions they own).
- The multi-tenant runtime service pod assumes the IAM role required for invoking the tenant-specific Lambda function in a different AWS account.
- The multi-tenant runtime service pod invokes the required Lambda function.
Invoking the platform API from custom code is as straightforward as connecting to any external API. The custom code can authenticate with the platform using OAuth2. To facilitate the authentication, the developer can pass along the credentials as input parameters to the function from the core platform. Then the developer can create a corresponding record (isolated by tenant) in the platform that stores the credentials per function, and pass credentials as input parameters during invocation.
Distributed architecture observability
Operating a distributed architecture that runs untrusted code across multiple AWS accounts requires a comprehensive observability strategy. Launchpad’s approach combines centralized logging and monitoring with cross-account aggregation to provide a unified operational view of the platform.
The monitoring architecture uses CloudWatch Metrics to observe the Lambda functions, aggregating them through a centralized observability layer. This setup empowers platform operators to correlate Lambda function metrics with the core platform services running on Amazon EKS. Launchpad also collects per-function telemetry like function invocations, error rates, and execution time, which allows them to observe per-tenant metrics. These telemetry dimensions enable both a platform-wide and tenant-specific monitoring perspective.
For logging and troubleshooting, Launchpad implements a unified logging pipeline that aggregates Lambda function logs with application gateway and runtime service logs. Each request flowing through the system carries a correlation ID, so operators can trace execution paths across the core SaaS services and into the tenant functions running in the AWS account running tenant Lambda functions.
With this multi-layer observability architecture, Launchpad can maintain operational excellence while running tenant code securely at scale. Regular operational reviews drive continuous improvements in monitoring coverage and incident response procedures. Having per-tenant Lambda functions make it possible for Launchpad to use tenant-specific cost allocation tags, further empowering them to understand the cost footprint of running tenant custom code.
Best practices
When building a SaaS solution, maintaining a unified core code base is essential for scalability and manageability. Implementing per-tenant variations within the core platform code can lead to maintenance complexity and technical debt. Instead, architect your SaaS solution to have extension points, which allow your tenants to inject their custom code at specific points in the workflow, enabling customization without compromising the platform’s maintainability. This pattern makes sure the core SaaS platform remains clean and standardized while offering the flexibility that customers demand.
Additional best practices include:
- Use separate accounts for running Lambda functions with untrusted tenant-provided code to make sure it’s isolated from your core SaaS platform code.
- Grant absolute minimum required access permissions to the execution role assigned to the function. The custom code running within the execution environment gets permissions defined in the execution role when making requests to AWS API endpoints. If the function doesn’t need to reach out to AWS API endpoints, remove all permissions from the execution role and add an explicit AWSDenyAll policy.
- Use separate Lambda functions for each code snippet and each tenant. This will provide the highest degree of cross-tenant isolation. Resources are not reused across different functions and execution environments.
- Use Lambda layers in case you need to add a layer of vendor-provided code in order to keep it separated from the untrusted tenant-provided code.
- Implement additional security controls, such as using Amazon Virtual Private Cloud (Amazon VPC) constructs to restrict network access and VPC Flow Logs for network activity monitoring.
Conclusion
The implementation of a secure untrusted code execution environment within SaaS platforms addresses a critical need for tenant customization while maintaining architectural integrity. Lambda offers a built-in isolation model, fine-grained security controls, and serverless scalability, so SaaS providers such as Launchpad can address the requirements of executing tenant-provided code in a multi-tenant environment and offer robust customization capabilities while maintaining strict security boundaries and operational efficiency. This architectural pattern enables providers to focus on core platform development while confidently supporting tenant-specific workflows through the secure and scalable Lambda execution environment.
To learn more, refer to the Security Overview of AWS Lambda white paper. For additional serverless architectural patterns, see Serverlessland.com.

