December 2nd, 2021

Introducing the latest Azure SDK for Go client and management modules

Kim Ying
Program Manager II

We’re thrilled to share the latest set of Azure SDK modules for Go that are now in beta. These modules follow the Azure SDK Guidelines to provide an improved developer experience. They’re grouped into management and client modules. The management modules allow you to manage resources in your Azure subscription, by creating and managing instances of Azure services. The client modules allow you to use the capabilities exposed by instances of a service. The client modules include Azure Core, Identity, Tables, Key Vault – Keys, Key Vault – Secrets, Blob Storage, Cosmos DB, and Service Bus. Since our September blog post on management modules for Go, we’ve added support for:

Get the latest modules

You can get the latest modules using pkg.go.dev or view the latest source code in the Azure SDK for Go repository. You can also find a list of the latest modules on our Azure SDK Releases page.

Overview of client modules

Azure Core

The Azure Core client module for Go provides a set of common interfaces and types for the Go SDK client modules. It’s typically installed as a client module dependency.

Azure Identity

The Azure Identity client module for Go provides authentication support across the Azure SDK using OAuth authentication with Azure Active Directory. It offers various credential types for authenticating Azure-hosted applications, service principals, and users.

Azure Tables

Azure Tables is a NoSQL data storage service that can be accessed via authenticated HTTP or HTTPS calls. The Azure Tables client module for Go can be used to access an Azure Storage or Cosmos DB account. For more information, see Announcing the Preview Release for Azure Tables for Go.

Azure Key Vault

The Azure SDK for Go includes support for Key Vault’s Keys and Secrets. The Azure Key Vault Keys client module for Go provides cryptographic key management. More specifically, the module allows you to create, store, and control access to the keys used to encrypt your data. The Azure Key Vault Secrets client module for Go helps securely manage secrets, such as tokens and API keys.

Azure Blob Storage

The Azure Blob Storage client module for Go allows your application to access Azure Storage accounts, including the containers within those storage accounts and the blobs within those containers. Azure Blob Storage enables you to store massive amounts of unstructured data. For an overview on storage accounts, containers, and blobs, check out this Introduction to Azure Blob Storage.

Azure Cosmos DB

Azure Cosmos DB is a globally distributed, NoSQL multi-model database service. The Azure Cosmos DB client module for Go allows your application to connect to Azure Cosmos DB. You can create Cosmos clients, databases within those clients, containers within those databases, and do CRUD operations on the items in those containers.

Azure Service Bus

The Azure Service Bus client module for Go allows your application to send and receive messages using Azure Service Bus. Your application can send messages to a Queue or Topic and can receive messages from a Queue or Subscription.

Overview of management modules

You can find the latest management modules on our Azure SDK Releases page. To get started with a management module, see the corresponding README.md file in the Azure SDK for Go repository’s resourcemanager folder.

Feedback

We hope you enjoy using the Azure SDK for Go, and we always welcome your feedback. For feature requests, bug reports, or general support, open an issue in the Azure SDK for Go repository. For more information on how we triage issues, see Azure SDK GitHub Issue Support Process.

Azure SDK Blog Contributions

Thanks for reading this Azure SDK blog post. We hope you learned something new, and we welcome you to share the post. We’re open to Azure SDK blog contributions from our readers. To get started, contact us at azsdkblog@microsoft.com with your idea, and we’ll set you up as a guest blogger.

Author

Kim Ying
Program Manager II

Kim is a Program Manager working primarily on the Azure SDK for Go. She is new to the Go community and is excited to learn more about what Go developers are building in the cloud.