Skip to content

Support Azure App Configuration references in Azure App Services #62

Closed

Description

@arkiaman

What about offering the opportunity to reference App Configuration values the same way we can do with Key Vault References.

Key Vault: @Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/ec96f02080254f109c51a1f14cdb1931)

App Configuration: @Microsoft.AppConfiguration(ConfigurationUri=https://my.azconfig.io/configs/mykey/mylabel)

That way, we can provision those references during provisioning phase, keeping client code agnostic of the environment in which its deployed.
This is especially interesting when using Managed Identities.

Activity

  1. drago-draganov commented on May 14, 2019

    @drago-draganov
    Contributor

    AKC (@arkiaconsulting),

    It's a great suggestion indeed! My understanding is that specific reference is only applicable for Azure App Services/Azure Functions. Nevertheless, we should work with these respective teams to help App Configuration feel native across Azure.

  2. zhenlan commented on Oct 12, 2019

    @zhenlan
    Member

    We just announced the Key Vault Reference feature in App Configuration. Please open new issues if you have any feedback.
    Azure/AppConfiguration-Announcements#1

  3. alex-3sr commented on May 5, 2020

    @alex-3sr

    Hi,
    This is a « must have » feature ! Without references link for app services, it’s useless at this time. We really love to have it as feature.

    Thanks,
    Alex

  4. adriend-advz commented on Sep 14, 2020

    @adriend-advz

    Hello!
    Do you guys have any news on providing this feature?
    Thanks!

  5. zhenlan commented on Sep 14, 2020

    @zhenlan
    Member

    We've been in conversation with the App Service/Azure Functions team but looks like this was not able to be scheduled within this year. We will keep trying to get this into their future planning.

    cc: Lisa Guthrie (@lisaguthrie) Alexandra Kemper (@AlexandraKemperMS)

  6. arkiaman commented on Sep 15, 2020

    @arkiaman
    Author

    adriend-advz I think that with the AppConfiguration nuget, binding your App Service/Function is very easy, removing the need to be able to reference App Configuration items that way. Do you have a special use case ?

  7. alex-3sr commented on Sep 15, 2020

    @alex-3sr

    adriend-advz I think that with the AppConfiguration nuget, binding your App Service/Function is very easy, removing the need to be able to reference App Configuration items that way. Do you have a special use case ?

    Hi AKC (@arkiaconsulting) , from Ops side, this is a not acceptable solution that AppService get directly information from a KV or App Configuration. Usually dev team ask a grant for list all settings, and so we can't control which config/secrets especially when KV/AppConfiguration are shared by multiples teams/projects.
    So, to reference in AppSetting permit to control who and what are consumed from WebApp/FunctionApp, and in more when we deploy infra with IaC (like Terraform) we can know if some configs/secrets are not use anymore and can be delete, without tracking GIT repo for code as C# for people doesn't know some dev language.

    In conclusion, AppConfiguration for ops teams without AppSettings referencing is acually useless and we still use AppSettings for configuration. And about Key Vaults secrets, like referencing is possible, we deploy it everytime and everywhere when it's needed. So until we don't have this feature, AppConfiguration will never use in our projets.

    Hope that this use case, who is not special, can explain the reason of this must-have feature.

    Have a nice day, and remain at your disposal if need further informations
    Regards
    Alexandre

  8. adriend-advz commented on Sep 15, 2020

    @adriend-advz

    Hi!
    I just have one more question regarding this: I was planning to however use this app configuration task but removing everything related to key vault references to avoid pushing wrong reference.
    When doing the deployment, it basically wiped all the keys that were not in the properties file.
    Is there a way to avoid such a behavior?
    Thanks in advance!

  9. arkiaman commented on Sep 15, 2020

    @arkiaman
    Author

    adriend-advz What app configuration task are you talking about ?

  10. 14 remaining items

  11. mattboothman commented on Dec 16, 2021

    @mattboothman

    It'd be separate from that, wouldn't it?

  12. zhenlan commented on Dec 16, 2021

    @zhenlan
    Member

    What would this mean for injection of IConfigurationRefresher checking sentinels etc or the feature flags with the [FeatureGate] attributes on the controllers?

    If you are using the App Configuration provider library, you won't need this because you can pull configuration and feature flags from App Configuration directly. This integration is useful for applications that don't know (or you don't want it to know) about App Configuration because key-values in App Configuration will be available as environment variables to your applications.

  13. PanosKousidis commented on Dec 18, 2021

    @PanosKousidis

    What would this mean for injection of IConfigurationRefresher checking sentinels etc or the feature flags with the [FeatureGate] attributes on the controllers?

    If you are using the App Configuration provider library, you won't need this because you can pull configuration and feature flags from App Configuration directly. This integration is useful for applications that don't know (or you don't want it to know) about App Configuration because key-values in App Configuration will be available as environment variables to your applications.

    Understood Zhenlan Wang (@zhenlan), clients who care about these features should still be using the AppConfiguration library. Thanks.

  14. AlexandraKemperMS commented on Mar 29, 2022

    @AlexandraKemperMS
    Contributor

    Hi AKC (@arkiaconsulting), alex-3sr, adriend-advz, Matt Boothman (@mattboothman), cpdohert, Panos Kousidis (@PanosKousidis), Spi (@BzSpi), David Jürgens (@Kittoes0124), and Aleksy Zalenski (@azalenski),
    based on your requests, we have been building the @Microsoft.AppConfiguration Reference in App Service and it is now available in Private Preview! We would love for you to try out this feature and hear your feedback. To get access to the private preview, please fill out this survey: App Config Reference Private Preview Access Survey and we will reach out to you. Note that for any Microsoft private preview, you or your company will need to sign an NDA if you/they have not already done so.

  15. ianrandell-sh commented on May 22, 2023

    @ianrandell-sh

    Hello AKC (@arkiaconsulting), alex-3sr, adriend-advz, Matt Boothman (@mattboothman), cpdohert, Panos Kousidis (@PanosKousidis), Spi (@BzSpi), David Jürgens (@Kittoes0124), and Aleksy Zalenski (@azalenski), this feature is now in Public Preview. Please let us know if you have any feedback!

    Hi Avani Gupta (@avanigupta) - where do you want feedback? If here then:

    I'm hitting our App Configuration Service (ACS) from an Azure Function using app configuration references. I notice that a request appears to be made to ACS for each app setting individually, ie the config retrieval is not batched into a single call.

    I can retrieve all of our app config keyvalues using azure cli eg

    az appconfig kv list --key "/ian/api/dev/*" --connectionstring "Endpoint ..."
    

    where "/ian/api/dev/" is the common prefix of all of my app config key names.

    Obviously the key names could be completely different with no common prefixing.

    But I wonder whether some logic could be built into the "fetch" code that checks for common prefixing and retrieves a whole batch (up to 100 entries?) in a single call. Retrieved keyvalues could then be matched to app settings based on their full keyname.

    Would eliminate some of the 429s we're seeing (even in Standard tier).

    Thanks!

  16. avanigupta commented on May 23, 2023

    @avanigupta
    Member

    Thanks for the feedback Ian Randell (@ianrandell-sh). This is definitely something we want to add in future.

  17. carlo-quinonez commented on Jul 8, 2023

    @carlo-quinonez

    When a AppService uses a Key Vault Reference and the secret changes, the App Service will be restarted. From this article

    If a version is not specified in the reference, then the app will use the latest version that exists in the key vault. When newer versions become available, such as with a rotation event, the app will automatically update and begin using the latest version within 24 hours.

    Do changes to AppConfig also trigger restart of an AppService with AppConfig References? If not, is this on the roadmap?

  18. zhenlan commented on Jul 12, 2023

    @zhenlan
    Member

    Changes in AppConfig won't be picked up in App Service automatically today. You will have to manually trigger a restart of your App Service for it to pick up the changes. Will an auto refresh within 24 hours, like what's supported in the Key Vault reference, work for you?

  19. carlo-quinonez commented on Jul 19, 2023

    @carlo-quinonez

    Zhenlan Wang (@zhenlan) Bouncing Yes, automatically restarting - even ~24hrs after changing config - would be useful when changing non-essential config, like log level or APM config.

  20. salihcantekin commented on Jan 8, 2024

    @salihcantekin

    I'm really looking forward to see it working soon.

  21. jimmyca15 commented on Aug 13, 2025

    @jimmyca15
    Member

    Azure App Configuration references are GA in Azure App Service. I will be closing this issue as that was the original concern. Avani Gupta (@avanigupta) mentioned she will open a separate issue to track refresh.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions