Bagikan melalui


Sampel kode platform identitas Microsoft untuk autentikasi dan otorisasi

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 varian MSAL.js.

Bahasa /
Platform
Sampel kode
di GitHub
Auth
perpustakaan
Auth flow Quickstart Tutorial
React Memasukkan Pengguna MSAL React Kode otorisasi dengan PKCE Mulai Cepat Tutorial
Angular Memasukkan Pengguna MSAL Angular Kode otorisasi dengan PKCE Mulai Cepat Tutorial
JavaScript Memasukkan Pengguna
Call Microsoft Graph
Menggunakan API web Node.js
Menyebarkan ke Azure Storage dan App Service
MSAL.js Kode otorisasi dengan PKCE Mulai Cepat
Blazor WebAssembly Memasukkan Pengguna
Call Microsoft Graph
Menyebarkan ke Azure App Service
MSAL.js Kode otorisasi dengan PKCE Mulai Cepat

Aplikasi web

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

Bahasa /Platform Sampel kode di GitHub Auth libraries Auth flow Quickstart Tutorial
ASP.NET Microsoft Graph Training Sample
Sign in users and call Microsoft Graph with admin restricted scope
MSAL.NET
Microsoft.Identity.Web
Skenario Cache Token Tingkat Lanjut
• OpenID connect
• Kode otorisasi
• On-Behalf-Of (OBO)
Mulai Cepat
ASP.NET Core Memasukkan Pengguna
Call Microsoft Graph
Menyesuaikan cache token
Gunakan konteks autentikasi Akses Bersyarat untuk melakukan autentikasi bertingkat
Call Graph (multitenant)
Call Azure REST APIs
Protect web API
Protect multitenant web API
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Kelompok Keamanan untuk kontrol akses
Menyebarkan ke Azure Storage dan App Service
Active Directory Federation Services to Microsoft Entra migration
Microsoft.Identity.Web • OpenID connect
• Kode otorisasi
• On-Behalf-Of Flow (OBO)
Mulai Cepat Tutorial
Blazor Memasukkan Pengguna
Call Microsoft Graph
Call web API
MSAL.NET Hybrid flow
Java Spring Memasukkan Pengguna
Call Microsoft Graph
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Grup untuk kontrol akses
Mengamankan API web
Menyebarkan ke Azure App Service
MSAL Java Kode otorisasi Tutorial
Java Servlets Memasukkan Pengguna
Call Microsoft Graph
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Kelompok Keamanan untuk kontrol akses
Menyebarkan ke Azure App Service
MSAL Java Kode otorisasi Mulai Cepat
Node.js Express Memasukkan Pengguna
Aplikasi web ekspres yang dibangun dengan MSAL Node dan platform identitas Microsoft
Call Microsoft Graph
Panggil Microsoft Graph melalui proksi BFF
Menggunakan Peran Aplikasi untuk kontrol akses
Menggunakan Kelompok Keamanan untuk kontrol akses
Menyebarkan ke Azure App Service
MSAL Node • Kode otorisasi
• Backend-for-Frontend (BFF) proxy
Mulai Cepat Tutorial
Python Flask Memasukkan Pengguna
Template to sign in Microsoft Entra ID, and optionally call a downstream API (Microsoft Graph)
MSAL Python Kode otorisasi Mulai Cepat Tutorial
Python Django Memasukkan Pengguna MSAL Python Kode otorisasi
Ruby Memasukkan pengguna dan memanggil Microsoft Graph OmniAuth OAuth2 Kode otorisasi

Web API

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
Auth
perpustakaan
Auth flow Quickstart Tutorial
ASP.NET Call Microsoft Graph MSAL.NET On-Behalf-Of (OBO) Mulai Cepat
ASP.NET Core Kontrol akses (rute yang dilindungi) dengan platform identitas Microsoft MSAL.NET On-Behalf-Of (OBO) Mulai Cepat Tutorial
Java Lindungi API web Java Spring Boot Anda dengan platform identitas Microsoft MSAL Java On-Behalf-Of (OBO)
Node.js Protect a Node.js web API MSAL Node Pembawa otorisasi

