Powered by AppSignal & Oban Pro

Authentication with AzureSDK

livebooks/authentication.livemd

Authentication with AzureSDK

Mix.install([
  {:azure_sdk, path: Path.expand("..", __DIR__)}
])

Shared Key

shared_key =
  AzureSDK.Identity.SharedKeyCredential.new(
    "devstoreaccount1",
    "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw=="
  )

client =
  AzureSDK.Storage.Client.new(
    account: "devstoreaccount1",
    credential: shared_key,
    endpoint: "http://127.0.0.1:10000/devstoreaccount1"
  )

{:ok, containers} = AzureSDK.Storage.Container.list(client)
length(containers)

SAS credential

# SAS tokens are applied as query parameters by AzureSDK.Pipeline.SAS
sas = AzureSDK.Identity.SASCredential.new("sv=2021-06-08&ss=b&srt=sco&sp=rwdlacup&se=2030-01-01T00:00:00Z&sig=example")
sas.params["sv"]