Sampel kode platform identitas Microsoft

Sampel kode ini dibuat serta dikelola oleh Microsoft guna menunjukkan penggunaan pustaka autentikasi kami dengan platform identitas Microsoft. Skenario autentikasi dan otorisasi umum diimplementasikan dalam beberapa jenis aplikasi, bahasa pengembangan, serta kerangka kerja.

  • Masukkan pengguna ke aplikasi web dan berikan akses resmi ke API web terlindungi.
  • Lindungi API web dengan memerlukan token akses untuk melakukan operasi API.

Setiap sampel kode menyertakan file README.md yang menjelaskan cara membuat proyek (jika ada) serta menjalankan aplikasi sampel. Komentar di dalam kode akan membantu Anda memahami bagaimana pustaka ini digunakan dalam aplikasi guna melakukan autentikasi serta otorisasi dengan menggunakan platform identitas.

Sampel dan panduan

Gunakan tab untuk mengurutkan sampel menurut jenis aplikasi, atau bahasa/kerangka kerja pilihan Anda.

Aplikasi satu halaman

Sampel ini menunjukkan cara menulis aplikasi satu halaman yang diamankan dengan platform identitas Microsoft. Sampel ini menggunakan salah satu rasa MSAL.js.

Bahasa/
Platform
Sampel kode
di GitHub
Aut
pustaka
Aliran otorisasi
Sudut Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Api web Call ASP.NET Core
Api web Call ASP.NET Core (B2C)
Memanggil Microsoft Graph melalui OBO
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Kelompok Keamanan untuk kontrol akses
Menyebarkan ke Azure Storage dan App Service
MSAL Angular • Kode otorisasi dengan PKCE
• Atas nama (OBO)
• Evaluasi Akses Berkelanjutan (CAE)
Blazor WebAssembly Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Menyebarkan ke Azure App Service
MSAL.js Alur Implisit
JavaScript Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Memanggil API web Node.js
Memanggil API web Node.js (B2C)
Menyebarkan ke Azure Storage dan App Service
MSAL.js • Kode otorisasi dengan PKCE
React Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Pengguna masuk di aplikasi sisi server dan klien
Memanggil Microsoft Graph
Panggil Azure REST API dan Azure Storage
Memanggil API web Node.js
Memanggil API web Node.js (B2C)
Memanggil Microsoft Graph melalui OBO
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Kelompok Keamanan untuk kontrol akses
Menyebarkan ke Azure Static Web Apps
Gunakan autentikasi langkah-up untuk memanggil API web Node.js
MSAL React • Kode otorisasi dengan PKCE
• Atas nama (OBO)
• Akses Bersyarah
• Konteks Autentikasi Akses Bersyar (akr)
• Evaluasi Akses Berkelanjutan (CAE)

Aplikasi web

Sampel berikut ini menggambarkan aplikasi web yang memasukkan pengguna. Beberapa sampel juga menunjukkan aplikasi yang memanggil Microsoft Graph, atau API web Anda sendiri dengan identitas pengguna.

Bahasa/
Platform
Contoh kode
di GitHub
Aut
pustaka
Aliran otorisasi
Inti ASP.NET Seri Inti ASP.NET
Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Menyesuaikan cache token
Memanggil Graph (multi-penyewa)
Memanggil REST API Azure
Melindungi API web
Melindungi API web (B2C)
Melindungi API web multi-penyewa
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Kelompok Keamanan untuk kontrol akses
Menyebarkan ke Azure Storage dan App Service
Microsoft.Identity.Web • OpenID connect
• Kode otorisasi
• Atas nama
Blazor Seri Server Blazor
Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Memanggil API web
Memanggil API web (B2C)
MSAL.NET Aliran hibrid
Inti ASP.NET Skenario Singgahan Token Tingkat Lanjut Microsoft.Identity.Web On-Behalf-Of (OBO)
Inti ASP.NET Menggunakan konteks autentikasi Akses Bersyarat untuk melakukan autentikasi step-up Microsoft.Identity.Web Kode otorisasi
Inti ASP.NET Layanan Federasi Direktori Aktif ke migrasi Microsoft Entra MSAL.NET •SAML
• OpenID connect
ASP.NET Sampel Pelatihan Microsoft Graph
Memasukkan pengguna dan memanggil Microsoft Graph
Memasukkan pengguna dan memanggil Microsoft Graph dengan cakupan terbatas admin
Memulai Cepat: Masukkan Pengguna
MSAL.NET • OpenID connect
• Kode otorisasi
Java