Dekstop

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
Auth
perpustakaan
Auth flow Quickstart Tutorial
.NET Core Call Microsoft Graph
Memanggil Microsoft Graph dengan cache token
Panggil Microsoft Graph dengan HTML UI web kustom
Memanggil Microsoft Graph dengan browser web kustom
Sign in users with device code flow
Panggil Microsoft Graph dengan melakukan otentikasi pengguna menggunakan nama pengguna/kata sandi
MSAL.NET • Kode otorisasi dengan PKCE
• Kode perangkat
• Kredensial kata sandi pemilik sumber daya
Java Call Microsoft Graph MSAL Java Autentikasi Windows yang terintegrasi
Node.js Memasukkan Pengguna MSAL Node Kode otorisasi dengan PKCE Mulai Cepat Tutorial
Python Memasukkan Pengguna MSAL Python Kredensial Kata Sandi Pemilik Sumber Daya
Windows Presentation Foundation (WPF) Memasukkan pengguna dan memanggil Microsoft Graph
Autentikasi pengguna Windows Presentation Foundation (WPF), akses API web yang aman (Microsoft Graph)
Memasukkan pengguna dan memanggil API web ASP.NET Core
Memasukkan pengguna dan memanggil Microsoft Graph
MSAL.NET Kode otorisasi dengan PKCE Mulai Cepat Tutorial

Mobile

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

Bahasa /
Platform
Sampel kode
di GitHub
Auth
perpustakaan
Auth flow Quickstart Tutorial
.NET Core Panggil Microsoft Graph menggunakan MAUI
Call Microsoft Graph using MAUI with broker
MSAL.NET Kode otorisasi dengan PKCE
iOS Memanggil Microsoft Graph bawaan MSAL iOS Kode otorisasi dengan PKCE Mulai Cepat Tutorial
Java Memasukkan pengguna dan memanggil Microsoft Graph MSAL Android Kode otorisasi dengan PKCE Mulai Cepat Tutorial
Kotlin Memasukkan pengguna dan memanggil Microsoft Graph MSAL Android Kode otorisasi dengan PKCE

Service / daemon

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

Bahasa /
Platform
Sampel kode
di GitHub
Auth
perpustakaan
Auth flow Quickstart Tutorial
.NET Aplikasi konsol .NET yang mengakses API web yang dilindungi
Multitenant with Microsoft identity platform endpoint
MSAL.NET Pemberian akses menggunakan kredensial klien Mulai Cepat Tutorial
.NET Core Call Microsoft Graph
Call web API
Menggunakan identitas terkelola untuk memanggil MSGraph
Menggunakan identitas terkelola untuk memanggil API
Peran pekerja memanggil API
Microsoft.Identity.Web Pemberian akses menggunakan kredensial klien
Java Memanggil Microsoft Graph dengan Rahasia
Memanggil Microsoft Graph dengan Sertifikat
MSAL Java Pemberian akses menggunakan kredensial klien Mulai Cepat
Node.js Memanggil Microsoft Graph secara rahasia MSAL Node Pemberian akses menggunakan kredensial klien Mulai Cepat Tutorial
Python Memanggil Microsoft Graph secara rahasia
Memanggil Microsoft Graph dengan sertifikat
MSAL Python Pemberian akses menggunakan kredensial klien Mulai Cepat

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 ini menampilkan aplikasi yang mengakses Microsoft Graph API, 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
Auth
perpustakaan
Auth flow Quickstart Tutorial
.NET Core Panggil API yang dilindungi dari perangkat teks saja MSAL.NET Kode perangkat
Java Sign in users and invoke protected API from text-only device MSAL Java Kode perangkat
Python Call Microsoft Graph MSAL Python Kode perangkat

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
Auth
perpustakaan
Auth flow Quickstart Tutorial
Python API web fungsi Python Azure yang diamankan oleh Microsoft Entra ID MSAL Python Kode otorisasi

Aplikasi Teams Microsoft

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

Bahasa /
Platform
Sampel kode
di GitHub
Auth
perpustakaan
Auth flow Quickstart Tutorial
Node.js Teams Tab app: single sign-on (SSO) and call Microsoft Graph MSAL Node On-Behalf-Of (OBO)

Multitenant SaaS

Sampel berikut menunjukkan cara mengonfigurasi aplikasi Anda untuk menerima masuk dari penyewa Microsoft Entra manapun. Mengonfigurasi aplikasi Anda menjadi multipenyewa berarti Anda dapat menawarkan aplikasi Software as a Service (SaaS) ke banyak organisasi, memungkinkan pengguna mereka untuk dapat masuk ke aplikasi Anda setelah memberikan persetujuan.

Bahasa /
Platform
Sampel kode
di GitHub
Auth
perpustakaan
Auth flow Quickstart Tutorial
ASP.NET Core ASP.NET aplikasi web Core MVC memanggil Microsoft Graph API
aplikasi web ASP.NET Core MVC memanggil API web ASP.NET Core
MSAL.NET • OpenID connect
• Kode otorisasi

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