หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
บทนำ
เพื่อทํางานกับ Fabric API เช่นเดียวกับบริการอื่น ๆ ของ Microsoft ก่อนอื่นคุณต้องได้รับโทเค็น Microsoft Entra สําหรับบริการ Fabric จากนั้นใช้โทเค็นนั้นในส่วนหัวการรับรองความถูกต้องของการเรียกใช้ API
ในบทช่วยสอนเริ่มต้นใช้งานด่วนนี้ คุณจะสร้างแอปคอนโซล C# ซึ่งจะรับโทเค็น Entra ID โดยใช้ไลบรารี MSAL.Net จากนั้นใช้ C# HttpClient เพื่อเรียก List workspaces API
สร้างการลงทะเบียนแอป
เพื่อรับโทเค็น Microsoft Entra ก่อนอื่นคุณต้องลงทะเบียนแอปพลิเคชันด้วย Microsoft Entra ID
เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการลงทะเบียนแอปพลิเคชันและคุณสมบัติที่แตกต่างกันของแอปพลิเคชัน และวิธีการที่อาจสามารถใช้ได้กับสถานการณ์ของคุณ ดูลงทะเบียนแอปในแพลตฟอร์มข้อมูลประจําตัวของ Microsoft
ในบทช่วยสอนเริ่มต้นใช้งานด่วน คุณจะสร้างไคลเอ็นต์สาธารณะที่มีการเปลี่ยนเส้นทาง URI = http://localhost
ลงชื่อเข้าใช้ศูนย์การจัดการ Microsoft Entra เป็นผู้ดูแลระบบแอปพลิเคชันระบบคลาวด์ อย่างน้อย
เรียกดู การลงทะเบียนแอปแอปพลิเคชัน>
คลิกที่ลงทะเบียนใหม่
ป้อนชื่อที่แสดงสําหรับแอปพลิเคชันของคุณ และเพิ่ม URI การเปลี่ยนเส้นทางไคลเอ็นต์สาธารณะ
http://localhost
เลือก ลงทะเบียน
คัดลอก ID แอปพลิเคชัน (ไคลเอ็นต์) และวางใน Notepad ที่จะใช้ในภายหลัง
รับโทเค็น
ในบทช่วยสอนนี้ คุณจะใช้ MSAL.Net เพื่อรับโทเค็น Entra ID สําหรับบริการ Fabric ด้วยขอบเขตต่อไปนี้: Workspace.ReadWrite.All, Item.ReadWrite.All
สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการรับโทเค็นที่มี MSAL.Net ดู Token Acquisition - ไลบรารีการรับรองความถูกต้องของ Microsoft สําหรับ .NET
วาง ID แอปพลิเคชัน (ไคลเอนต์) ที่คุณคัดลอกก่อนหน้านี้และวางสําหรับตัวแปร ClientId
ตัวอย่างรหัส C# สําหรับการขอรับโทเค็นการเข้าถึง Microsoft Entra
#region parameters section
string ClientId = "YourApplicationId";
string Authority = "https://login.microsoftonline.com/organizations";
string RedirectURI = "http://localhost";
#endregion
#region Acquire a token for Fabric APIs
// In this sample we acquire a token for Fabric service with the scopes
// Workspace.ReadWrite.All and Item.ReadWrite.All
string[] scopes = new string[] { "https://api.fabric.microsoft.com/Workspace.ReadWrite.All https://api.fabric.microsoft.com/Item.ReadWrite.All" };
PublicClientApplicationBuilder PublicClientAppBuilder =
PublicClientApplicationBuilder.Create(ClientId)
.WithAuthority(Authority)
.WithRedirectUri(RedirectURI);
IPublicClientApplication PublicClientApplication = PublicClientAppBuilder.Build();
AuthenticationResult result = await PublicClientApplication.AcquireTokenInteractive(scopes)
.ExecuteAsync()
.ConfigureAwait(false);
Console.WriteLine(result.AccessToken);
#endregion
API พื้นที่ทํางานรายการโทร
ในส่วนนี้ คุณจะต้อง:
- สร้าง C# HttpClient ด้วยโทเค็นที่เราได้รับในส่วนก่อนหน้า
- เพิ่ม
https://api.fabric.microsoft.com/v1/เป็น URL พื้นฐานสําหรับไคลเอ็นต์ - เรียก API พื้นที่ทํางานรายการและเขียนการตอบสนองไปยังคอนโซล
ตัวอย่างรหัส C# ของการสร้างไคลเอ็นต์ http และเรียก List Workspaces API
// Create client
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", result.AccessToken);
string baseUrl = "https://api.fabric.microsoft.com/v1/";
client.BaseAddress = new Uri(baseUrl);
// Call list workspaces API
HttpResponseMessage response = await client.GetAsync("workspaces");
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
ตัวอย่างรหัสแอปคอนโซล C# แบบเต็ม
using Microsoft.Identity.Client;
using System.Net.Http.Headers;
#region parameters section
string ClientId = "YourApplicationId";
string Authority = "https://login.microsoftonline.com/organizations";
string RedirectURI = "http://localhost";
#endregion
#region Acquire a token for Fabric APIs
// In this sample we acquire a token for Fabric service with the scopes Workspace.ReadWrite.All and Item.ReadWrite.All
string[] scopes = new string[] { "https://api.fabric.microsoft.com/Workspace.ReadWrite.All https://api.fabric.microsoft.com/Item.ReadWrite.All" };
PublicClientApplicationBuilder PublicClientAppBuilder =
PublicClientApplicationBuilder.Create(ClientId)
.WithAuthority(Authority)
.WithRedirectUri(RedirectURI);
IPublicClientApplication PublicClientApplication = PublicClientAppBuilder.Build();
AuthenticationResult result = await PublicClientApplication.AcquireTokenInteractive(scopes)
.ExecuteAsync()
.ConfigureAwait(false);
Console.WriteLine(result.AccessToken);
#endregion
#region Create an HTTP client and call the Fabric APIs
// Create client
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", result.AccessToken);
string baseUrl = "https://api.fabric.microsoft.com/v1/";
client.BaseAddress = new Uri(baseUrl);
// Call list workspaces API
HttpResponseMessage response = await client.GetAsync("workspaces");
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
#endregion