Spring
Seri Microsoft Entra Spring Boot Starter
Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Grup untuk kontrol akses
Menyebarkan ke Azure App Service
Melindungi API web
MSAL Java
• Microsoft Entra ID Boot Starter
Kode otorisasi
Java

Servlet
Seri Servlet spring-less
Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Kelompok Keamanan untuk kontrol akses
Menyebarkan ke Azure App Service
MSAL Java Kode otorisasi
Node.js

Ekspres
Seri aplikasi web ekspres
Mulai cepat: pengguna masuk
Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Panggil Microsoft Graph melalui proksi BFF
Menyebarkan ke Azure App Service
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Kelompok Keamanan untuk kontrol akses
MSAL Node • Kode otorisasi
• Proksi backend-for-Frontend (BFF)
Python

Flask
Seri Flask
Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Templat untuk masuk ke Microsoft Entra ID atau pengguna B2C, dan secara opsional memanggil API hilir (Microsoft Graph)
Memanggil Microsoft Graph
Menyebarkan ke Azure App Service
MSAL Python Kode otorisasi
Python

Django
Seri Django
Memasukkan Pengguna
Memasukkan Pengguna (B2C)
Memanggil Microsoft Graph
Menyebarkan ke Azure App Service
MSAL Python Kode otorisasi
Ruby Pelatihan Grafik
Memasukkan pengguna dan memanggil Microsoft Graph
OmniAuth OAuth2 Kode otorisasi

API Web

Sampel berikut menunjukkan cara melindungi API web dengan platform identitas Microsoft, dan cara memanggil API hilir dari API web.

Bahasa/
Platform
Sampel kode
di GitHub
Aut
pustaka
Aliran otorisasi
ASP.NET Memanggil Microsoft Graph MSAL.NET On-Behalf-Of (OBO)
Inti ASP.NET Memasukkan pengguna dan memanggil Microsoft Graph MSAL.NET On-Behalf-Of (OBO)
Java Memasukkan pengguna MSAL Java On-Behalf-Of (OBO)
Node.js Melindungi API web Node.js
Melindungi API Web Node.js dengan Azure Active Directory B2C
MSAL Node Token pembawa otorisasi

Desktop

Sampel berikut memperlihatkan aplikasi desktop klien publik yang mengakses API Microsoft Graph atau API web Anda sendiri atas nama pengguna. Terlepas dari sampel Desktop (Konsol) dengan Web Authentication Manager (WAM), semua aplikasi klien ini menggunakan Microsoft Authentication Library (MSAL).

Bahasa/
Platform
Sampel kode
di GitHub
Aut
pustaka
Aliran otorisasi
.NET Core Memanggil Microsoft Graph
Memanggil Microsoft Graph dengan cache token
Panggil Microsoft Graph dengan HTML UI web kustom
Memanggil Microsoft Graph dengan browser web kustom
Memasukkan pengguna dengan alur kode perangkat
Mengautentikasi pengguna dengan MSAL.NET dalam aplikasi desktop WinUI
MSAL.NET • Kode otorisasi dengan PKCE
• Kode perangkat
.NET Memanggil API yang dilindungi dengan NTLM terintegrasi MSAL.NET Autentikasi Windows yang terintegrasi
Java Memanggil Microsoft Graph MSAL Java Autentikasi Windows yang terintegrasi
Node.js Memasukkan pengguna MSAL Node Kode otorisasi dengan PKCE
.NET Core Memanggil Microsoft Graph dengan memasukkan pengguna menggunakan nama pengguna/kata sandi MSAL.NET Info Masuk Kata Sandi Pemilik Sumber Daya
Python Memasukkan pengguna MSAL Python Info Masuk Kata Sandi Pemilik Sumber Daya
Platform Jendela Universal (UWP) Memanggil Microsoft Graph MSAL.NET Manajer akun web
Windows Presentation Foundation (WPF) Memasukkan pengguna dan memanggil Microsoft Graph MSAL.NET Kode otorisasi dengan PKCE
Windows Presentation Foundation (WPF) Memasukkan pengguna dan memanggil API web ASP.NET Core
Memasukkan pengguna dan memanggil Microsoft Graph
MSAL.NET Kode otorisasi dengan PKCE

Seluler

