|
| 1 | +### YamlMime:ModuleUnit |
| 2 | +uid: learn.integrate-sql-solutions-azure-services.knowledge-check |
| 3 | +title: Module assessment |
| 4 | +metadata: |
| 5 | + ai_generated_module_assessment: true |
| 6 | + title: Module assessment |
| 7 | + description: Knowledge check for integrating SQL solutions with Azure services using Data API Builder |
| 8 | + ms.date: 02/05/2026 |
| 9 | + author: JulianePadrao |
| 10 | + ms.author: jupadrao |
| 11 | + ms.topic: unit |
| 12 | + module_assessment: false |
| 13 | +azureSandbox: false |
| 14 | +labModal: false |
| 15 | +durationInMinutes: 5 |
| 16 | +quiz: |
| 17 | + questions: |
| 18 | + - content: "You're creating a Data API Builder configuration and need to store the database connection string securely without hardcoding it. Which approach should you use?" |
| 19 | + choices: |
| 20 | + - content: "Store the connection string directly in the dab-config.json file for easy access" |
| 21 | + isCorrect: false |
| 22 | + explanation: "Incorrect. Storing connection strings directly in configuration files exposes credentials in source control and is a security risk." |
| 23 | + - content: "Use the @env() syntax to reference an environment variable containing the connection string" |
| 24 | + isCorrect: true |
| 25 | + explanation: "Correct. The @env() syntax allows you to reference environment variables, keeping sensitive credentials out of configuration files and source control." |
| 26 | + - content: "Create a separate credentials.json file and import it into the configuration" |
| 27 | + isCorrect: false |
| 28 | + explanation: "Incorrect. Data API Builder doesn't support importing separate credential files. Environment variable references are the recommended approach." |
| 29 | + - content: "Encrypt the connection string using Base64 encoding before adding it to the configuration" |
| 30 | + isCorrect: false |
| 31 | + explanation: "Incorrect. Base64 encoding isn't encryption and provides no security. Environment variable references with proper secret management are the correct approach." |
| 32 | + - content: "A development team wants to ensure their Data API Builder entity only allows clients to retrieve data, not modify it. Which permission configuration achieves this?" |
| 33 | + choices: |
| 34 | + - content: "Configure permissions with only the 'read' action for the appropriate roles" |
| 35 | + isCorrect: true |
| 36 | + explanation: "Correct. Setting permissions to only include the 'read' action restricts the entity to read-only operations, preventing create, update, and delete actions." |
| 37 | + - content: "Set the source type to 'view' which automatically prevents all write operations" |
| 38 | + isCorrect: false |
| 39 | + explanation: "Incorrect. While views are often read-only, the source type alone doesn't control permissions. You must explicitly configure permissions to restrict actions." |
| 40 | + - content: "Disable REST and only enable GraphQL with operation set to 'mutation'" |
| 41 | + isCorrect: false |
| 42 | + explanation: "Incorrect. Setting operation to 'mutation' indicates write operations, which is the opposite of read-only. Use 'query' for read operations and configure permissions appropriately." |
| 43 | + - content: "Use the 'anonymous' role which only supports read operations by default" |
| 44 | + isCorrect: false |
| 45 | + explanation: "Incorrect. The 'anonymous' role doesn't have default permissions. You must explicitly define which actions each role can perform." |
| 46 | + - content: "Your organization is deploying Data API Builder to production and needs to use managed identity for database authentication. Which Azure hosting option supports this requirement while also providing automatic scaling based on request volume?" |
| 47 | + choices: |
| 48 | + - content: "Azure Virtual Machines with autoscale sets" |
| 49 | + isCorrect: false |
| 50 | + explanation: "Incorrect. While VMs support managed identity, they require manual configuration and don't provide the same level of managed scaling as container-based services." |
| 51 | + - content: "Azure Container Apps with system-assigned managed identity" |
| 52 | + isCorrect: true |
| 53 | + explanation: "Correct. Azure Container Apps supports managed identity for secure database authentication and provides automatic scaling from zero based on HTTP request volume." |
| 54 | + - content: "Azure Functions consumption plan" |
| 55 | + isCorrect: false |
| 56 | + explanation: "Incorrect. While Azure Functions supports managed identity and scaling, Data API Builder runs as a container or standalone process, not as a Functions app." |
| 57 | + - content: "Azure Static Web Apps database connections" |
| 58 | + isCorrect: false |
| 59 | + explanation: "Incorrect. While Static Web Apps has built-in DAB integration, it has limitations compared to standalone deployments and can't support all managed identity scenarios." |
| 60 | + - content: "You need to monitor your Data API Builder deployment and create alerts when the 95th percentile response time exceeds 2 seconds. Which Azure service and query approach should you use?" |
| 61 | + choices: |
| 62 | + - content: "Azure Monitor metrics with a threshold alert on average response time" |
| 63 | + isCorrect: false |
| 64 | + explanation: "Incorrect. Average response time doesn't capture the 95th percentile. You need log-based queries in Application Insights to calculate percentile metrics." |
| 65 | + - content: "Application Insights with a Kusto query using the percentile() function on request duration" |
| 66 | + isCorrect: true |
| 67 | + explanation: "Correct. Application Insights captures request telemetry, and Kusto queries with percentile(duration, 95) let you create alerts based on the 95th percentile latency." |
| 68 | + - content: "Log Analytics with container CPU metrics" |
| 69 | + isCorrect: false |
| 70 | + explanation: "Incorrect. CPU metrics don't measure response time. You need Application Insights request telemetry to track API response durations." |
| 71 | + - content: "Azure Monitor health probes configured with a 2-second timeout" |
| 72 | + isCorrect: false |
| 73 | + explanation: "Incorrect. Health probes check availability, not response time distribution. You need Application Insights analytics for percentile-based monitoring." |
0 commit comments