PasswordRequirements

Các yêu cầu đối với mật khẩu dùng để mở khoá thiết bị.

Biểu diễn dưới dạng JSON
{
  "passwordMinimumLength": integer,
  "passwordMinimumLetters": integer,
  "passwordMinimumLowerCase": integer,
  "passwordMinimumNonLetter": integer,
  "passwordMinimumNumeric": integer,
  "passwordMinimumSymbols": integer,
  "passwordMinimumUpperCase": integer,
  "passwordQuality": enum (PasswordQuality),
  "passwordHistoryLength": integer,
  "maximumFailedPasswordsForWipe": integer,
  "passwordExpirationTimeout": string,
  "passwordScope": enum (PasswordPolicyScope),
  "requirePasswordUnlock": enum (RequirePasswordUnlock),
  "unifiedLockSettings": enum (UnifiedLockSettings)
}
Trường
passwordMinimumLength

integer

Độ dài tối thiểu của mật khẩu được cho phép. Giá trị 0 có nghĩa là không có quy định hạn chế. Chỉ được thực thi khi passwordQualityNUMERIC, NUMERIC_COMPLEX, ALPHABETIC, ALPHANUMERIC hoặc COMPLEX.

passwordMinimumLetters

integer

Số chữ cái tối thiểu cần có trong mật khẩu. Chỉ được thực thi khi passwordQuality có giá trị là COMPLEX.

passwordMinimumLowerCase

integer

Phải có số lượng chữ thường tối thiểu trong mật khẩu. Chỉ được thực thi khi passwordQualityCOMPLEX.

passwordMinimumNonLetter

integer

Số lượng ký tự không phải chữ cái (chữ số hoặc ký hiệu) tối thiểu cần có trong mật khẩu. Chỉ được thực thi khi passwordQualityCOMPLEX.

passwordMinimumNumeric

integer

Số chữ số tối thiểu cần có trong mật khẩu. Chỉ được thực thi khi passwordQuality có giá trị là COMPLEX.

passwordMinimumSymbols

integer

Số lượng ký hiệu tối thiểu cần có trong mật khẩu. Chỉ được thực thi khi passwordQuality có giá trị là COMPLEX.

passwordMinimumUpperCase

integer

Cần có số lượng chữ hoa tối thiểu trong mật khẩu. Chỉ được thực thi khi passwordQualityCOMPLEX.

passwordQuality

enum (PasswordQuality)

Chất lượng mật khẩu bắt buộc.

passwordHistoryLength

integer

Độ dài của nhật ký mật khẩu. Sau khi đặt trường này, người dùng sẽ không thể nhập mật khẩu mới giống với bất kỳ mật khẩu nào trong nhật ký. Giá trị 0 có nghĩa là không có quy định hạn chế.

maximumFailedPasswordsForWipe

integer

Số lần nhập sai mật khẩu mở khoá thiết bị trước khi thiết bị bị xoá sạch. Giá trị 0 có nghĩa là không có quy định hạn chế.

passwordExpirationTimeout

string (Duration format)

Đã hết thời gian chờ mật khẩu.

Thời lượng tính bằng giây, có tối đa 9 chữ số thập phân, kết thúc bằng "s". Ví dụ: "3.5s".

passwordScope

enum (PasswordPolicyScope)

Phạm vi áp dụng yêu cầu về mật khẩu.

requirePasswordUnlock

enum (RequirePasswordUnlock)

Khoảng thời gian sau khi thiết bị hoặc hồ sơ công việc được mở khoá bằng một phương thức xác thực mạnh (mật khẩu, mã PIN, hình mở khoá) mà thiết bị hoặc hồ sơ công việc đó có thể được mở khoá bằng bất kỳ phương thức xác thực nào khác (ví dụ: vân tay, tác nhân đáng tin cậy, khuôn mặt). Sau khoảng thời gian đã chỉ định, bạn chỉ có thể dùng các phương thức xác thực mạnh để mở khoá thiết bị hoặc hồ sơ công việc.

unifiedLockSettings

enum (UnifiedLockSettings)

