package sas

import "github.com/Azure/azure-sdk-for-go/sdk/messaging/azeventhubs/internal/sas"

Index

Functions

func CreateConnectionStringWithSASUsingExpiry

func CreateConnectionStringWithSASUsingExpiry(connectionString string, expiry time.Time) (string, error)

CreateConnectionStringWithSharedAccessSignature generates a new connection string with an embedded SharedAccessSignature and expiration. Ex: Endpoint=sb://<sb>.servicebus.windows.net;SharedAccessSignature=SharedAccessSignature sr=<sb>.servicebus.windows.net&sig=<base64-sig>&se=<expiry>&skn=<keyname>"

Types

type Signer

type Signer struct {
	KeyName string
	Key     string
	// contains filtered or unexported fields
}

Signer provides SAS token generation for use in Service Bus and Event Hub

func NewSigner

func NewSigner(keyName, key string) *Signer

NewSigner builds a new SAS signer for use in generation Service Bus and Event Hub SAS tokens

func (*Signer) SignWithDuration

func (s *Signer) SignWithDuration(uri string, interval time.Duration) (signature, expiry string, err error)

SignWithDuration signs a given for a period of time from now

func (*Signer) SignWithExpiry

func (s *Signer) SignWithExpiry(uri, expiry string) (string, error)

SignWithExpiry signs a given uri with a given expiry string

type TokenProvider

type TokenProvider struct {
	// contains filtered or unexported fields
}

TokenProvider is a SAS claims-based security token provider

func NewTokenProvider

func NewTokenProvider(opts ...TokenProviderOption) (*TokenProvider, error)

NewTokenProvider builds a SAS claims-based security token provider

func (*TokenProvider) GetToken

func (t *TokenProvider) GetToken(audience string) (*auth.Token, error)

GetToken gets a CBS SAS token

type TokenProviderOption

type TokenProviderOption func(*TokenProvider) error

TokenProviderOption provides configuration options for SAS Token Providers

func TokenProviderWithKey

func TokenProviderWithKey(keyName, key string, expiryDuration time.Duration) TokenProviderOption

TokenProviderWithKey configures a SAS TokenProvider to use the given key name and key (secret) for signing

func TokenProviderWithSAS

func TokenProviderWithSAS(sas string) TokenProviderOption

TokenProviderWithSAS configures the token provider with a pre-created SharedAccessSignature. auth.Token's coming back from this TokenProvider instance will always have '0' as the expiration date.

Source Files

sas.go

Version
v1.3.0 (latest)
Published
Feb 8, 2025
Platform
linux/amd64
Imports
10 packages
Last checked
4 months ago

Tools for package owners.