Temporal Blog 09月30日
Temporal Cloud 简化 mTLS 证书生成
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

Temporal Cloud 现在用户可以通过 CLI 工具 tcld 安全生成 CA 和客户端证书,无需额外证书管理工具。mTLS 协议要求用户提供 CA 证书,以往用户需自行生成,现在 tcld 工具可直接在本地生成并上传证书,Temporal 不会访问用户的密钥。生成 CA 证书后,可使用其生成客户端证书,用于 Workers 和客户端认证。tcld 工具支持生成证书、上传 CA 证书至 Temporal Cloud,并添加客户端 CA 证书至命名空间。此功能简化了证书管理,未来还将提供证书过期指标和通知功能,提升用户体验。

🔐 Temporal Cloud 引入 tcld CLI 工具,用户可直接生成 CA 和客户端证书,无需额外证书管理工具,简化了证书生成和管理流程。

📄 生成 CA 证书后,可使用其生成客户端证书,客户端证书用于 Workers 和客户端与 Temporal Cloud 进行 mTLS 认证,确保通信安全。

🌐 tcld 工具支持将 CA 证书上传至 Temporal Cloud,并可将客户端 CA 证书添加至命名空间,方便用户管理和使用证书。

🔒 由于 tcld 工具在本地运行,Temporal 不会访问用户的密钥,确保了证书生成过程的安全性。

📌 未来将提供证书过期指标和通知功能,帮助用户及时管理证书,避免因证书过期导致 Workers 无法连接 Temporal Cloud 的风险。

mTLS and Temporal Cloud#

Temporal has the best customers and users in the world. Temporal users constantly engage with us, openly sharing feedback about their journey and ways Temporal Cloud can improve their productivity and overall quality of work-life. One piece of feedback we’ve heard consistently over the past few months is that generating CA and end-entity certificates can be challenging for many of our users, particularly those that don't already have certificate management tooling in place. This is why we’re excited to announce that users can now securely generate both CA and end-entity (that is, client) certificates using the Temporal Cloud CLI tool, tcld.

Temporal documentation states “Access to Temporal Cloud is secured with the mutual Transport Layer Security (mTLS) protocol. This protocol requires a CA certificate from you.” Until recently, it was up to Temporal users to generate CA and end-entity certificates themselves. Temporal provided guidance but not tooling for this solution. Now, users can generate certificates directly from a Temporal-provided tool, tcld. And, because the CLI runs on your local machine, the process is secure; Temporal never has access to your secret keys.

Certificate Generation Process#

If you’re new to mTLS and certificate management, here’s a very (overly) simple primer. Please see Temporal documentation for thorough instructions and best-practice guidance for mTLS certificate management in Temporal Cloud.

The first step in generating mTLS certificates for Temporal Cloud is to generate a Certificate Authority certificate. (Temporal guidelines for CA certificates are here.) After this is done, you can then add the CA certificate to Temporal Cloud. (We’ll walk through how to do this a bit later.) Now you can use the CA certificate to generate an end-entity certificate that will be used by your Temporal Workers and clients to authenticate with Temporal Cloud. (Temporal guidelines for end-entity certificates are here.) Remember to always store your certificates and keys securely.

Certificate Generation with tcld#

The Temporal Cloud CLI, tcld, provides an easy-to-use and secure method of generating both CA certificates and end-entity certificates as well as adding certificates to Temporal Cloud. To start, ensure you’re on the latest version of tcld by running brew upgrade tcld or building from the latest source.

To generate a CA certificate, run the following command.

tcld gen ca --org <your org> -d <the expiration time period> --ca-cert <path and file name for the cert> --ca-key <path and file name for the private key>

To generate an end-entity certificate, run the following command.

tcld gen leaf --org <your org> -d <the expiration time period> --ca-cert <path and file name for the ca cert> --ca-key <path and file name for the ca private key> --cert <path and file name for the end-entity cert> --key <path and file name for the end entity key>

To use tcld to upload the CA certificate to Temporal Cloud, run the following command.

tcld n ca a -n <your namespace id> -c <path and filename for the ca cert created above>

Please see our docs or use tcld --help for a full list of commands and parameters associated with generating and uploading certificates. For example:

tcld generate-certificates certificate-authority-certificate \  --org myco \  -d 1y \  --ca-cert ca.crt \  --ca-key ca.keytcld generate-certificates end-entity-certificate \  --org myco \  --ca-cert ca.crt \  --ca-key ca.key \  --cert client-and-worker.crt \  --key client-and-worker.keytcld namespace accepted-client-ca add \  --namespace jonathan.a2dd6 \  --ca-certificate-file ca.crt

Now you can add your end-entity certificate and key to your Workers and clients and connect to Temporal Cloud with any of our SDKs:

Conclusion#

We’ve listened to your feedback. We know, particularly for those who aren’t experienced working with certificates, that generating and managing mTLS certificates can be confusing and challenging. That’s why we’ve delivered this easy-to-use and secure approach to generate, upload, and rotate certificates. We have more improvements coming as well, like metrics and notifications that provide visibility into certificate expiration and help mitigate the risk that an expired certificate prevents your Workers from connecting to Temporal Cloud.

We hope this feature improves your experience with Temporal Cloud. As always, please feel free to reach out to us at cloud@temporal.io if you have questions and/or feedback. Until next time, happy Workflow development!

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Temporal Cloud mTLS 证书生成 CLI工具 tcld
相关文章