Kiểm soát việc có được phép sử dụng khoá hợp nhất đối với thiết bị và hồ sơ công việc trên các thiết bị chạy Android 9 trở lên có hồ sơ công việc hay không. Bạn chỉ có thể đặt chính sách này nếu bạn đặt passwordScope thành SCOPE_PROFILE, thì chính sách sẽ bị từ chối. Nếu người dùng chưa đặt khoá công việc riêng và trường này được đặt thành REQUIRE_SEPARATE_WORK_LOCK, thì NonComplianceDetail sẽ được báo cáo với nonComplianceReason được đặt thành USER_ACTION.

PasswordQuality

Yêu cầu về chất lượng mật khẩu.

Lưu ý:

  • Các yêu cầu dựa trên độ phức tạp là COMPLEXITY_LOW, COMPLEXITY_MEDIUMCOMPLEXITY_HIGH.
  • Một thực thể của PasswordRequirements được gọi là trong phạm vi thiết bị nếu passwordScope được đặt thành SCOPE_DEVICE.
  • Bạn chỉ có thể chỉ định các yêu cầu dựa trên độ phức tạp trong một thực thể trong phạm vi thiết bị của PasswordRequirements.
  • Nếu passwordPolicies có một phần tử trong phạm vi thiết bị với passwordQuality được đặt thành giá trị dựa trên độ phức tạp, thì phần tử đó cũng phải có một phần tử khác trong phạm vi thiết bị với passwordQuality được đặt thành giá trị không dựa trên độ phức tạp. Trong trường hợp này, chỉ giá trị dựa trên độ phức tạp mới áp dụng cho các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân chạy Android 12 trở lên, còn giá trị không dựa trên độ phức tạp chỉ áp dụng cho tất cả các thiết bị khác.
  • Yêu cầu ở phạm vi thiết bị không dựa trên độ phức tạp áp dụng cho các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân chạy Android 12 trở lên sẽ được coi là yêu cầu dựa trên độ phức tạp nghiêm ngặt nhất tiếp theo đối với ứng dụng. Điều này có thể dẫn đến sự chênh lệch nhỏ giữa các yêu cầu được yêu cầu và các yêu cầu được áp dụng.
  • Hãy xem appliedPasswordPolicies để biết những yêu cầu về mật khẩu thực sự có hiệu lực trên thiết bị.
Enum
PASSWORD_QUALITY_UNSPECIFIED Không có yêu cầu về mật khẩu.
BIOMETRIC_WEAK

Thiết bị phải được bảo mật bằng công nghệ nhận dạng sinh trắc học có mức độ bảo mật thấp. Điều này bao gồm các công nghệ có thể nhận dạng danh tính của một cá nhân tương đương với mã PIN gồm 3 chữ số (tỷ lệ phát hiện sai dưới 1/1.000).

Khi được áp dụng trên các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân trong phạm vi thiết bị Android 12, giá trị này sẽ được coi là COMPLEXITY_LOW cho ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

SOMETHING

Mật khẩu là bắt buộc, nhưng không có hạn chế nào về nội dung trong mật khẩu.

Khi áp dụng trên các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân trên Android 12 ở phạm vi thiết bị, giá trị này sẽ được coi là COMPLEXITY_LOW cho ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

NUMERIC

Mật khẩu phải chứa ký tự số.

Khi áp dụng trên các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân trên Android 12 ở phạm vi thiết bị, giá trị này sẽ được coi là COMPLEXITY_MEDIUM cho ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

NUMERIC_COMPLEX

Mật khẩu phải chứa ký tự số không có chuỗi lặp lại (4444) hoặc được sắp xếp theo thứ tự (1234, 4321, 2468).

Khi được áp dụng trên các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân trong phạm vi thiết bị Android 12, giá trị này sẽ được coi là COMPLEXITY_MEDIUM cho ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

ALPHABETIC

Mật khẩu phải chứa ký tự chữ cái (hoặc ký hiệu).

Khi được áp dụng trên các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân trong phạm vi thiết bị Android 12, giá trị này sẽ được coi là COMPLEXITY_HIGH cho ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

ALPHANUMERIC

Mật khẩu phải chứa cả ký tự số và ký tự chữ cái (hoặc ký hiệu).

Khi áp dụng trên các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân trên Android 12 ở phạm vi thiết bị, giá trị này sẽ được coi là COMPLEXITY_HIGH cho ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

COMPLEX

Mật khẩu phải đáp ứng các yêu cầu tối thiểu được quy định trong passwordMinimumLength, passwordMinimumLetters, passwordMinimumSymbols, v.v. Ví dụ: nếu passwordMinimumSymbols2, thì mật khẩu phải chứa ít nhất hai ký hiệu.

