mirror of
				https://github.com/dani-garcia/vaultwarden.git
				synced 2025-10-30 21:31:13 +00:00 
			
		
		
		
	Added missing register endpoint to identity
		
	In the upcomming web-vault and other clients they changed the register endpoint from `/api/accounts/register` to `/identity/register`. This PR adds the new endpoint to already be compatible with the new clients. Fixes #2889
This commit is contained in:
		
					parent
					
						
							
								7a7673103f
							
						
					
				
			
			
				commit
				
					
						5bfc7cfde3
					
				
			
		
					 2 changed files with 13 additions and 4 deletions
				
			
		|  | @ -42,7 +42,7 @@ pub fn routes() -> Vec<rocket::Route> { | |||
| 
 | ||||
| #[derive(Deserialize, Debug)] | ||||
| #[allow(non_snake_case)] | ||||
| struct RegisterData { | ||||
| pub struct RegisterData { | ||||
|     Email: String, | ||||
|     Kdf: Option<i32>, | ||||
|     KdfIterations: Option<i32>, | ||||
|  | @ -82,7 +82,11 @@ fn enforce_password_hint_setting(password_hint: &Option<String>) -> EmptyResult | |||
| } | ||||
| 
 | ||||
| #[post("/accounts/register", data = "<data>")] | ||||
| async fn register(data: JsonUpcase<RegisterData>, mut conn: DbConn) -> JsonResult { | ||||
| async fn register(data: JsonUpcase<RegisterData>, conn: DbConn) -> JsonResult { | ||||
|     _register(data, conn).await | ||||
| } | ||||
| 
 | ||||
| pub async fn _register(data: JsonUpcase<RegisterData>, mut conn: DbConn) -> JsonResult { | ||||
|     let data: RegisterData = data.into_inner().data; | ||||
|     let email = data.Email.to_lowercase(); | ||||
| 
 | ||||
|  |  | |||
|  | @ -9,7 +9,7 @@ use serde_json::Value; | |||
| 
 | ||||
| use crate::{ | ||||
|     api::{ | ||||
|         core::accounts::{PreloginData, _prelogin}, | ||||
|         core::accounts::{PreloginData, RegisterData, _prelogin, _register}, | ||||
|         core::two_factor::{duo, email, email::EmailTokenData, yubikey}, | ||||
|         ApiResult, EmptyResult, JsonResult, JsonUpcase, | ||||
|     }, | ||||
|  | @ -20,7 +20,7 @@ use crate::{ | |||
| }; | ||||
| 
 | ||||
| pub fn routes() -> Vec<Route> { | ||||
|     routes![login, prelogin] | ||||
|     routes![login, prelogin, identity_register] | ||||
| } | ||||
| 
 | ||||
| #[post("/connect/token", data = "<data>")] | ||||
|  | @ -434,6 +434,11 @@ async fn prelogin(data: JsonUpcase<PreloginData>, conn: DbConn) -> Json<Value> { | |||
|     _prelogin(data, conn).await | ||||
| } | ||||
| 
 | ||||
| #[post("/accounts/register", data = "<data>")] | ||||
| async fn identity_register(data: JsonUpcase<RegisterData>, conn: DbConn) -> JsonResult { | ||||
|     _register(data, conn).await | ||||
| } | ||||
| 
 | ||||
| // https://github.com/bitwarden/jslib/blob/master/common/src/models/request/tokenRequest.ts
 | ||||
| // https://github.com/bitwarden/mobile/blob/master/src/Core/Models/Request/TokenRequest.cs
 | ||||
| #[derive(Debug, Clone, Default, FromForm)] | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue