Hej Mirki, szukam kogoś kto zna się na #programowanie w #csharp i jest w stanie udzielić konsultacji na temat architektury aplikacji #aspnet #dotnetcore. Trochę code review, trochę pytań. Głupie komentarze proszę tutaj a poważnych ludzi zapraszam na PW.
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@spetz Hmm, a co sądzisz o tym, aby przy generowaniu JWT jako secret użyć np. hasha hasła użytkownika?

Całkiem proste rozwiązanie - sama zmiana hasła umożliwi nam unieważnienie wszystkich poprzednich tokenów.
  • Odpowiedz
@endetti: nie jes to takie proste, ponieważ musiałbyś być w stanie powiązać każde zapytanie HTTP z danym kluczem (hasłem) użytkownika, czyli prawdopodobnie trzymać jakiś słownik w pamięci, pomijając już reguły odnośnie wielkości samych kluczy.
  • Odpowiedz
Witam Miraski, próbował ktoś z was używać #dotnetcore 2.0 z MySql? Używam Identity i przy Update-Database dostaje taki błąd:
Failed executing DbCommand (25ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
CREATE UNIQUE INDEX
RoleNameIndex ON AspNetRoles (NormalizedName);
Specified key was too long; max key length is 767 bytes
Uprzedzając pytania zmieniałem długość pól na
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirasy, macie jakiś sposób na to, żeby Azure App Service używał innego Conection Stringa, a lokalnie używać innego (nie chce publikować credentiali na githubie do azure'a)?

@spetz przepraszam, że wołam, ale może masz na to jakiś sposób? Obecnie w appsettings siedzi connection string do lokalnej bazy.

#dotnet #dotnetcore 2.0 #naukaprogramowania
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@GaHee: nie przepraszaj, od tego tu jestem ( ͡° ͜ʖ ͡°). Miałem kiedyś swego czasu podobny problem i zrobiłem jako rozwiązanie bibliotekę Lockbox. Wtedy nie było jeszcze takiego rozwiązania jak np. Azure Vault, które możesz również użyć do ładowania ustawień w bezpieczny sposób.
  • Odpowiedz
Jak teraz tworzy się aplikację webowe w C#, net core 2?
- asp.net core 2 MVC + ajax jQ
- asp.net core 2 Razor Pages
,
- asp.net core 2 Rest API + klient SPA (jakiś react/vue/angular etc)
- inaczej?
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Cześć,
Już w przyszłą środę (21.03), o godzinie 18:00 w siedzibie Connectis w Warszawie poprowadzę razem z Darkiem mocno techniczną prelekcję dotyczącą .NET Core, mikroserwisów i wszystkiego, co z tym jest związane. Jest to pierwsze (i prawdopodobnie najdłuższe) wydarzenie w tym roku rozpoczynające sezon prelegencki. Pojawimy się jeszcze w kilku innych miastach w najbliższych tygodniach - info w niedalekiej przyszłości. Zapraszam :).

#programowanie #programista15k #dotnet #
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@botul: pewnie tak ale stawiam, że dopiero gdy pojawi się kolejna edycja 4Developers, podobnie jak rok temu. Ja osobiście będę prowadził warsztaty w ramach BeIT w kwietniu ale na inny temat.
  • Odpowiedz
  • 3
Czy zna ktoś jakieś dobre tutoriale by szybko ogarnąć tworzenie aplikacji #react + #redux z backendem w .NET Core?

  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@dunkey: Nie wiem, czemu domyślny nie działa, bo powinien. Ale nie jestem fanem domyślnych routingów.

Anyway, twoja akcja powinna wyglądać mniej więcej tak:
[HttpGet]
[Route("DetailMoveUp")]
public
  • Odpowiedz
@dunkey Teoretycznie powinno działać bez ustawiania routa, sprawdź co dostajesz po ręcznym wejściu na ten link. Jeśli dalej 404, to możliwe że rezultat zwracasz jako view() ale nie masz widoku o nazwie takiej jak akcja. Przy zwracaniu jsona sprawdź czy masz dodane JsonRequestBehavior.AllowGet.
  • Odpowiedz
Spotkał się ktoś z taką sytuacją?
Mam IdentityServer4 i dodatkowo w ramach tego projektu zasób /api/secured który jest pod [Authorized]. Chciałbym z klienta pobrać token przy pomocy .RequestClientCredentialsAsync("api.identity") i przy pomocy tego AccessToken dostać się do zasobu /api/secured przez HttpClienta. W skrócie, chciałbym aby projekt z IdentityServer zachowywał się tak jak Api.

Na ten moment po wywołaniu HttpClient z wstawionym tokenem dostaję zwrot z /account/login czyli zwykłego htmla...

#dotnet #
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej. Zaczynam robic apke, otwarty kod bo chce troche pokazac co potrafie itp (takie przygotowanie pod aplikacje do pracy potem). Chce przy okazji wykorzystac auth0 do authentication tylko chyba slabo wrzucac klucze w repo ktore bedzie otwarte...
Jak to rozwiazac?
Repo na #gitlab , aplikacja na #dotnet #dotnetcore a front na #vuejs

#programowanie #webdev
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@trustME: W sumie jeszcze jedna rzecz którą fajnie jest zrobić to wrzucenie fejkowych plików z konfiguracją credentiali i wrzucenie ich samych do .gitignore. Przykładowo zamiast credentials.yml dajesz credentials.yml.template z pustymi polami ale dobrą strukturą, a credentials.yml wrzucasz do .gitignore. Alternatywnie wrzucenie tego szablonu bezpośrednio jako credentials.yml. Dzięki temu wiadomo dokładnie co trzeba zrobić. Przykładowo praw.ini i praw.ini.example w tym repo: https://github.com/x89/Shreddit
  • Odpowiedz
Miraski z #dotnet #dotnetcore - probuje ugryzc temat RabbitMQ do komunikacji pomiedzy kilkoma aplikacjami dzialajacymi niejako wspolnie.

Publikowanie jest zasadniczo dosc proste, ale nie moge zalapac jak sensownie ogarnac subskrybowanie... Znalazlem tylko kilka przykladow i w sumie kazdy byl syfiasto zrobiony bo calosc subscrybowania byla wrzucona w Main co powoduje jakis kosmiczny syf no i troche niezgodnie z SOLID chyba.

Inna sprawa to dlaczego w kazdym przykladzie ludzie
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@trustME: https://github.com/dotnet-architecture/eShopOnContainers Wpis miałeś 2 tyg temu, możliwe że to znalazłeś. Przykład wykorzystania RabbitMQ (src/BuildingBlock/EventBus/EventBusRabbitMQ). Obiekty są serializowane po nazwie klasy a następnie deserializowane i wybierana odpowiednia strategia do przetwarzania.

Sposób łączenia eventu z Handlerem jest np w /src/Services/Catalog/Catalog.API/Startup.cs (ConfigureEventBus).

Co masz na myśli mówiąc że definiują swoje typy eventów w każdym przykładzie? W sensie że serwis A ma Event1 zdefiniowany i serwis B ma Event1 znowu zdefiniowany zamiast centralnego
  • Odpowiedz
Czy .net core ma mechanizm do połącznie JwtBearer i Cookie dla leniwych czy trzeba middleware pisać? Przypadek użycia (wszystko z backendu): Dostaję jwt token z auth server -> wrzucam go w cookie -> wchodzę w zasób z [Authorize] -> dostaję do tego pozwolenie + mogę zgrabnie odczytać HttpContext.User.Identity...

#dotnetcore #dotnet #jwt #aspnet #programowanie
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Prosty middleware dodający header Authorize w locie znaleziony na stackoverflow dał oczekiwany skutek. Chociaż nie wydaje mi się że jest to najpiękniejsze rozwiązanie. Reszta to .AddJwtBearer()
  • Odpowiedz
Miraski, moze rano zginelo w morzu powiadomien...

Miraski, mam apke w #csharp #dotnet #dotnetcore , ktora jest podzielona z kilku istotnych wzgledow na mikroserwisy.
Lokalny development idzie spoko poki co, ale chcialem to juz uruchomic na serwerze bo frontend dev chce moc dzialac na realnej aplikacji juz i mam problem.
Jako proxy uzywam Traefik, ale to wlasciwie jest malo istotne.
Chodzi o to, ze glowna domena to api.domena.pl, a kazdy
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@trustME: Możesz napisać middleware, który będzie usuwał "/nazwaserwisu" z urlPatha.
(To chyba prostsze podejście).

Albo możesz nadpisać domyślny Routing, który będzie wyglądał mniej więcej tak i wydaje mi się, że też powinno zadziałać:
routes.MapRoute(
  • Odpowiedz
Miraski, mam apke w #csharp #dotnet #dotnetcore , ktora jest podzielona z kilku istotnych wzgledow na mikroserwisy.
Lokalny development idzie spoko poki co, ale chcialem to juz uruchomic na serwerze bo frontend dev chce moc dzialac na realnej aplikacji juz i mam problem.
Jako proxy uzywam Traefik, ale to wlasciwie jest malo istotne.
Chodzi o to, ze glowna domena to api.domena.pl, a kazdy serwis powinien byc bindowany do api.domena.pl/nazwaserwisu

Problem
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach