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 cho phép của mật khẩu. 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ố lượng chữ cái tối thiểu bắt buộc trong mật khẩu. Chỉ được thực thi khi passwordQualityCOMPLEX.

passwordMinimumLowerCase

integer

Số lượng chữ cái viết thường tối thiểu bắt buộc trong mật khẩu. Chỉ được thực thi khi passwordQualityCOMPLEX.

passwordMinimumNonLetter

integer

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

passwordMinimumNumeric

integer

Số lượng chữ số tối thiểu bắt buộc trong mật khẩu. Chỉ được thực thi khi passwordQualityCOMPLEX.

passwordMinimumSymbols

integer

Số lượng ký hiệu tối thiểu bắt buộc trong mật khẩu. Chỉ được thực thi khi passwordQualityCOMPLEX.

passwordMinimumUpperCase

integer

Số lượng chữ cái viết hoa tối thiểu bắt buộc 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ị tối đa trước khi dữ liệu trên thiết bị bị xoá. 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ờ hết hạn 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 tin cậy, khuôn mặt). Sau khi hết khoảng thời gian đã chỉ định, chỉ có thể sử 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ó cho phép sử dụng chế độ khoá hợp nhất cho thiết bị và hồ sơ công việc hay không, trên các thiết bị chạy Android 9 trở lên có hồ sơ công việc. Bạn chỉ có thể đặt chính sách này nếu passwordScope được đặt thành SCOPE_PROFILE. Nếu không, chính sách sẽ bị từ chối. Nếu người dùng chưa đặt một khoá riêng cho hồ sơ công việc 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 coi là có phạm vi thiết bị nếu có passwordScope được đặt thành SCOPE_DEVICE.
  • Một thực thể của PasswordRequirements được coi là có phạm vi hồ sơ nếu bạn đặt passwordScope thành SCOPE_PROFILE.
  • Một thực thể PasswordRequirements được coi là dựa trên độ phức tạp (tương ứng là không dựa trên độ phức tạp) nếu có passwordQuality được đặt thành một giá trị dựa trên độ phức tạp (tương ứng là không dựa trên độ phức tạp).
  • Đối với mỗi phạm vi, nếu có một phần tử dựa trên độ phức tạp, thì cũng phải có một phần tử không dựa trên độ phức tạp cho cùng một phạm vi.
  • Nếu có một phần tử dựa trên độ phức tạp theo phạm vi hồ sơ và các phần tử theo phạm vi thiết bị, thì cả phần tử dựa trên độ phức tạp theo phạm vi thiết bị và phần tử không dựa trên độ phức tạp theo phạm vi thiết bị đều phải có.
  • Nếu có các phần tử theo phạm vi hồ sơ có cả giá trị dựa trên độ phức tạp và không dựa trên độ phức tạp (trong trường hợp này, các phần tử theo phạm vi thiết bị không được xuất hiện hoặc phải có cả giá trị dựa trên độ phức tạp và không dựa trên độ phức tạp), thì các giá trị dựa trên độ phức tạp tương ứng sẽ áp dụng cho các thiết bị có hồ sơ công việc trên Android 12 trở lên cho cả hai phạm vi và các giá trị không dựa trên độ phức tạp tương ứng sẽ áp dụng cho tất cả các thiết bị khác.
  • Nếu có các phần tử có phạm vi thiết bị có cả giá trị dựa trên độ phức tạp và giá trị không dựa trên độ phức tạp nhưng không có phần tử có phạm vi hồ sơ, thì giá trị dựa trên độ phức tạp sẽ áp dụng cho các thiết bị có hồ sơ công việc thuộc quyền sở hữu cá nhân trên Android 12 trở lên và chỉ giá trị không dựa trên độ phức tạp sẽ áp dụng cho tất cả các thiết bị khác.
  • Yêu cầu không dựa trên độ phức tạp ở phạm vi thiết bị đượ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 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 nào về mật khẩu đang có hiệu lực trên thiết bị.
  • Hãy tham khảo hướng dẫn về PasswordQuality để biết thêm thông tin về cách chọn các thực thể PasswordRequirements để áp dụng dựa trên chế độ quản lý.
Enum
PASSWORD_QUALITY_UNSPECIFIED Không có yêu cầu nào 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ó độ bảo mật thấp (tối thiểu). Điều này bao gồm cả những 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 là 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 trên Android 12, chế độ cài đặt này sẽ được coi là COMPLEXITY_LOW đối với ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

SOMETHING

Bạn phải nhập mật khẩu, nhưng không có quy định hạn chế về nội dung của mật khẩ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 trên Android 12, chế độ cài đặt này sẽ được coi là COMPLEXITY_LOW đối với ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

NUMERIC

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

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 trên Android 12, chế độ cài đặt này sẽ được coi là COMPLEXITY_MEDIUM đối với ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

NUMERIC_COMPLEX

Mật khẩu phải chứa các ký tự số và không có chuỗi lặp lại (4444) hoặc chuỗi có 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 trên Android 12, chế độ cài đặt này sẽ được coi là COMPLEXITY_MEDIUM đối với ứng dụng. Hãy xem PasswordQuality để biết chi tiết.

ALPHABETIC

Mật khẩu phải chứa các 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 trên Android 12, chế độ cài đặt này sẽ được coi là COMPLEXITY_HIGH đối với ứ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à 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 trên Android 12, chế độ cài đặt này sẽ được coi là COMPLEXITY_HIGH đối với ứ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 chỉ định trong passwordMinimumLength, passwordMinimumLetters, passwordMinimumSymbols, v.v. Ví dụ: nếu passwordMinimumSymbols2, thì mật khẩu phải chứa ít nhất 2 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 trên Android 12, chế độ cài đặt này sẽ được coi là COMPLEXITY_HIGH đối với ứ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 thông tin chi tiết.

COMPLEXITY_LOW

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

  • hình mở khóa
  • Mã PIN có dãy số lặp lại (4444) hoặc dãy số có thứ tự (1234, 4321, 2468)

Chế độ cài đặt này đặ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 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 mật khẩu trung bình như sau:

  • Mã PIN không có chuỗi lặp lại (4444) hoặc chuỗi có thứ tự (1234, 4321, 2468), có độ dài ít nhất là 4
  • theo bảng chữ cái, độ dài ít nhất là 4
  • vừa có chữ vừa có số, có độ dài ít nhất là 4

Chế độ cài đặt này đặ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 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_HIGH

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

Trên Android 12 trở lên:

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

Chế độ cài đặt này đặ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 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.

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 tin cậy, khuôn mặt). Sau khi hết khoảng thời gian đã chỉ định, chỉ có thể sử 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 Khoảng thời gian chờ được đặt thành giá trị 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 có cho phép sử dụng chế độ khoá hợp nhất cho thiết bị và hồ sơ công việc hay không, 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 Bạn có thể dùng một kiểu khoá chung cho thiết bị và hồ sơ công việc.
REQUIRE_SEPARATE_WORK_LOCK Bạn phải đặt một khoá riêng cho hồ sơ công việc.