Getting Started With Keycloak Identity Provider (free Identity Server alternative)

Поделиться
HTML-код
  • Опубликовано: 28 янв 2025

Комментарии • 156

  • @MilanJovanovicTech
    @MilanJovanovicTech  5 месяцев назад +2

    Want to master Clean Architecture? Go here: bit.ly/3PupkOJ
    Want to unlock Modular Monoliths? Go here: bit.ly/3SXlzSt

    • @necromancer151
      @necromancer151 3 месяца назад

      As usual when observer some tools you can also provide few referecne to alternatives at the end. PS i remebr that keycloak have some limitations where you need to code own interceptor/provider

  • @MB-Kajtech
    @MB-Kajtech 5 месяцев назад +29

    Great start to the series! For those wondering Keycloak is pretty widely used in government agencies for example CERN (nuclear research) and bunch of companies too.

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +3

      I wasn't aware of that, but that's great to know 😁

  • @Stoney_Eagle
    @Stoney_Eagle 5 месяцев назад +8

    It's such a lovely thing to own your user profiles, being able to create tokens for any user or impersonate users opens many doors that cloud solutions keep closed.

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +4

      A user impersonation video might be interesting, thanks for the idea

  • @georgeritchie4497
    @georgeritchie4497 5 месяцев назад +6

    Finally!!! I waited for it, thank you very much! I'm really looking forward to the continuation, especially how to customize the user registration process by adding event publishing and setting user role by some user inputs

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +1

      You're welcome 😊 I'm still planning what to cover next, so thanks for some ideas.

    • @coding-in
      @coding-in 5 месяцев назад

      ​@@MilanJovanovicTechhow to setup different user access/role , has different menu? Then different access control even in same page.

  • @romualdojunior2121
    @romualdojunior2121 5 месяцев назад +3

    Already using it in my projects with .NET 8.
    Great product!

  • @delphiguy23
    @delphiguy23 5 месяцев назад +1

    Great and informative as always Milan. Im exploring this atm and this seems to be a good alternative to spinning up my own identity server. And the best thing about this is that I can self host this.

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +2

      Releasing another video soon for the .NET auth integration

  • @shuvo9131
    @shuvo9131 5 месяцев назад +1

    Nice one Milan. Eagerly waiting for the next video of this series.

  • @rickjarr
    @rickjarr 5 месяцев назад +1

    Awesome video! Hopefully we get a continuation video soon :)

  • @feinirl
    @feinirl 5 месяцев назад +1

    Great video! Can't wait for more Keycloak related videos ;)

  • @tomek120k
    @tomek120k 2 месяца назад

    Great video! I needed a quick introduction to Keycloak, thank you :)

  • @chizuru1999
    @chizuru1999 5 месяцев назад

    This was what I needed. I just setup identity server on a new project. But if this is better for me then I will redo it with keycloak 😊

  • @jiM3op
    @jiM3op 5 месяцев назад +3

    i need to check this out... looking awesome

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад

      It's pretty cool. Easy to setup. You can connect it to an existing DB like Postgres, etc.

  • @itirush2701
    @itirush2701 5 месяцев назад +1

    I'm your Russian fan. you make the best content. Люблю тебя ❤

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад

      Большой привет из Сербии! :)

    • @itirush2701
      @itirush2701 5 месяцев назад

      @@MilanJovanovicTech Ахахахахаха знаешь русский) Когда видео на русском ? :)

  • @sudidav
    @sudidav 5 месяцев назад

    Thanks for that nice intro. Waiting for the next part.

  • @robadobdob
    @robadobdob 5 месяцев назад +1

    The number of times you drop a video on a topic I'm looking at is uncanny.

  • @akashkarve1991
    @akashkarve1991 5 месяцев назад

    Nice informative video. Eagerly waiting for the series. I assume it will cover common scenarios for microservices like service to service communication with valid resource scopes and way to manage them.
    Appreciate your efforts !!!!

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +1

      I might introduce it into a microservices scenario at some point, for now I want to focus on integrating it with a .NET app

  • @fluidityinmotion2452
    @fluidityinmotion2452 5 месяцев назад +1

    Excellent tutorial!

  • @borislavnikolov1078
    @borislavnikolov1078 5 месяцев назад +1

    Very well explained!

  • @lucaslima-re1jh
    @lucaslima-re1jh 22 дня назад

    It seems like an excellent free source to add an extra layer of security on top of your API, and the only downsides would be:
    1 - You will need to pay to host an extra service (API + database + Keycloak), which is not a problem if you consider that paying for an auth service would be more expensive (Microsoft Entra ID, Firebase, etc.).
    2 - You will likely experience some latency between your requests, as you will need to check the metadata on your Keycloak server every time. This might not be a significant issue, and you could also implement caching to mitigate this.
    Overall, it seems like a very good tool for developing personal projects. Thank you very much for this video.

    • @MilanJovanovicTech
      @MilanJovanovicTech  21 день назад +1

      1 - You can use the existing app database (if you have one) with a dedicated schema
      2 - The server can cache the Keycloak metadata (which it does by default) to reduce # of round trips

  • @joehernandez3231
    @joehernandez3231 5 месяцев назад +6

    Great video! Looking forward to more videos on Keycloak.

  • @kalyangupta
    @kalyangupta 2 месяца назад

    Wasn't aware of Keycloak . I mostly used okta . Good to know

    • @MilanJovanovicTech
      @MilanJovanovicTech  2 месяца назад

      This is like a free version where you manage everything

  • @RadhikaJangam-ee8rl
    @RadhikaJangam-ee8rl 3 месяца назад

    very well explained.....Thank you 😊

  • @Flanno91
    @Flanno91 5 месяцев назад

    Great video Milan. Would love to see the backend configuration for this on a NET Core Web API!

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад

      Working on that video tomorrow, and posting in a week or two!

  • @IVANLUISLG
    @IVANLUISLG 2 месяца назад

    Good information. Thanks for this 🙏 🙌 👍 👏😊

  • @johnnydarwin3939
    @johnnydarwin3939 7 дней назад

    Thanks for this. Which keycloak version you used for this video, please let me know.
    Also, do you have any other document or resource to use google credentials via keycloak for login linux servers using ssh through PAM.

  • @DrachirLerom
    @DrachirLerom Месяц назад

    Thanks, good quality video

  • @ScrotoTBaggins
    @ScrotoTBaggins 5 месяцев назад

    My employer is allergic to Java so we're stuck with Duende, but I really like how keycloak offers a UI right off the bat

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +2

      If you treat it like a "black box", does it matter? 🤔

    • @ScrotoTBaggins
      @ScrotoTBaggins 5 месяцев назад +1

      @@MilanJovanovicTechNo, it wouldn't -- had my predecessors avoided implementing wacky customizations to identityserver4, which needed to be ported to Duende in order to limit risk as idsvr4 and Duende have official version upgrade docs. But you're 100% right. A typical (and more secure) system using KeyCloak can be used, deployed, managed, etc. without ever needing to see a single line of Java.

  • @vinydanylo
    @vinydanylo 5 месяцев назад +3

    Nice! I just find it their documentation very confusing when running a production ready docker container =/

  • @zachsalt1209
    @zachsalt1209 3 месяца назад

    Great video!

  • @sunzhang-d9v
    @sunzhang-d9v 5 месяцев назад +1

    Can you explain the framework of ABP, and explain the advantages and disadvantages?

  • @nathangrosvenor7661
    @nathangrosvenor7661 5 месяцев назад

    What would you personally recommend for identity for an enterprise level application out of Keycloak, auth0, azure ad, aws cognito or creating a custom JWT based solution

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +1

      Pick any of those (Keycloak, auth0, azure ad, aws cognito), but I wouldn't recommend rolling your own

  • @rahulgupta4234
    @rahulgupta4234 2 месяца назад

    So the docker image that is running now in local, will have to be hosted on a server like EC2 and then we can use it in Live application?

  • @sreerajpsin
    @sreerajpsin 4 месяца назад +1

    @MilanJovanovicTech
    how we can achive if we have two realm and single api for auth ?
    Say each relam for each tenant ? Is it even possible ?

    • @MilanJovanovicTech
      @MilanJovanovicTech  4 месяца назад +1

      @@sreerajpsin Yes, you would define separate authentication schemes. This is actually a great idea for a video.

    • @sreerajpsin
      @sreerajpsin 4 месяца назад

      @@MilanJovanovicTech waiting

  • @mayankJustfrnd
    @mayankJustfrnd 13 дней назад

    Hi Milan....
    I also wanted use Keycloak but my use case is different. I have existing identity server and wanted to connect with Keycloak. so I can use keycloak only for authorization.
    how we can connect with external identity provider and ho to use user federation.

  • @aryanrana-o6n
    @aryanrana-o6n 5 месяцев назад

    Can you tell me that when i click on Sign in button at 7:40 then new page open as "Unable to connect"

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад

      Most likely the redirect URIs aren't properly set (on the client)

  • @jeevanmanikreddy1261
    @jeevanmanikreddy1261 20 дней назад

    We are sorry...
    Page not found is the error.
    what do i do now???

  • @dRoseaK
    @dRoseaK 3 месяца назад

    Hey Milan, appreciate the great video.
    For some reason when i run the test on the KC test page, I get a "localhost" refused to connect" error.
    I followed all your steps in the video except my for my own local domain name

  • @maradasa985
    @maradasa985 2 месяца назад

    Hi Milan, at 10:32 you had an error in postman, I have the same error, what could it be?

    • @MilanJovanovicTech
      @MilanJovanovicTech  2 месяца назад

      Email typo 😂

    • @maradasa985
      @maradasa985 2 месяца назад

      @@MilanJovanovicTech Yeah, I think mine was typo on redirect

  • @MrPayTune
    @MrPayTune 4 месяца назад

    I really want to start using Keycloak. But is it possible to style the login, register etc. Or must I create custom screens that call the keycloak api? And if so is this a good idea?

  • @ehichioyaidiakhoa3746
    @ehichioyaidiakhoa3746 3 месяца назад

    hows does docker perform on windows. i'm assuming thats where it was installed in this tutorial?

  • @Emi-fg7fn
    @Emi-fg7fn 5 месяцев назад

    and how do you integrate it with the authorization?

  • @Santalucesguy
    @Santalucesguy 5 месяцев назад

    Wow I need this for a proyect I’m in. Any idea of a course I could watch??

  • @barefeg
    @barefeg 5 месяцев назад

    Does it support api key authentication? Meaning users can create api keys for programmatic usage of API resources protected under keycloak

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад

      Not directly. One approach I can think of is creating a dedicated (confidential) client for each user, and they'd be able to exchange it for an access token

    • @barefeg
      @barefeg 5 месяцев назад

      Maybe creating a new Authenticator and adding the record to the db directly is the only elegant way. I need to dig a bit into the keycloak interfaces I think it should be possible, but it’s a major effort

  • @rpreviato
    @rpreviato 2 месяца назад

    Hi Milan,
    I'm trying to configure keycloak to run directly on the host machine with nginx and Cloudflare. Do you have any tips? I've been trying to get this working for days with no success.

    • @MilanJovanovicTech
      @MilanJovanovicTech  2 месяца назад

      My best tip is to keep trying. 😅 You're probably missing some ENV vars that makes this work behind a reverse proxy.

  • @kaanakyuz5801
    @kaanakyuz5801 2 месяца назад

    Is there a way to put role attributes in jwt? I am currently doing this with java spring.

    • @MilanJovanovicTech
      @MilanJovanovicTech  2 месяца назад

      Roles from Keycloak directly?

    • @kaanakyuz5801
      @kaanakyuz5801 2 месяца назад

      @@MilanJovanovicTech yes there is role information in jwt but i can't get the attributes of the roles is there a way to get this

  • @PelFox
    @PelFox 5 месяцев назад

    What if you store users and hashed passwords elsewhere? We're looking for alternatives to IDP but we need to be able to manage users outside of the service. KeyCloak like it has a lot of user management built in. I guess that if you want to customize you need to write Java...

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +1

      There's a simple REST API for managing users in Keycloak. Might be all you need?

  • @myschool1361
    @myschool1361 5 месяцев назад

    part -2 is awaited

  • @zfold4702
    @zfold4702 5 месяцев назад +1

    Wait... security responsibility on a opensource tool?

  • @_Funtime60
    @_Funtime60 Месяц назад

    Doesn't the keycloak documentation SPECIFICALLY state NOT to use dev mode in production? Also how do you run it with a more permanent setup in docker-compose?

  • @aldinoauliaaurunisbi4712
    @aldinoauliaaurunisbi4712 2 месяца назад

    Sir, have u ever faced that page keep refreshing after login? Could you please help me.. first login works normally , but not after all..

  • @otisrancko
    @otisrancko 5 месяцев назад

    Hey Milan, Nice video...I wanted to ask how can i programmatically signup and login from a web application using KeyCloak's API?

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +1

      You can use the Keycloak REST API to get a password (Password flow), and same for registering. I'll do a video about it.

    • @otisrancko
      @otisrancko 5 месяцев назад

      @@MilanJovanovicTech Thanks! That will be awesome

  • @flobuilds
    @flobuilds 5 месяцев назад

    We use keycloak too in our project

  • @rebeccaacheampong7239
    @rebeccaacheampong7239 3 месяца назад

    Can this be used with a VR application?

  • @brianmorin5547
    @brianmorin5547 5 месяцев назад

    Great stuff. How about Part 2 on deploying to a cloud server with Nginx reverse proxy and SSL to support all our apps?

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад

      That might be part 3, since I already recorded part 2

    • @brianmorin5547
      @brianmorin5547 5 месяцев назад

      @@MilanJovanovicTech Ha, nice! I went to your channel for part 2. Not uploaded yet?

  • @fabiojansen4286
    @fabiojansen4286 5 месяцев назад

    Is possible to implement multi tenant with keycloak?

  • @jeevanmanikreddy1261
    @jeevanmanikreddy1261 5 дней назад

    can you forward me the github or any repo link spring boot microservices which has complete keycloak into???

  • @mysuperemecy
    @mysuperemecy 5 месяцев назад

    If you can show how to enable user registration then it will be great 😃

  • @samislam2746
    @samislam2746 4 месяца назад

    Are you from Slovakia?

  • @MahmoudHassan-m2t
    @MahmoudHassan-m2t 5 месяцев назад

    waiting for the next keyclock video

  • @dev.repolho
    @dev.repolho 5 месяцев назад

    Thanks for this serie bro !! Was starting to check Ory ecosystem, I like the ideia of ory oathkeeper for centralized authorization server, so we can achieve the same here with Authorization Services Keycloak ? Like a reverse proxy for authorization.
    Also does anyone use ory? I started to check it, but did not do a real comparison between Ory and Keaclock (I need a service to deploy on my infra and that supports AD/LDAP federation)

  • @paulmdevenney
    @paulmdevenney 5 месяцев назад

    damn...I wish I'd seen this video 1 year ago. Regretting my cloud provider choice.

  • @PhuNguyen-bi7pi
    @PhuNguyen-bi7pi 5 месяцев назад

    It's a bummer that IdentityServer is now a commercial product :(. Keycloak is great, but it's Java

  • @davor12
    @davor12 3 месяца назад

    to brate srbija!

  • @ote8458
    @ote8458 5 месяцев назад

    please if you make such videos also explain how does keycloak make money from using it as identity provider. Real developers would use Keycloak Provider in real world scenarios.

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +2

      How it makes money? It doesn't.

    • @aakashpoojary3968
      @aakashpoojary3968 5 месяцев назад

      ​@@MilanJovanovicTechso the possibility of keyclock getting deprecated?

    • @MB-Kajtech
      @MB-Kajtech 5 месяцев назад

      @@aakashpoojary3968 No not really, it's in government use + Linux Foundation + Red Hat (Red Hat Single Sign-On is based on KeyCloak).