Auth 모듈은 사용자 관리, 그룹 관리, 사용자 등록, 로그인 및 관련 기능을 포함하여 응용 프로그램에 대한 인증 및 권한 부여를 제공합니다. 프로젝트 생성 시 자동으로 설치됩니다.
기본 관리자 로그인 및 비밀번호는 다음과 같습니다.
- Login : [email protected]
- Password : appmaster
모듈 설정 은 다음과 같이 구성할 수 있습니다.
- SignUp Groups : 사용자가 등록할 수 있는 그룹 목록을 정의합니다.
- SignUp : 사용자가 응용 프로그램에 가입하고 계정을 얻을 수 있습니다.
- Session timeout (minutes) : 사용자가 유휴 상태인 경우 현재 사용자 세션이 종료되는 시간을 정의합니다. 기본 60분;
- Failed login delay (in ms) : 실패한 로그인 시도 후 응답에 대한 지연 시간을 정의합니다. 기본 0ms;
- Email confirmation required : 사용자가 이메일을 통해 등록을 확인해야 하는지 정의합니다.
- 등록 Signed-Up User Active : 활성화된 경우 새로 생성된 각 사용자 개체에 대해 활성=true로 설정합니다.
- Groups 탭에서는 사용자 그룹 목록을 만들고 구성할 수 있습니다.
User 및 User Session 모델은 인증 모듈이 설치되면 자동으로 생성됩니다. Data Design 탭에서 찾을 수 있습니다. 이러한 모델의 기본 속성을 구성하는 것은 불가능하지만 새 속성을 추가하는 것은 가능합니다.
User, User Session 및 Auth Module 관련 BP
User 및 User Session 모델과 관련된 사전 설치된 비즈니스 프로세스는 다음과 같습니다.
User 모델
- DB: Delete User: ID 를 기반으로 데이터베이스에서 User 개체를 삭제합니다.
- DB: Update User : 데이터베이스에서 주어진 모델 객체의 모든 필드를 재설정하고 주어진 값으로 업데이트합니다( DB: Patch User 는 제공된 필드만 변경하고 다른 필드는 그대로 유지하는 데 사용해야 함).
- DB: Create User : 데이터베이스에 레코드를 생성하고 User 모델 객체를 반환합니다(입력 필드에 따라 User 모델 객체를 생성하려면 Make User 블록을 사용해야 함).
- DB: Soft Delete User DB: Delete User 가 수행하는 것처럼 전체 레코드를 제거하는 대신 선택한 User 모델 개체의 DeletedAt 필드를 업데이트합니다.
- DB: Bulk Delete User : 주어진 IDs ( ids 배열)를 가진 User 모델 객체 레코드 세트를 대량 삭제합니다. failed_ids – 삭제되지 않을 사용자 IDs 의 배열.
- DB: Patch User : 데이터베이스에서 User 모델 개체의 선택된 필드를 업데이트합니다( DB: Update User 는 모든 필드를 재설정하는 데 사용해야 함).
- DB: Search User : 해당 필드를 기반으로 데이터베이스에서 하나 이상의 User 모델 객체를 찾아 반환합니다.
- DB: GetOne User : ID 를 기반으로 User 모델 객체를 찾아 반환합니다.
- Expand User : 선택한 User 모델 개체의 모든 필드를 반환합니다.
- Make User : 입력 필드를 기반으로 User 모델 객체를 DB: Create User .
User Session
- DB: Delete User Session 삭제: User Session 개체를 해당 ID 를 기반으로 데이터베이스에서 삭제합니다.
- DB: Update User Session : 데이터베이스에서 주어진 모델 객체의 모든 필드를 재설정하고, 주어진 값으로 업데이트합니다( DB: Patch User Session 는 제공된 필드를 변경하는 데 사용해야 함).
- DB: Create User Session : 데이터베이스에 레코드를 생성하고 User Session 모델 객체를 반환합니다(입력 필드에 따라 User 모델 객체를 생성하려면 Make User Session 블록을 사용해야 함).
- DB: Soft Delete User Session : 선택한 User Session 모델 개체의 DeletedAt 필드를 업데이트합니다.
- DB: Bulk Delete User Session : 주어진 IDs ( ids 배열)를 가진 User Session 모델 객체 레코드 세트를 대량 삭제합니다. failed_ids 배열은 삭제 프로세스에서 무시될 IDs 세트를 정의합니다.
- DB: Patch User Session : 데이터베이스에서 User Session 모델 개체의 선택된 필드를 업데이트합니다( DB: Update User Session 을 사용하여 모든 필드를 재설정해야 함).
- DB: Search User Session : 해당 필드를 기반으로 데이터베이스에서 하나 이상의 User Session 모델 개체를 찾아 반환합니다.
- DB: GetOne User Session : ID 를 기반으로 User Session 모델 객체를 찾아 반환합니다.
- Expand User Session : 선택한 User Session 모델 개체의 모든 필드를 반환합니다.
- Make User Session : 입력 필드를 기반으로 User Session 모델 객체를 DB: Create User Session .
Auth Module
- Auth: Generate Auth Token : 주어진 길이의 인증 토큰( Auth Token )을 생성합니다.
- Auth: Registration : 새 사용자를 등록합니다.
- Auth: Authorization : 주어진 Auth Token 이 존재하는지 확인하고 그와 관련된 사용자를 반환합니다.
- Auth: Authentification : 사용자의 로그인과 비밀번호를 확인하고 Auth Token 을 반환합니다.
- Auth: Logout : Auth Token 을 기반으로 현재 사용자의 세션을 종료합니다.
- Auth: Get current user 현재 User 모델 개체를 반환합니다.
- Auth: Remove user from group 사용자 제거: ID 를 기반으로 선택한 그룹에서 사용자를 제거합니다.
- Auth: Add user to group 에 사용자 추가: ID 를 기반으로 선택한 그룹에 사용자를 추가합니다.
- Auth: Hash Password : 암호 문자열을 해시로 변환합니다.
- Auth: Restore Password : 사용자 로그인을 기반으로 암호를 복원합니다.
- Auth: Change Password : 사용자의 비밀번호를 변경합니다.
- Auth: Probe Password : 암호와 해시 간의 연결을 확인합니다.
Auth Module, User 및 User Session endpoints
사전 설치된 Auth Module 의 Endpoints 과 User 및 User Session 모델은 프로젝트가 생성되면 자동으로 생성됩니다.
Auth Module
요청 유형 | Endpoint | 관련 비즈니스 프로세스 |
/logout/ | Auth: Logout | |
/auth/ | Auth: Authentification | |
/register/ | Auth: Registration | |
/confirm/ | Auth: Get Current User | |
/user/change-password/ | Auth: Change Password | |
/user/restore-password/ | Auth: Restore Password | |
/user/profile/ | Auth: Get Current User |
사용자
요청 유형 | Endpoint | 관련 비즈니스 프로세스 |
/user/:id/ | DB: Update User | |
/user/:id/ | DB: Delete User | |
/user/:id/ | DB: GetOne User | |
/user/ | DB: Search User | |
/user/:id/ | DB: Patch User | |
/user/ | DB: Create User |
User Session
요청 유형 | Endpoint | 관련 비즈니스 프로세스 |
/user-session/:id/ | DB: Delete User Session | |
/user-session/:id/ | DB: GetOne User Session | |
/user-session/ | DB: Search User Session | |
/user-session/:id/ | DB: Patch User Session | |
/user-session/ | DB: Create User Session | |
/user-session/:id/ | DB: Update User Session |
Auth Token
Auth Token 은 인증된 사용자의 세션 토큰으로 사용 중입니다. 웹 애플리케이션 비즈니스 프로세스에서 Auth Token, 과 상호 작용할 수 있습니다.
- Get Auth Token 은 현재 사용자의 세션 Auth Token Token을 반환합니다.
- Set Auth Token 은 현재 사용자의 세션 Auth Token Token을 다시 작성합니다.
- Remove Auth Token 제거는 현재 사용자의 세션 Auth Token 토큰을 제거합니다.
현재 사용자를 얻는 방법
1. Business logic 탭으로 이동하여 Auth: Get current user 가져오기 블록을 드래그합니다.
2. Endpoints 탭으로 이동하여 User 섹션을 확장합니다. 그런 다음 1단계에서 만든 비즈니스 프로세스에 대한 GET 유형 메서드를 만듭니다. endpoint URL은 /user_current 입니다.
3. Web Apps 탭으로 이동하여 Server request GET /user_current 로 새 비즈니스 프로세스를 생성하여 웹 애플리케이션 비즈니스 프로세스에서 현재 사용자를 가져옵니다.