Application Insights için Microsoft Entra kimlik doğrulaması
Application Insights artık Microsoft Entra kimlik doğrulamayı destekliyor. Microsoft Entra Id kullanarak Application Insights kaynaklarınıza yalnızca kimliği doğrulanmış telemetrinin alındığından emin olabilirsiniz.
Kimlik bilgilerini büyük ölçekte yönetmek zor olduğundan çeşitli kimlik doğrulama sistemlerinin kullanılması zahmetli ve riskli olabilir. Artık yalnızca yönetilen kimlikler kullanılarak özel olarak doğrulanan telemetri verilerinin kaynağınıza alındığından ve Microsoft Entra Id'nin alındığından emin olmak için yerel kimlik doğrulamasını geri çevirmeyi seçebilirsiniz. Bu özellik, kritik işletimsel (uyarı ve otomatik ölçeklendirme) ve iş kararları almak için kullanılan telemetri verilerinin güvenliğini ve güvenilirliğini artırmaya yönelik bir adımdır.
Önkoşullar
Microsoft Entra kimliği doğrulanmış alımını etkinleştirmek için aşağıdaki ön adımlar gereklidir. Şunları yapmanız gerekir:
- Genel bulutta olun.
- Aşağıdakiler hakkında bilgi sahibi olun:
- Azure yerleşik rollerini kullanarak erişim vermek için kaynak grubunda Sahip rolüne sahip olmak gerekir.
- Desteklenmeyen senaryoları anlayın.
Desteklenmeyen senaryolar
Aşağıdaki Yazılım Geliştirme Setleri (SDK' lar) ve özellikleri Microsoft Entra kimliği doğrulanmış alımıyla kullanılmak üzere desteklenmez:
- Application Insights Java 2.x SDK.
Microsoft Entra kimlik doğrulaması yalnızca 3.2.0'dan büyük veya buna eşit Application Insights Java Aracısı için kullanılabilir. - ApplicationInsights JavaScript web SDK'sı.
- Python sürüm 3.4 ve 3.5 ile Application Insights OpenCensus Python SDK'sı .
- Azure Uygulaması Hizmetinde Python için otomatik izleme
- .NET için Application Insights Profil Oluşturucu.
Microsoft Entra ID tabanlı kimlik doğrulamasını yapılandırma ve etkinleştirme
Henüz bir kimliğiniz yoksa yönetilen kimlik veya hizmet sorumlusu kullanarak bir kimlik oluşturun.
Yönetilen kimlik kullanmanızı öneririz:
Azure hizmetiniz (Sanal Makineler veya App Service) için yönetilen kimlik ayarlayın.
Hizmet sorumlusu kullanmanızı önermeyiz:
Kaynaklara erişebilen bir Microsoft Entra uygulaması ve hizmet sorumlusu oluşturma hakkında daha fazla bilgi için bkz . Hizmet sorumlusu oluşturma.
Gerekli Rol tabanlı erişim denetimi (RBAC) rolünü Azure kimliğine, hizmet sorumlusuna veya Azure kullanıcı hesabına atayın.
Hedef Application Insights kaynağını rol kapsamı olarak ayarlayarak beklenen kimliğe, hizmet sorumlusuna veya Azure kullanıcı hesabına İzleme Ölçümleri Yayımcısı rolünü eklemek için Azure rollerini atama başlığı altında yer alan adımları izleyin.
Not
İzleme Ölçümleri Yayımcısı rolü "ölçümler" dese de tüm telemetri verilerini Application Insights kaynağında yayımlar.
Aşağıdaki dile uygun olarak yapılandırma yönergelerini izleyin.
Not
- Application Insights .NET SDK'sında Microsoft Entra Id desteği 2.18-Beta3 sürümünden itibaren eklenmiştir.
- Azure Identity tarafından sağlanan kimlik bilgisi sınıflarını destekliyoruz.
- Yerel geliştirme için önerilir
DefaultAzureCredential
. - Visual Studio'da beklenen Azure kullanıcı hesabıyla kimlik doğrulaması. Daha fazla bilgi için bkz . Visual Studio aracılığıyla kimlik doğrulaması yapma.
- Sistem tarafından atanan ve kullanıcı tarafından atanan yönetilen kimlikler için önerilir
ManagedIdentityCredential
.- Sistem tarafından atanan için parametresiz varsayılan oluşturucuyu kullanın.
- Kullanıcı tarafından atanan için oluşturucuya istemci kimliğini sağlayın.
En son Azure.Identity paketini yükleyin:
dotnet add package Azure.Identity
İstenen kimlik bilgisi sınıfını belirtin:
// Create a new ASP.NET Core web application builder. var builder = WebApplication.CreateBuilder(args); // Add the OpenTelemetry telemetry service to the application. // This service will collect and send telemetry data to Azure Monitor. builder.Services.AddOpenTelemetry().UseAzureMonitor(options => { // Set the Azure Monitor credential to the DefaultAzureCredential. // This credential will use the Azure identity of the current user or // the service principal that the application is running as to authenticate // to Azure Monitor. options.Credential = new DefaultAzureCredential(); }); // Build the ASP.NET Core web application. var app = builder.Build(); // Start the ASP.NET Core web application. app.Run();
Ortam değişkeni yapılandırması
Application Insights'ın APPLICATIONINSIGHTS_AUTHENTICATION_STRING
Azure Uygulaması Hizmetleri otomatik dağıtımını kullanırken Microsoft Entra Id'de kimlik doğrulaması yapmasına ve telemetri göndermesine izin vermek için ortam değişkenini kullanın.
- Sistem tarafından atanan kimlik için:
Uygulama ayarı | Değer |
---|---|
APPLICATIONINSIGHTS_AUTHENTICATION_STRING | Authorization=AAD |
- Kullanıcı tarafından atanan kimlik için:
Uygulama ayarı | Değer |
---|---|
APPLICATIONINSIGHTS_AUTHENTICATION_STRING | Authorization=AAD;ClientId={Client id of the User-Assigned Identity} |
El ile yapılandırma
Aşağıdaki örnekte .NET Core kullanarak yapılandırma TelemetryConfiguration
gösterilmektedir:
services.Configure<TelemetryConfiguration>(config =>
{
var credential = new DefaultAzureCredential();
config.SetAzureTokenCredential(credential);
});
services.AddApplicationInsightsTelemetry(new ApplicationInsightsServiceOptions
{
ConnectionString = "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://xxxx.applicationinsights.azure.com/"
});
Microsoft Entra kimlik doğrulamayı kullanarak Application Insights'u sorgulama
Azure İzleyici Application Insights uç noktasını https://api.applicationinsights.io
kullanarak sorgu isteği gönderebilirsiniz. Uç noktaya erişmek için Microsoft Entra Id aracılığıyla kimlik doğrulaması yapmanız gerekir.
Kimlik doğrulaması kurulumu
API'ye erişmek için Microsoft Entra Id ile bir istemci uygulaması kaydeder ve belirteç isteyebilirsiniz.
Bir uygulamayı Microsoft Entra Id'ye kaydedin.
Uygulamanın genel bakış sayfasında API izinleri'ni seçin.
İzin ekle'yi seçin.
Kuruluşumun kullandığı API'ler sekmesinde Application Insights'ı arayın ve listeden Application Insights API'sini seçin.
Atanan izinler'i seçin.
Data.Read onay kutusunu seçin.
İzinler ekle'yi seçin.
Uygulamanız artık kayıtlı olduğuna ve API'yi kullanma izinlerine sahip olduğuna göre uygulamanıza Application Insights kaynağınıza erişim izni verin.
Application Insights kaynağına genel bakış sayfanızdan Erişim denetimi (IAM) öğesini seçin.
Rol ataması ekle’yi seçin.
Okuyucu rolünü ve ardından Üyeler'i seçin.
Üyeler sekmesinde Üye seç'i seçin.
Seç kutusuna uygulamanızın adını girin.
Uygulamanızı seçin ve Seç'i seçin.
Gözden geçir + ata'yı seçin.
Active Directory kurulumunu ve izinlerini tamamladıktan sonra bir yetkilendirme belirteci isteyin.
Not
Bu örnekte Okuyucu rolünü uyguladık. Bu rol birçok yerleşik rolden biridir ve ihtiyacınız olandan daha fazla izin içerebilir. Daha ayrıntılı roller ve izinler oluşturulabilir.
Yetkilendirme belirteci isteme
Başlamadan önce, isteği başarıyla yapmak için gereken tüm değerlere sahip olduğunuzdan emin olun. Tüm istekler şunları gerektirir:
- Microsoft Entra kiracı kimliğiniz.
- App Insights Uygulama Kimliğiniz - Şu anda API Anahtarları kullanıyorsanız, bu aynı uygulama kimliğidir.
- Uygulama için Microsoft Entra istemci kimliğiniz.
- Uygulama için bir Microsoft Entra istemci gizli dizisi.
Application Insights API'si, üç farklı Microsoft Entra ID OAuth2 akışıyla Microsoft Entra kimlik doğrulamasını destekler:
- İstemci kimlik bilgileri
- Yetki kodu
- Örtük
İstemci kimlik bilgileri akışı
İstemci kimlik bilgileri akışında, belirteç Application Insights uç noktasıyla birlikte kullanılır. Bir uygulamayı Microsoft Entra Id'ye kaydettiğinizde önceki adımda uygulamanız için sağlanan kimlik bilgileri kullanılarak belirteç almak için tek bir istek yapılır.
Uç noktayı https://api.applicationinsights.io
kullanın.
İstemci kimlik bilgileri belirteci URL'si (POST isteği)
POST /<your-tenant-id>/oauth2/token
Host: https://login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials
&client_id=<app-client-id>
&resource=https://api.applicationinsights.io
&client_secret=<app-client-secret>
Başarılı bir istek yanıtta bir erişim belirteci alır:
{
token_type": "Bearer",
"expires_in": "86399",
"ext_expires_in": "86399",
"access_token": "eyJ0eXAiOiJKV1QiLCJ.....Ax"
}
Application Insights uç noktasına yapılan isteklerde belirteci kullanın:
POST /v1/apps/yous_app_id/query?timespan=P1D
Host: https://api.applicationinsights.io
Content-Type: application/json
Authorization: Bearer <your access token>
Body:
{
"query": "requests | take 10"
}
Örnek yanıt:
"tables": [
{
"name": "PrimaryResult",
"columns": [
{
"name": "timestamp",
"type": "datetime"
},
{
"name": "id",
"type": "string"
},
{
"name": "source",
"type": "string"
},
{
"name": "name",
"type": "string"
},
{
"name": "url",
"type": "string"
},
{
"name": "success",
"type": "string"
},
{
"name": "resultCode",
"type": "string"
},
{
"name": "duration",
"type": "real"
},
{
"name": "performanceBucket",
"type": "string"
},
{
"name": "customDimensions",
"type": "dynamic"
},
{
"name": "customMeasurements",
"type": "dynamic"
},
{
"name": "operation_Name",
"type": "string"
},
{
"name": "operation_Id",
"type": "string"
},
{
"name": "operation_ParentId",
"type": "string"
},
{
"name": "operation_SyntheticSource",
"type": "string"
},
{
"name": "session_Id",
"type": "string"
},
{
"name": "user_Id",
"type": "string"
},
{
"name": "user_AuthenticatedId",
"type": "string"
},
{
"name": "user_AccountId",
"type": "string"
},
{
"name": "application_Version",
"type": "string"
},
{
"name": "client_Type",
"type": "string"
},
{
"name": "client_Model",
"type": "string"
},
{
"name": "client_OS",
"type": "string"
},
{
"name": "client_IP",
"type": "string"
},
{
"name": "client_City",
"type": "string"
},
{
"name": "client_StateOrProvince",
"type": "string"
},
{
"name": "client_CountryOrRegion",
"type": "string"
},
{
"name": "client_Browser",
"type": "string"
},
{
"name": "cloud_RoleName",
"type": "string"
},
{
"name": "cloud_RoleInstance",
"type": "string"
},
{
"name": "appId",
"type": "string"
},
{
"name": "appName",
"type": "string"
},
{
"name": "iKey",
"type": "string"
},
{
"name": "sdkVersion",
"type": "string"
},
{
"name": "itemId",
"type": "string"
},
{
"name": "itemType",
"type": "string"
},
{
"name": "itemCount",
"type": "int"
}
],
"rows": [
[
"2018-02-01T17:33:09.788Z",
"|0qRud6jz3k0=.c32c2659_",
null,
"GET Reports/Index",
"http://fabrikamfiberapp.azurewebsites.net/Reports",
"True",
"200",
"3.3833",
"<250ms",
"{\"_MS.ProcessedByMetricExtractors\":\"(Name:'Requests', Ver:'1.0')\"}",
null,
"GET Reports/Index",
"0qRud6jz3k0=",
"0qRud6jz3k0=",
"Application Insights Availability Monitoring",
"9fc6738d-7e26-44f0-b88e-6fae8ccb6b26",
"us-va-ash-azr_9fc6738d-7e26-44f0-b88e-6fae8ccb6b26",
null,
null,
"AutoGen_49c3aea0-4641-4675-93b5-55f7a62d22d3",
"PC",
null,
null,
"52.168.8.0",
"Boydton",
"Virginia",
"United States",
null,
"fabrikamfiberapp",
"RD00155D5053D1",
"cf58dcfd-0683-487c-bc84-048789bca8e5",
"fabrikamprod",
"5a2e4e0c-e136-4a15-9824-90ba859b0a89",
"web:2.5.0-33031",
"051ad4ef-0776-11e8-ac6e-e30599af6943",
"request",
"1"
],
[
"2018-02-01T17:33:15.786Z",
"|x/Ysh+M1TfU=.c32c265a_",
null,
"GET Home/Index",
"http://fabrikamfiberapp.azurewebsites.net/",
"True",
"200",
"716.2912",
"500ms-1sec",
"{\"_MS.ProcessedByMetricExtractors\":\"(Name:'Requests', Ver:'1.0')\"}",
null,
"GET Home/Index",
"x/Ysh+M1TfU=",
"x/Ysh+M1TfU=",
"Application Insights Availability Monitoring",
"58b15be6-d1e6-4d89-9919-52f63b840913",
"emea-se-sto-edge_58b15be6-d1e6-4d89-9919-52f63b840913",
null,
null,
"AutoGen_49c3aea0-4641-4675-93b5-55f7a62d22d3",
"PC",
null,
null,
"51.141.32.0",
"Cardiff",
"Cardiff",
"United Kingdom",
null,
"fabrikamfiberapp",
"RD00155D5053D1",
"cf58dcfd-0683-487c-bc84-048789bca8e5",
"fabrikamprod",
"5a2e4e0c-e136-4a15-9824-90ba859b0a89",
"web:2.5.0-33031",
"051ad4f0-0776-11e8-ac6e-e30599af6943",
"request",
"1"
]
]
}
]
}
Yetkilendirme kodu akışı
Desteklenen ana OAuth2 akışı yetkilendirme kodları aracılığıyla yapılır. Bu yöntem, Azure İzleyici Application Insights API'sinin çağrıldığı bir belirteç almak için iki HTTP isteği gerektirir. İstek başına bir uç nokta içeren iki URL vardır. Biçimleri aşağıdaki bölümlerde açıklanmıştır.
Yetkilendirme kodu URL'si (GET isteği)
GET https://login.microsoftonline.com/YOUR_Azure AD_TENANT/oauth2/authorize?
client_id=<app-client-id>
&response_type=code
&redirect_uri=<app-redirect-uri>
&resource=https://api.applicationinsights.io
Yetkili URL'ye istekte bulunulduğunda, client\_id
microsoft Entra uygulamanızın uygulama kimliğidir ve uygulamanın özellikler menüsünden kopyalanır. , redirect\_uri
aynı Microsoft Entra uygulamasındaki URL'dir homepage/login
. bir istek başarılı olduğunda, bu uç nokta sizi url'ye eklenen yetkilendirme koduyla birlikte kayıt sırasında sağladığınız oturum açma sayfasına yönlendirir. Aşağıdaki örneğe bakın:
http://<app-client-id>/?code=AUTHORIZATION_CODE&session_state=STATE_GUID
Bu noktada, şimdi erişim belirteci istemek için kullandığınız bir yetkilendirme kodu alırsınız.
Yetkilendirme kodu belirteci URL'si (POST isteği)
POST /YOUR_Azure AD_TENANT/oauth2/token HTTP/1.1
Host: https://login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code
&client_id=<app client id>
&code=<auth code fom GET request>
&redirect_uri=<app-client-id>
&resource=https://api.applicationinsights.io
&client_secret=<app-client-secret>
Tüm değerler, bazı eklemelerle öncekiyle aynıdır. Yetkilendirme kodu, başarılı bir yeniden yönlendirmeden sonra önceki istekte aldığınız kodla aynıdır. Kod, Microsoft Entra uygulamasından alınan anahtarla birleştirilir. Anahtarı kaydetmediyseniz, microsoft Entra uygulama menüsünün tuşlar sekmesinden anahtarı silebilir ve yeni bir anahtar oluşturabilirsiniz. Yanıt, aşağıdaki şemaya sahip belirteci içeren bir JSON dizesidir. Belirteç değerleri için türler gösterilir.
Yanıt örneği:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJ.....Ax",
"expires_in": "3600",
"ext_expires_in": "1503641912",
"id_token": "not_needed_for_app_insights",
"not_before": "1503638012",
"refresh_token": "eyJ0esdfiJKV1ljhgYF.....Az",
"resource": "https://api.applicationinsights.io",
"scope": "Data.Read",
"token_type": "bearer"
}
Bu yanıtın erişim belirteci bölümü, üst bilgideki Application Insights API'sine Authorization: Bearer
sunabileceğiniz değerdir. Gelecekte yenileme belirtecini kullanarak yeni bir access_token edinebilir ve eskidiğinde refresh_token. Bu istek için biçim ve uç nokta şunlardır:
POST /YOUR_AAD_TENANT/oauth2/token HTTP/1.1
Host: https://login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded
client_id=<app-client-id>
&refresh_token=<refresh-token>
&grant_type=refresh_token
&resource=https://api.applicationinsights.io
&client_secret=<app-client-secret>
Yanıt örneği:
{
"token_type": "Bearer",
"expires_in": "3600",
"expires_on": "1460404526",
"resource": "https://api.applicationinsights.io",
"access_token": "eyJ0eXAiOiJKV1QiLCJ.....Ax",
"refresh_token": "eyJ0esdfiJKV1ljhgYF.....Az"
}
Örtük kod akışı
Application Insights API'si OAuth2 örtük akışını destekler. Bu akış için yalnızca tek bir istek gereklidir, ancak yenileme belirteci alınamıyor.
Örtük kod yetkilendirme URL'si
GET https://login.microsoftonline.com/YOUR_AAD_TENANT/oauth2/authorize?
client_id=<app-client-id>
&response_type=token
&redirect_uri=<app-redirect-uri>
&resource=https://api.applicationinsights.io
Başarılı bir istek, URL'deki belirteçle yeniden yönlendirme URI'nize bir yeniden yönlendirme oluşturur:
http://YOUR_REDIRECT_URI/#access_token=YOUR_ACCESS_TOKEN&token_type=Bearer&expires_in=3600&session_state=STATE_GUID
Bu access_token, istekleri yetkilendirmek için Application Insights API'sine geçtiğinde üst bilgi değeri olarak Authorization: Bearer
görev alır.
Yerel kimlik doğrulamayı devre dışı bırakma
Microsoft Entra kimlik doğrulaması etkinleştirildikten sonra yerel kimlik doğrulamasını devre dışı bırakabilirsiniz. Bu yapılandırma, yalnızca Microsoft Entra Id tarafından kimliği doğrulanmış telemetriyi almanızı sağlar ve veri erişimini etkiler (örneğin, API anahtarları aracılığıyla).
Azure portalını veya Azure İlkesi veya program aracılığıyla yerel kimlik doğrulamasını devre dışı bırakabilirsiniz.
Azure portal
Application Insights kaynağınızdan soldaki menüde Yapılandır'ın altında Özellikler'i seçin. Yerel kimlik doğrulaması etkinse Etkin'i (değiştirmek için tıklayın) seçin.
Devre dışı'yı seçin ve değişiklikleri uygulayın.
Kaynağınızda yerel kimlik doğrulamasını devre dışı bırakdıktan sonra, genel bakış bölmesinde ilgili bilgileri görürsünüz.
Azure İlkesi
için DisableLocalAuth
Azure İlkesi, kullanıcıların bu özellik olarak ayarlanmadan true
yeni bir Application Insights kaynağı oluşturma yeteneğini reddeder. İlke adı şeklindedir Application Insights components should block non-Azure Active Directory based ingestion
.
Bu ilke tanımını aboneliğinize uygulamak için yeni bir ilke ataması oluşturun ve ilkeyi atayın.
Aşağıdaki örnekte ilke şablonu tanımı gösterilmektedir:
{
"properties": {
"displayName": "Application Insights components should block non-Azure Active Directory based ingestion",
"policyType": "BuiltIn",
"mode": "Indexed",
"description": "Improve Application Insights security by disabling log ingestion that are not AAD-based.",
"metadata": {
"version": "1.0.0",
"category": "Monitoring"
},
"parameters": {
"effect": {
"type": "String",
"metadata": {
"displayName": "Effect",
"description": "The effect determines what happens when the policy rule is evaluated to match"
},
"allowedValues": [
"audit",
"deny",
"disabled"
],
"defaultValue": "audit"
}
},
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.Insights/components"
},
{
"field": "Microsoft.Insights/components/DisableLocalAuth",
"notEquals": "true"
}
]
},
"then": {
"effect": "[parameters('effect')]"
}
}
}
}
Program aracılığıyla etkinleştirme
özelliği DisableLocalAuth
, Application Insights kaynağınızda yerel kimlik doğrulamasını devre dışı bırakmak için kullanılır. Bu özellik olarak true
ayarlandığında, tüm erişimler için Microsoft Entra kimlik doğrulamasının kullanılması gerekir.
Aşağıdaki örnekte, çalışma alanı tabanlı application insights kaynağı LocalAuth
oluşturmak için kullanabileceğiniz Azure Resource Manager şablonu devre dışı bırakılmıştır.
{
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"type": "string"
},
"type": {
"type": "string"
},
"regionId": {
"type": "string"
},
"tagsArray": {
"type": "object"
},
"requestSource": {
"type": "string"
},
"workspaceResourceId": {
"type": "string"
},
"disableLocalAuth": {
"type": "bool"
}
},
"resources": [
{
"name": "[parameters('name')]",
"type": "microsoft.insights/components",
"location": "[parameters('regionId')]",
"tags": "[parameters('tagsArray')]",
"apiVersion": "2020-02-02-preview",
"dependsOn": [],
"properties": {
"Application_Type": "[parameters('type')]",
"Flow_Type": "Redfield",
"Request_Source": "[parameters('requestSource')]",
"WorkspaceResourceId": "[parameters('workspaceResourceId')]",
"DisableLocalAuth": "[parameters('disableLocalAuth')]"
}
}
]
}
Belirteç hedef kitlesi
Application Insights'a telemetri göndermek için Microsoft Entra ID'den erişim belirteci almak üzere özel bir istemci geliştirirken, belirli bir konak ortamınız için uygun hedef kitle dizesini belirlemek için aşağıdaki tabloya bakın.
Azure bulut sürümü | Belirteç hedef kitlesi değeri |
---|---|
Azure genel bulutu | https://monitor.azure.com |
21Vianet bulutu tarafından sağlanan Microsoft Azure | https://monitor.azure.cn |
Azure US Government bulutu | https://monitor.azure.us |
Bağımsız bulutlar kullanıyorsanız hedef kitle bilgilerini bağlantı dizesi de bulabilirsiniz. bağlantı dizesi şu yapıyı izler:
InstrumentationKey={profile. InstrumentationKey}; IngestionEndpoint={ingestionEndpoint}; LiveEndpoint={liveDiagnosticsEndpoint}; AADAudience={aadAudience}
Audience parametresi olan AADAudience, ortamınıza bağlı olarak farklılık gösterebilir.
Sorun giderme
Bu bölümde, destek bileti oluşturmadan önce sorunu çözmek için uygulayabileceğiniz farklı sorun giderme senaryoları ve adımları sağlanır.
ALMA HTTP hataları
Alma hizmeti, SDK dilinden bağımsız olarak belirli hataları döndürür. Ağ trafiği Fiddler gibi bir araç kullanılarak toplanabilir. bağlantı dizesi alınan uç noktaya gelen trafiği filtrelemeniz gerekir.
HTTP/1.1 400 Kimlik Doğrulaması desteklenmiyor
Bu hata, kaynağın Microsoft Entra-only için ayarlandığını gösterir. SDK yanlış API'ye gönderdiğinden doğru yapılandırmanız gerekir.
Not
"v2/track" Microsoft Entra Id'yi desteklemez. SDK doğru yapılandırıldığında, telemetri adresine v2.1/track
gönderilir.
Ardından SDK yapılandırmasını gözden geçirmeniz gerekir.
HTTP/1.1 401 Yetkilendirme gerekiyor
Bu hata SDK'nın doğru yapılandırıldığını ancak geçerli bir belirteç alamadığını gösterir. Bu hata, Microsoft Entra Kimliği ile ilgili bir sorunu gösterebilir.
Ardından, SDK günlüklerindeki özel durumları veya Azure Identity'den gelen ağ hatalarını tanımlamanız gerekir.
HTTP/1.1 403 Yetkisiz
Bu hata, SDK'nın Application Insights kaynağı veya aboneliği için izni olmayan kimlik bilgilerini kullandığı anlamına gelir.
İlk olarak Application Insights kaynağının erişim denetimini denetleyin. SDK'yi İzleme Ölçümleri Yayımcısı rolüne sahip kimlik bilgileriyle yapılandırmanız gerekir.
Dile özgü sorun giderme
Application Insights .NET SDK'sı, olay kaynağını kullanarak hata günlüklerini yayar. Olay kaynak günlüklerini toplama hakkında daha fazla bilgi edinmek için bkz . Veri yok sorunlarını giderme - PerfView ile günlükleri toplama.
SDK belirteç alamazsa, özel durum iletisi olarak Failed to get AAD Token. Error message:
günlüğe kaydedilir.