Khi được áp dụng trên các thiết bị có hồ sơ công việc thuộc sở hữu cá nhân trong phạm vi thiết bị Android 12, giá trị này sẽ được coi là COMPLEXITY_HIGH cho ứng dụng. Trong trường hợp này, các yêu cầu trong passwordMinimumLength, passwordMinimumLetters, passwordMinimumSymbols, v.v. sẽ không được áp dụng. Hãy xem PasswordQuality để biết chi tiết.

COMPLEXITY_LOW

Xác định dải độ phức tạp mật khẩu thấp là:

  • hình mở khóa
  • Mã PIN với các chuỗi lặp lại (4444) hoặc theo thứ tự (1234, 4321, 2468)

Thao tác này sẽ đặt giới hạn độ phức tạp tối thiểu mà mật khẩu phải đáp ứng.

Mức độ thực thi sẽ khác nhau giữa các phiên bản Android, chế độ quản lý và phạm vi mật khẩu. Hãy xem PasswordQuality để biết chi tiết.

COMPLEXITY_MEDIUM

Xác định dải độ phức tạp của mật khẩu trung bình như sau:

  • Mã PIN không có dãy lặp lại (4444) hoặc dãy theo thứ tự (1234, 4321, 2468), có độ dài ít nhất là 4
  • chữ cái, dài ít nhất 4 ký tự
  • chữ và số, độ dài tối thiểu 4

Thao tác này sẽ đặt dải độ phức tạp tối thiểu mà mật khẩu phải đáp ứng.

Việc thực thi sẽ khác nhau tuỳ theo phiên bản Android, chế độ quản lý và phạm vi mật khẩu. Hãy xem PasswordQuality để biết chi tiết.

COMPLEXITY_HIGH

Xác định dải độ phức tạp mật khẩu cao là:

Trên Android 12 trở lên:

  • Mã PIN không có chuỗi lặp lại (4444) hoặc theo thứ tự (1234, 4321, 2468), độ dài tối thiểu là 8
  • chữ cái, dài ít nhất 6 ký tự
  • chữ và số, dài ít nhất 6

Thao tác này sẽ đặt dải độ phức tạp tối thiểu mà mật khẩu phải đáp ứng.

Việc thực thi sẽ khác nhau tuỳ theo phiên bản Android, chế độ quản lý và phạm vi mật khẩu. Hãy xem PasswordQuality để biết chi tiết.

RequirePasswordUnlock

Khoảng thời gian sau khi thiết bị hoặc hồ sơ công việc được mở khoá bằng một phương thức xác thực mạnh (mật khẩu, mã PIN, hình mở khoá) mà thiết bị hoặc hồ sơ công việc đó có thể được mở khoá bằng bất kỳ phương thức xác thực nào khác (ví dụ: vân tay, tác nhân đáng tin cậy, khuôn mặt). Sau khoảng thời gian đã chỉ định, bạn chỉ có thể dùng các phương thức xác thực mạnh để mở khoá thiết bị hoặc hồ sơ công việc.

Enum
REQUIRE_PASSWORD_UNLOCK_UNSPECIFIED Không xác định. Giá trị mặc định là USE_DEFAULT_DEVICE_TIMEOUT.
USE_DEFAULT_DEVICE_TIMEOUT Thời gian chờ được đặt thành mặc định của thiết bị.
REQUIRE_EVERY_DAY Thời gian chờ được đặt thành 24 giờ.

UnifiedLockSettings

Kiểm soát việc cho phép khoá hợp nhất cho thiết bị và hồ sơ công việc trên các thiết bị chạy Android 9 trở lên có hồ sơ công việc. Thao tác này không ảnh hưởng đến các thiết bị khác.

Enum
UNIFIED_LOCK_SETTINGS_UNSPECIFIED Không xác định. Giá trị mặc định là ALLOW_UNIFIED_WORK_AND_PERSONAL_LOCK.
ALLOW_UNIFIED_WORK_AND_PERSONAL_LOCK Cho phép sử dụng một phương thức khoá chung cho thiết bị và hồ sơ công việc.
REQUIRE_SEPARATE_WORK_LOCK Bạn phải có một khoá riêng cho hồ sơ công việc.