Public Courses

Securing Application Data with Go (appdatasec_go)


Description
In this course, you'll implement Custom Data Conversion for your Temporal Workflows, including the use of Encryption Codecs. By implementing Custom Data Converters and a Codec Server, you can expand this behavior to support a variety of complex input and output data. Incorporating encryption mechanisms into your Temporal Workflows adds several considerations around user management, encryption standards, and key rotation. This course provides some general guidance and example applications for addressing each of these considerations.

When you've completed the course, you'll be able to:

* Apply an appropriate authentication and encryption strategy
* Implement a Custom Data Converter
* Deploy and Integrate a Codec Server with a Temporal Cluster

Prerequisites:

To be successful in this course, you should have an understanding of the fundamental concepts, tools, and techniques used to develop and execute basic Temporal applications with the Go SDK. This includes the ability to develop and execute Temporal Workflows and Activities, navigate the Web UI, configure and run a Worker, as well as an understanding of the high-level interactions between the Temporal Application and Temporal Cluster during Workflow Execution. We strongly recommend that you complete Temporal 101, which covers these topics, before starting this course.

Since code used in examples and exercises are written in Go, you must also have at least basic proficiency with the Go programming language.

Programming Language: Go Number of hours: 2.5

Content
  • ABOUT THIS COURSE
  • Welcome
  • Meet the Instructors
  • Format and Duration
  • Course Outcomes
  • Exercise Environment Orientation
  • (Optional Activity) Setting up a Local Development Environment
  • Course Conventions
  • Getting Help
  • UNDERSTANDING DATA CONVERTERS
  • What is Data Conversion in Temporal?
  • Working with Sensitive Data
  • Custom Codecs
  • Failure Converters
  • Hands-On Exercise #1: Implement a Custom Codec
  • Composite Data Converters
  • Sample: Customizing the Composite Data Converter
  • COMPRESSION AND ENCRYPTION
  • Compression and Encryption
  • Data Encryption Methods
  • Key Management and Rotation
  • USING A CODEC SERVER
  • Sharing Converter Logic
  • Remote Data Decoding
  • Endpoints and Namespaces
  • Working with Large Payloads
  • DEPLOYING A CODEC SERVER
  • Ingress and Authentication
  • Passing Access Tokens
  • Configuring CORS
  • Integrating with the Web UI
  • Working with Decoded Payloads
  • Hands-On Exercise #2: Deploying a Codec Server
  • Using a Codec Server with Temporal Cloud
  • CONCLUSION
  • Essential Points
  • Parting Words
  • For More Information
Completion rules
  • All units must be completed