Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Microsoft. Identity.Web adalah sekumpulan pustaka yang menyederhanakan penambahan autentikasi dan otorisasi ke aplikasi yang terintegrasi dengan platform identitas Microsoft, termasuk Microsoft Entra ID. Ini mendukung:
- .NET Aspire aplikasi terdistribusi
- ASP.NET Core aplikasi web dan API web
- aplikasi OWIN pada .NET Framework
- .NET aplikasi daemon dan layanan latar belakang
Baik Anda membuat aplikasi web yang memasukkan pengguna, API web yang memvalidasi token, atau layanan latar belakang yang memanggil API yang dilindungi, Microsoft. Identity.Web menangani kompleksitas autentikasi untuk Anda.
Mengapa menggunakan Microsoft Identity Web?
Microsoft. Identity.Web mengurangi kode boilerplate dan menyediakan praktik terbaik bawaan untuk skenario identitas umum. Kemampuan utama meliputi:
- Autentikasi yang disederhanakan - Konfigurasi minimal untuk pengguna yang masuk dan memvalidasi token
-
Panggilan API downstream - Memanggil Microsoft Graph, Azure SDK, atau API Anda sendiri yang dilindungi dengan manajemen token otomatis
- Akuisisi token - Memperoleh token atas nama pengguna atau aplikasi Anda
- Token manajemen cache - Dukungan cache terdistribusi dengan Redis, SQL Server, Cosmos DB, dan PostgreSQL
- Beberapa jenis kredensial - Dukungan untuk sertifikat, identitas terkelola, dan autentikasi tanpa sertifikat
- Header otorisasi otomatis - Autentikasi ditangani secara transparan saat memanggil API
Lihat paket NuGet untuk gambaran umum semua paket yang tersedia dan kapan menggunakannya.
Memanggil API dengan autentikasi otomatis
Anda dapat memanggil API yang dilindungi tanpa mengelola token secara manual. Microsoft. Identity.Web mendukung pola integrasi berikut:
-
Microsoft Graph - Gunakan
GraphServiceClientdengan akuisisi token otomatis -
Azure SDK - Gunakan implementasi
TokenCredentialyang terintegrasi dengan Microsoft. Identity.Web -
API Anda sendiri - Gunakan
IDownstreamApiatauIAuthorizationHeaderProvideruntuk panggilan API yang mulus - Identitas agen - Panggil API atas nama identitas terkelola atau perwakilan layanan dengan penanganan kredensial otomatis
Header autentikasi ditambahkan ke permintaan Anda secara otomatis, dan token diperoleh dan di-cache secara transparan. Untuk detailnya, lihat Memanggil API hilir, aplikasi Daemon, dan panduan Identitas agen.
Pendekatan konfigurasi
Anda dapat mengonfigurasi Microsoft. Identity.Web melalui file pengaturan atau secara terprogram. Kedua pendekatan mendukung semua skenario autentikasi.
Konfigurasi menurut file (disarankan)
Konfigurasikan autentikasi di appsettings.json:
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"TenantId": "your-tenant-id",
"ClientId": "your-client-id"
}
}
Penting
Untuk aplikasi daemon dan aplikasi konsol, pastikan file Anda appsettings.json disalin ke direktori output. Di Visual Studio, atur properti Copy to Output Directory ke Copy if newer atau Copy always, atau tambahkan yang berikut ke .csproj Anda:
<ItemGroup>
<None Update="appsettings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
Konfigurasi menurut kode
Atau, konfigurasikan autentikasi langsung dalam kode startup aplikasi Anda:
builder.Services.AddAuthentication(OpenIdConnectDefaults.AuthenticationScheme)
.AddMicrosoftIdentityWebApp(options =>
{
options.Instance = "https://login.microsoftonline.com/";
options.TenantId = "your-tenant-id";
options.ClientId = "your-client-id";
});
Langkah berikutnya
Pilih skenario yang cocok dengan aplikasi Anda:
- Aplikasi Web - Masukkan pengguna - Tambahkan otentikasi ke aplikasi web ASP.NET Core Anda
- Web API - Lindungi API Anda - Amankan API web ASP.NET Core Anda dengan token pembawa
- Aplikasi Daemon - API Panggilan - Bangun layanan latar belakang yang memanggil API yang dilindungi