@yolo-croket-dev/entity-v2 0.3.36 → 0.3.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yolo-croket-dev/entity-v2",
3
- "version": "0.3.36",
3
+ "version": "0.3.38",
4
4
  "main": "index.js",
5
5
  "author": "Yolo Co., Ltd.",
6
6
  "description": "크로켓 nest 용 entity-v3",
@@ -15,6 +15,8 @@ export declare enum SellerRegisterStepEnum {
15
15
  standby = "standby"
16
16
  }
17
17
  export interface UserCertification {
18
+ /** @description CI 기반 본인인증 완료 여부 */
19
+ ci?: boolean;
18
20
  /** @description 이메일 인증 */
19
21
  email: boolean;
20
22
  /** @description 휴대폰 인증 */
@@ -15,6 +15,35 @@ export interface UserSensitiveIdentityCi {
15
15
  provider: CiProvider;
16
16
  verifiedAt: Date;
17
17
  }
18
+ /**
19
+ * @author 홍준
20
+ * @description 사용자 본인인증 개인정보의 AES-256-GCM 저장 구조
21
+ * @process 검색이 필요한 필드만 선택적으로 HMAC을 포함하고 원문과 키는 저장하지 않는다.
22
+ */
23
+ export interface UserSensitiveIdentityEncryptedValue {
24
+ algorithm: 'AES-256-GCM';
25
+ authTag: string;
26
+ ciphertext: string;
27
+ iv: string;
28
+ keyVersion: string;
29
+ lookupHmac?: string;
30
+ }
31
+ /**
32
+ * @author 홍준
33
+ * @description 본인인증 공급자가 확인한 개인정보 암호문 묶음
34
+ * @process 공급자가 반환한 필드만 저장하고 검증 공급자와 시각을 함께 보존한다.
35
+ */
36
+ export interface UserSensitiveIdentityCertification {
37
+ birthday?: UserSensitiveIdentityEncryptedValue;
38
+ carrier?: UserSensitiveIdentityEncryptedValue;
39
+ di?: UserSensitiveIdentityEncryptedValue;
40
+ foreigner?: UserSensitiveIdentityEncryptedValue;
41
+ gender?: UserSensitiveIdentityEncryptedValue;
42
+ name?: UserSensitiveIdentityEncryptedValue;
43
+ phone?: UserSensitiveIdentityEncryptedValue;
44
+ provider: CiProvider;
45
+ verifiedAt: Date;
46
+ }
18
47
  /**
19
48
  * @author 홍준
20
49
  * @description 사용자 민감 식별정보 전용 엔티티
@@ -24,6 +53,7 @@ export default interface UserSensitiveIdentityEntity {
24
53
  _id: Types.ObjectId;
25
54
  userId: Types.ObjectId;
26
55
  ci: UserSensitiveIdentityCi;
56
+ certification?: UserSensitiveIdentityCertification;
27
57
  createdAt?: Date;
28
58
  updatedAt?: Date;
29
59
  }