How Should Apps Access Foundry and Select a Deployment?

Answer Use Microsoft Entra ID authentication with a managed identity for each app, and include the deployment name in the REST API URL to select the optimized GPT-3.5 deployment.

HOTSPOT You have a Microsoft Foundry resource named AI1 that hosts three deployments of the GPT 3.5 model. Each deployment is optimized for a unique workload. You plan to deploy three apps. Each app will access AI1 by using the REST API and will use the deployment that was optimized for the app’s intended workload. You need to provide each app with access to AI1 and the appropriate deployment. The solution must ensure that only the apps can access AI1. What should you use to provide access to AI1, and what should each app use to connect to its appropriate deployment? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point. exhibit

Community Insight

Tests identity-based access versus a shared resource key and REST deployment routing; the trap is choosing an API key when the requirement is to restrict callers to the apps themselves.

This AI-103 hotspot asks how three REST API apps should authenticate to a Microsoft Foundry resource and route to separate GPT-3.5 deployments. The page establishes that per-app identity-based access plus the deployment name satisfies the 'only the apps' constraint.

Picking an API key because it is the familiar Azure OpenAI REST credential, but a resource-level key cannot ensure that only the three apps can access AI1.

Community Discussion (3 comments)

Az301301X 👍 3
Provide access to AI1 by using: An API key Connect to the deployment by using: A deployment name
rokoskycloud 👍 1
Provide access to AI1 by using: An API key | It says three apps call a REST API. Connect to the deployment by using: A deployment name | The deployment name is a path segment in the request URL. That's what routes each app to its own tuned deployment of the same underlying model.
AngusSzarpidrut 👍 1
Correct Answer: A — Add a reflection pass before the responses are returned. Why (from Microsoft Learn): • A reflection pass means having the application ask the model to re-check its own draft answer against the retrieved source material for gaps or missing points before the final response is sent back to the user — this is exactly an application-code-level check that can catch and fix incomplete summaries, matching "implemented in the logic of the application code." • Response streaming (B) only changes how the text is delivered to the client (in chunks vs. all at once); it doesn't make the content itself more complete. • Increasing presence_penalty (C) discourages the model from repeating the same tokens/topics, which can actually reduce coverage of a topic rather than improve completeness. • Decreasing max_tokens (D) directly caps how much the model is allowed to write, which would make responses shorter and less complete, the opposite of what's needed here.

Comments & Corrections

No comments yet — spotted an error or have a note? Share it below.

Log in to comment, report an error, or add a note about this question.

Submitted for moderation before publishing. Keep it helpful and respectful.

Expert Analysis

Why the Answer Is Correct

The security constraint "only the apps can access AI1" is an identity requirement, not a key-sharing requirement. In Foundry and Azure AI services, each app can use its own managed identity or service principal, and you grant that identity the appropriate role on AI1, such as Cognitive Services OpenAI User. The REST call then uses the resource endpoint plus the deployment name; the deployment name is the path segment that selects one of the three GPT-3.5 deployments. This gives each app a distinct security principal while still letting all apps call the same Foundry resource.

Why Other Candidate Answers Are Wrong

An API key authenticates at the resource level and is shared by any caller that possesses it, so it cannot enforce "only the apps" if the key leaks or is copied into another app. The GPT-3.5 model name is identical for all three deployments, so it cannot route each app to its optimized deployment. The endpoint or API version identifies the service and contract, not the specific deployment. Only the deployment name distinguishes the three tuned deployments within AI1.

Community Comment Notes

Az301301X and rokoskycloud both lean toward an API key plus a deployment name; rokoskycloud correctly explains that "The deployment name is a path segment in the request URL." The routing half of that answer is right, and the note that multiple tuned deployments can share the same underlying model is useful. However, the access half conflicts with the "only the apps" security wording, which points to per-app identity rather than a shared resource key. A separate comment about a reflection pass belongs to a different scenario and does not address this Foundry access question.

Official Reference

Exam Strategy

Read the security constraint separately from the routing requirement: "only the apps" points to identity-based auth, while "appropriate deployment" points to the deployment name. In REST calls, remember the deployment name is part of the URL path, not the model display name.

Frequently Asked Questions

Why not use one API key for all three apps to access AI1?

A shared key authenticates the resource, not each app, so any holder can call AI1; managed identities let you grant and audit per-app access.

How does each app reach its own GPT-3.5 deployment in Foundry?

The app places the deployment name in the REST URL path; all three deployments can use the same GPT-3.5 model but have different deployment names.

More AI-103 FAQ →

Related Analysis

Practice All AI-103 Questions

Access 88 questions with complete answers and detailed explanations.

View Full AI-103 Practice Test →

← Back to AI-103 Study Guide