Sampel berikut menampilkan aplikasi seluler klien publik yang mengakses API Microsoft Graph. Aplikasi klien ini menggunakan Microsoft Authentication Library (MSAL).

Layanan / daemon

Sampel berikut menunjukkan aplikasi yang mengakses API Microsoft Graph dengan identitasnya sendiri (tanpa pengguna).

Bahasa/
Platform
Sampel kode
di GitHub
Aut
pustaka
Aliran otorisasi
.NET Core Memanggil Microsoft Graph
Memanggil API web
Menggunakan identitas terkelola dan Azure Key Vault
MSAL.NET Pemberian kredensial klien
ASP.NET Multi-penyewa dengan titik akhir platform identitas Microsoft MSAL.NET Pemberian kredensial klien
Java Memanggil Microsoft Graph dengan Rahasia
Memanggil Microsoft Graph dengan Sertifikat
MSAL Java Pemberian kredensial klien
Node.js Hubungi Microsoft Graph secara rahasia MSAL Node Pemberian kredensial klien
Python Memanggil Microsoft Graph secara rahasia
Memanggil Microsoft Graph dengan sertifikat
MSAL Python Pemberian kredensial klien

Azure Functions sebagai API web

Sampel berikut menunjukkan cara melindungi Azure Function dengan HttpTrigger dan mengekspos API web dengan platform identitas Microsoft, dan cara memanggil API hilir dari API web.

Bahasa/
Platform
Sampel kode
di GitHub
Aut
pustaka
Aliran otorisasi
.NET API web fungsi .NET Azure diamankan oleh MICROSOFT Entra ID MSAL.NET Kode otorisasi
Python API web fungsi Python Azure diamankan oleh MICROSOFT Entra ID MSAL Python Kode otorisasi

Browserless (Headless)

Contoh berikut menunjukkan aplikasi klien publik yang berjalan di perangkat tanpa browser web. Aplikasi ini dapat menjadi alat baris perintah, aplikasi yang berjalan di Linux atau Mac, atau aplikasi IoT. Sampel menampilkan aplikasi yang mengakses API Microsoft Graph, atas nama pengguna yang masuk secara interaktif di perangkat lain (seperti ponsel). Aplikasi klien ini menggunakan Microsoft Authentication Library (MSAL).

Bahasa/
Platform
Sampel kode
di GitHub
Aut
pustaka
Aliran otorisasi
.NET Core Memanggil API yang dilindungi dari perangkat khusus teks MSAL.NET Kode perangkat
Java Masuk pengguna dan aktifkan API yang dilindungi dari perangkat teks saja MSAL Java Kode perangkat
Python Memanggil Microsoft Graph MSAL Python Kode perangkat

Aplikasi Teams Microsoft

Sampel berikut mengilustrasikan aplikasi Teams Tab Microsoft yang memasukkan pengguna. Selain itu, aplikasi ini menunjukkan cara memanggil Microsoft Graph API dengan identitas pengguna menggunakan Microsoft Authentication Library (MSAL).

Bahasa/
Platform
Sampel kode
di GitHub
Aut
pustaka
Aliran otorisasi
Node.js Aplikasi Teams Tab: akses menyeluruh (SSO) dan memanggil Microsoft Graph MSAL Node On-Behalf-Of (OBO)

SaaS multi-penyewa

Sampel berikut menunjukkan cara mengonfigurasi aplikasi Anda untuk menerima rincian masuk dari penyewa Microsoft Entra mana pun. Mengonfigurasi aplikasi Anda menjadi multipenyewa berarti Anda dapat menawarkan aplikasi Perangkat Lunak sebagai Layanan (SaaS) ke banyak organisasi, yang memungkinkan pengguna mereka untuk dapat masuk ke aplikasi Anda setelah memberikan persetujuan.

Bahasa/
Platform
Sampel kode
di GitHub
Aut
pustaka
Aliran otorisasi
Inti ASP.NET Aplikasi web ASP.NET Core MVC memanggil Microsoft API Graph MSAL.NET OpenID tersambung
Inti ASP.NET ASP.NET panggilan aplikasi web Core MVC ASP.NET CORE web API MSAL.NET Kode otorisasi
Sudut Panggilan aplikasi satu halaman Angular ASP.NET CORE web API MSAL Angular Kode otorisasi

Langkah berikutnya

Jika Anda ingin menggali lebih banyak sampel kode lebih dalam, lihat: