Skip to content
This repository was archived by the owner on Feb 13, 2024. It is now read-only.

Commit 5491a2a

Browse files
committed
ch9
1 parent 7e629a0 commit 5491a2a

File tree

4 files changed

+8
-280
lines changed

4 files changed

+8
-280
lines changed

manuscript/AspNetCoreHun.adoc

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
= ASP.NET Core 3 gyakorlatok
22
Simon Gábor <simon[email protected]>; Szabó Gábor <szabo[email protected]>; Tóth Tibor <toth[email protected]>
3-
v0.8, 2020. május 4.
3+
v0.9, 2020. május 10.
44
:doctype: book
55
:source-highlighter: rouge
66
:icons: font
@@ -27,4 +27,6 @@ include::chapter7.adoc[]
2727

2828
include::chapter8.adoc[]
2929

30+
include::chapter9.adoc[]
31+
3032
ifndef::ebook-format[:leveloffset: -1]

manuscript/chapter8.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ Jelenleg csak alapszintű (nem típusos) JSON sorosítást alkalmazunk. A követ
6767
* a DTO-kat osztálykönyvtárba szervezzük, mindkét oldal hivatkozza - csak akkor működik, ha mindkét oldal .NET-es, ráadásul könnyen kaphat az osztálykönyvtár olyan függőséget, ami igazából csak az egyik oldalnak kell csak, így meg mindkét oldal meg fogja kapni.
6868
* generáltatjuk valamilyen eszközzel a szerveroldal alapján - ezt próbáljuk most ki
6969

70-
Állítsuk be, hogy csak a szerveroldal (Api projekt induljon).
70+
Állítsuk be, hogy csak a szerveroldal (Api projekt) induljon.
7171

7272
== OpenAPI/Swagger szerveroldal
7373

manuscript/chapter9.adoc

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Ezen szabványokat implementálták a fejlettebb platformokra, így ASP.NET Core
3333

3434
ASP.NET Core-ban tipikusan az alábbi technológiákat/komponenseket alkalmazhatjuk:
3535

36-
* https://docs.microsoft.com/en-us/aspnet/core/security/authentication/identity?view=aspnetcore-3.1&tabs=visual-studio[ASP.NET Core Identity]
36+
* https://docs.microsoft.com/en-us/aspnet/core/security/authentication/identity?view=aspnetcore-3.1&tabs=visual-studio[ASP.NET Core Identity] (a Shared Framework része)
3737
** adatelérési és üzleti logikai réteg a felhasználói adatok kezelésére
3838
** JWT Bearer token middleware, ASP.NET Core authorizációs rendszer - RP feladatokhoz
3939
* https://www.nuget.org/packages/Microsoft.AspNetCore.Identity.UI[Identity UI] - az Identity Core-hoz tartozó felület (ASP.NET Core Razor alapú)
@@ -113,7 +113,7 @@ WARNING: A megadandó értékek eltérhetnek, attól függően, hogy az előző
113113
/*Tenant teljes neve*/
114114
private static string Tenant = "valami.onmicrosoft.com";
115115
116-
/*az előbbien a végét cseréljük le b2clogin.com-ra*/
116+
/*az előbbinek a végét cseréljük le b2clogin.com-ra*/
117117
private static readonly string AzureAdB2CHostname = "valami.b2clogin.com";
118118
119119
/*Kliensalkalmazás Application ID-je*/
@@ -128,7 +128,6 @@ public static string[] ApiScopes =
128128
129129
/*A hívandó API végpont címe - legyen az alábbi érték*/
130130
public static string ApiEndpoint = "https://localhost:5001/weatherforecast";
131-
132131
----
133132

134133
Egyelőre így már működnie kell a loginnak, a *Sign In* gombra kattintva regisztrálhatunk, beléphetünk, kiléphetünk. Próbáljuk ki! Az API hívás és a profilszerkesztés gombok nem működnek még.
@@ -176,7 +175,7 @@ Kipróbálhatjuk úgy is, hogy *egy próba erejéig* az `Authorize` attribútumo
176175

177176
A kliensalkalmazás beállításainál ellenőrizzük, hogy az `ApiEndpoint` beállítás megfelelő-e. Ugyanaz az URL legyen, mint amivel az előbb teszteltünk. A szerveroldalon ellenőrizzük, hogy az `Authorize` attribútum a kontrolleren van-e.
178177

179-
Az ASP.NET Core webszerver ma már igencsak szigorú a HTTPS kommunikáció paramétereivel kapcsolatban, ezért az `App` konstruktorban csak az újabb protokollverziókat engedélyezzük:
178+
Az ASP.NET Core webszerver ma már igencsak szigorú a HTTPS kommunikáció paramétereivel kapcsolatban, ezért a WPF kliens `App` konstruktorban csak az újabb protokollverziókat engedélyezzük:
180179

181180
[source,csharp]
182181
----
@@ -223,7 +222,7 @@ A kontroller-en állítsuk be, hogy csak a `DemoRead` nevű házirendet teljesí
223222
/**/{/**/}
224223
----
225224

226-
Próbáljuk ki! Mivel `demo.read` engedélyt mindenhol átvezettük, így változást nem tapasztalunk. Csináljunk ellenpróbát! Az Azure B2C felületen a kliensalkalmazás *API Access* menüpontjában állítsuk be, hogy a webalkalmazásunkhoz kapcsolódó `demo.read` scope-ot ne szolgáltassa a WPF kliensnek. A WPF kliensben lépjünk ki, majd újra be, végül hívjuk az API-t.Ekkor már nem kapjuk meg az eddigi választ - az eredményt megjelenítő szövegdoboz üres lesz.
225+
Próbáljuk ki! Mivel `demo.read` engedélyt mindenhol átvezettük, így változást nem tapasztalunk. Csináljunk ellenpróbát! Az Azure B2C felületen a kliensalkalmazás *API Access* menüpontjában állítsuk be, hogy a webalkalmazásunkhoz kapcsolódó `demo.read` scope-ot ne szolgáltassa a WPF kliensnek. A WPF kliensben lépjünk ki, majd újra be, végül hívjuk az API-t.Ekkor már nem kapjuk meg az eddigi választ - az eredményt megjelenítő szövegdoboz üres lesz. A szerveralkalmazás konzolján ellenőrizhetjük, hogy a kérés elutasításra került.
227226

228227
WARNING: Fontos, hogy ha megkapjuk a kívánt választ (átjutottunk az ellenőrzésen), mindig teszteljünk ellenpróbával is, azaz valamilyen szükséges feltételt, házirendet sértsünk meg és nézzük meg, hogy úgy hibát (például 401-es választ) kapunk-e. Ha nem, akkor az ellenőrzői oldalon (RP) hiba van.
229228

0 commit comments

Comments
 (0)