keycloak~自定義認證流設置固定redirect_uri

redirect_uri在keycloak進行認證成功之後,會重定向到這個目標頁面,一般爲用戶的來源頁,即你在登錄之前訪問的頁面;自定義認證流是指對keycloak中的brower和direct grant兩個認證方式的過程添加自定義策略,如在用戶登錄成功時,檢查它的密碼強度,如果不符合要求,就跳到一個說明頁面,告訴用戶,讓他去重設更安全的密碼。

認證流程中的自定義過程

在自定義過程中添加redirect_uri

@Override
  public void action(AuthenticationFlowContext context) {
    MultivaluedMap<String, String> formData = context.getHttpRequest().getDecodedFormParameters();
    if (formData.containsKey("submitType") && formData.get("submitType").get(0).equals("1")) {
    
      String modifyPasswordPage = mainSite + "/usercenter";
      // 自定義redirect_uri地址
      context.getAuthenticationSession().setRedirectUri(modifyPasswordPage);
      context.success();
      return;
    }
    // 走默認的redirect_uri
    context.success();
  }

上面代碼中,只是對getAuthenticationSession()對象的setRedirectUri()方法進行了調用,就完成了對redirect_uri的自定義,還是非常容易的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章