Implement Azure App Configuration Flashcards

(19 cards)

1
Q

What is azure app configuration?

A
  • proivides service to centrally manage app settings and feature flags
  • stores all the settings for your app and secure their accesses in one place
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does app configuration provide?

A
  • fully managed service that is setup in mins
  • flexible key represenations and mappings
  • Tagging
  • Point-in-time replay settings
  • Dedicated UI
  • Comparisioon of 2 sets of configs on custum defined dimensions
  • Enhanced security through managed IDs
  • Encryption of sensitivbe info at rest and in transit
  • native integreation with populatr frameworks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What scenarios does app config make it easier to implement?

A
  • Centralise management and distribution of hierarchical config for different envs and geographies
  • Dynamuically change app settings without need to redpeloy of restart app
  • control feature availability in real time
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are keys in relation to app config?

A
  • Used to store and rerieve corresponding values (Key:Value)
  • Case sentivie unicode based strings
  • can use any value for key names except for “*," which are reserved
  • can use reserved char with escape char “"
  • combined size limit of ke7-value pair at 10k chars
  • can be done in flat key:value way or in hierarchical appname:keyname:value which makes it easier to manage and read
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are key labels in terms of app config?

A
  • attribute used to diffrentiate key-values with the same key
  • e.g. if we have multiple db endpoints we might label them per env
  • to explicity reference a key-value without a label use \0
  • app config doesnt version key values when they are modified so labels can be used to create multiple versions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How do we app config for data?

A
  • query app config store for key-values by specifying a pattern
  • app config store returns all key-values that match the pattern including their corresponding values and attributes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are values in terms of app config?

A
  • unicode strings
  • can use all unicode chars
  • has optional user-defined contrent type associated with each value, used to store info such as encoding schema
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is a feature flag?

A
  • Var with binary state of on or off
  • State of the flag triggers whether the code block runs or not
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is feature manager in terms of app config?

A
  • app package that handles the lifecycle of all the feature flags in an app, provides extra functionality such as caching feature flags and updating their states
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is a filter in terms of app config?

A
  • a filter is a rule for evaluating the state of a feature flag, a user group, a device or browser type, a geographic location and a time window
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What does effective implementation of feature management consist of?

A
  • An app that makes use of feature flags
  • A seperate repo that stores all the flags in their current states
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How do filters work with feature flags to determine state?

A
  • feature flag has a name and a list of filters that are used to evaluate state
  • if flag has multiple filters the filter list is traversed in order until one of the filters determines the feature should be enabled
  • if no filter indicates it should be enabled then it is off
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How does feature managee support appsettings.json?

A

“FeatureManagement”: {
“FeatureA”: true,
“FeatureB”: false,
“FeatureC”:{
“EnabledFor”:[
“Name”: “Percentage”
“Parameters”:{
“Value”: 50
}
]
}}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How does app config encrypt sensitive info?

A
  • Encrypts at rest with 256-bit AES encryption key provided by MS
  • each instance has its own key managed by the service and used to encrypt sensitive info (e.g. values from key:value pairs)
  • when customer managed key capability is enabled, app config uses a managed ID assigned to the app config instance to auth with entra
  • managed ID calls the KV and wraps the config instances encryption key
  • wrapped key is then stored and the unwrapped key is cached within app config for one hour
  • app config refreshes the unwrapped version hourly
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is required to successfully enable the customer managed key capability for app config?

A
  • Standard tier app config instance
  • key vault with soft delete and purge protection enabled
  • RSA or RSA-HSM key within the key vault that is not expired, is enabled and has wrap and unwrap capabilities enabled
  • Assign managed ID to the app config instance
  • grant the ID GET, WRAP and UNWRAP perms in the target key vaults access policy
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

How can we use private endpoints with app config?

A
  • allow clients on a VM to securely access data over private link
  • Pe uses an IP from the VN address space for your app config store
  • Network traffic between the clients on the VN and the app config store traverses over the vnet using private link on the MS backbone network, elimating public exposure
17
Q

What do private endpoints enable us to do?

A
  • Secure app config details by configuring the firewall to block all public connections
  • increase security for the vnet ensuring data doesnt escape
  • securly connect to the app config store from on-premises networks usiong VPN or expressroutes with private peering
18
Q

Command to add system assigned ID to app config?

A

az appconfig identity assign –name configStoreName –resource-group RGName

19
Q

Command to add user assigned ID to app config?

A

az identity create –resource-group myRG –name myuserassignedidentity

az appconfig identity assign –name myConfigStore –resource-group MyRG –identities <ID_NAME></ID_NAME>