3.3.8Poziom AA

Dostępne uwierzytelnianie — minimum

Accessible Authentication (Minimum)

Na każdym etapie uwierzytelniania zapewnij pomoc lub alternatywę dla testu poznawczego, z wyjątkami AA dotyczącymi rozpoznania obiektów i własnej treści.

Komu pomaga
Pamięć i koncentracja
Zastosowanie
WWWAplikacje mobilneAplikacje desktopoweDokumenty cyfroweInne urządzenia

Warunki i wyjątki opisano w artykule.

Wersja
WCAG 2.2, wprowadzone w 2.2
Zasada / wytyczna
Zrozumiałość / 3.3
Stan researchu
Draft AI. Bez przeglądu człowieka.
Redakcja artykułu
· wersja robocza
Na tej stronie

Co oznacza to kryterium

Każdy wymagany etap uwierzytelniania istniejącego użytkownika powinien dać się przejść bez obowiązkowego pamiętania, przepisywania lub rozwiązywania zagadki. Zapewnij skuteczną pomoc, np. pełne wklejenie lub menedżera danych, albo dostępną alternatywę. Na poziomie AA dopuszczono też rozpoznanie obiektów i własnej wcześniejszej treści nietekstowej; nadal mogą one stwarzać inne bariery.

Potrzeba z design systemu Bariera i skutek
cognitive — Pamięć i koncentracja Pamiętanie własnego hasła, odczytywanie i przepisywanie kodu, poprawna pisownia, operowanie liczbami lub zagadką mogą uniemożliwić przejście etapu. Pomoc pozwala użyć danych bez tej pracy poznawczej.

Kryterium pomaga także osobom mającym trudności z czytaniem i przetwarzaniem informacji. To uzasadnienie tagu poznawczego, nie diagnoza użytkownika. Nie przypisano automatycznie wzroku, słuchu, motoryki i wszystkich ikon: dostępność CAPTCHA, pól i alternatyw dla tych potrzeb wymaga także innych kryteriów.

Przykłady błędów i poprawek

Fixture Pracowni modeluje etap MFA istniejącego użytkownika: ten sam syntetyczny kod 482731, lokalny submit i brak dodatkowej metody. Kod próbny zastępuje wartość już dostępną, bez dostarczenia SMS lub wiadomości. Kopiuj kod próbny używa zwykłego UI i systemowego schowka Fluttera; XCTest następnie dotyka pola i wysyła systemowy Cmd+V.

Problem: bad przy wieloznakowym wejściu zachowuje tylko pierwszy znak. Pełny paste daje 4 i odrzucenie, bez innej metody. Skutek: użytkownik musi przepisać cyfry. Poprawka: good przyjmuje pełną zmianę; native value ma 482731, a zwykły submit tworzy zaakceptowany lokalny rekord.

iOS bad: po pełnym wklejeniu przyjęto tylko 4, a lokalny submit odrzucił kod.

Systemowy Cmd+V w iOS Simulator 26.5, 2026-10-04. Natywna wartość i submit pokazują obcięcie; brak alternatywy ustalono z fixture.

iOS good: pełny kod próbny 482731 i zaakceptowany lokalny rekord.

Ten sam kod, systemowe wklejenie i natywny odczyt; nie jest to rzeczywista sesja konta lub test dostarczenia MFA.

Sześć pól z jednym wklejeniem

Control przyjmuje cały kod w pierwszym polu i rozdziela go do sześciu kontrolerów. Rzeczywisty odczyt pól ma 4 / 8 / 2 / 7 / 3 / 1, a submit przyjmuje 482731. Nie zgłaszaj błędu wyłącznie na podstawie liczby ramek. W bad pojedynczo wpisane cyfry też prowadzą do akceptacji; to kontrola funkcji kosztem transkrypcji, nie pomoc dostępności.

iOS control: sześć pól 4, 8, 2, 7, 3, 1 i przyjęty rekord 482731.

Jedno pełne wklejenie do pierwszego pola rozdzieliło kod. Sześć ramek samo nie dowodzi usterki F109.

iOS bad: ręcznie wpisany pełny kod został zaakceptowany.

Kontrola działania formularza kosztem transkrypcji. Ręczne wpisanie nie staje się skuteczną pomocą z 3.3.8.

Formularz webowy i ograniczenie providera

W lokalnym HTML/JS wykonano copy, paste, kliknięcia, ręczne wpisanie, cykl, reset i fallback. Kadry i submit pokazują pełną wartość lub obcięcie, ale systemowy trusted clipboard webowy jest NOT-RUN: z 47 zapisanych zdarzeń 40 było trusted, siedem untrusted; copy/paste i input good miały trusted:false. Etykieta Meta+V nie zmienia tego wyniku.

Web good: widoczny pełny kod i przyjęty lokalny rekord.

CUA/provider, IAB/macOS. Copy/paste miało trusted:false; kadr i submit potwierdzają mechanikę, bez dowodu native trusted clipboard.

Web bad: widoczny pierwszy znak 4 i odrzucenie lokalnego submit.

Ta sama webowa próba z ograniczeniem providera. Redagowany getter DOM/AX nie jest dowodem rzeczywistej długości kodu.

DOM/AX redaguje wartość do <redacted>. valueLength=10, matchesVisibleSource=false i porównanie połączonych pól odnoszą się do tej projekcji API, więc nie dowodzą rzeczywistej długości lub różnicy kodu. Niezależny getter webowy jest NOT-RUN. iOS ma oddzielny systemowy paste i nieredagowany native value. Historyczna kopia pierwszego zapisu webowego ma te same dziewięć JPEG; nie jest drugą unikalną serią.

Dalsze scenariusze — niewykonane

Hasło z blokadą paste i managera wymaga skutecznej pomocy lub alternatywy. Żądanie wybranych znaków hasła wymaga przetworzenia. Audio CAPTCHA z przepisywaniem nie usuwa transkrypcji; recovery też musi mieć właściwą ścieżkę. Obraz dostarczony do zapamiętania przez serwis i osobista odpowiedź tekstowa nie są własną treścią nietekstową użytkownika. Te scenariusze edukacyjne pozostają runtime NOT-RUN.

Kiedy obowiązuje i gdzie są wyjątki

Norma dotyczy każdego wymaganego etapu uwierzytelniania. Dostępny pierwszy ekran nie naprawia niedostępnego MFA, odzyskania konta lub CAPTCHA pojawiającego się dopiero po błędach/ad blockerze. Co najmniej jedna odpowiednia możliwość na danym etapie wystarcza; nie trzeba wdrażać wszystkich metod. Pomoc może pochodzić z treści, platformy, przeglądarki lub AT, lecz musi rzeczywiście działać i sama być dostępna na deklarowanym poziomie.

Test poznawczy obejmuje zapamiętanie, przepisanie lub przetworzenie informacji, poprawną pisownię, obliczenia i puzzle. Stałe osobiste imię, e-mail lub telefon nie są takim testem; specjalnie wymyślony dla serwisu identyfikator może wymagać pamiętania. Początkowe zakładanie konta i wybór username są poza intencją tego kryterium; pomoc przy nich pozostaje dobrą praktyką, nie dodatkowym obowiązkiem 3.3.8.

Możliwość normy Granica
Alternatywa bez testu poznawczego Faktycznie dostępna ścieżka, np. potwierdzenie na urządzeniu, biometria/posiadanie albo link. Sama etykieta „inna metoda” nie jest dowodem działania. Zewnętrzny provider może mieć własną barierę.
Mechanizm pomocy Manager danych lub wklejenie całego kodu/hasła pozwala uniknąć pamiętania i transkrypcji. Sam autocomplete nie dowodzi autofill. Nie blokować aktywnie managerów ani paste.
Rozpoznawanie obiektów, wyjątek AA Rozpoznanie typowego samochodu/zwierzęcia może się mieścić w wyjątku. Policzenie obiektów, pomnożenie liczby kotów przez psy lub obrót modelu jako zagadka nie jest samym rozpoznaniem.
Własna treść nietekstowa, wyjątek AA Użytkownik identyfikuje wcześniej dostarczony przez siebie obraz/audio/wideo. Zapamiętanie obrazka dostarczonego przez serwis nie spełnia tej granicy; tekstowa odpowiedź osobista nie jest tym wyjątkiem.

Wyjątki obiektów i własnych treści mogą korzystać z obrazu, wideo lub audio. Nie występują w AAA 3.3.9. Nie są gwarancją dostępności dla wszystkich potrzeb ani zwolnieniem z innych kryteriów; preferować skuteczną ścieżkę bez testu poznawczego.

Audio CAPTCHA wymagające przepisania usłyszanych znaków nie usuwa transkrypcji. Wybór wybranych znaków hasła również wymaga przetworzenia i przepisania, chyba że działa inna odpowiednia metoda. Sześć pól OTP nie jest automatycznie błędem: może przyjąć cały paste do pierwszego pola i rozdzielić go bez pracy użytkownika.

Dla kodu z drugiego urządzenia transfer między urządzeniami jest poza zakresem oceny treści webowej. Zakładamy dostępność kodu w schowku i badamy faktyczne wklejenie w pole. Nie oznacza to, że samo wyświetlenie kodu lub ręczne wpisanie testowym fill/typeText dowodzi paste. Metody oparte na posiadaniu/biometrii bez przepisywanego kodu nie są testami poznawczymi; WebAuthn pozostawiający modalność urządzenia użytkownikowi nie oznacza, że autor serwisu wymusza pamiętanie PIN. Opcja pokaż hasło może pomagać, ale nie jest normatywnie obowiązkowa w 3.3.8.

Techniki i ich granice

Przeczytano wymaganie i definicje WCAG 2.2, pełne Understanding z 2026-09-06, H100 z 2026-01-12, G218 z 2025-07-15, F109 z 2026-04-27, WCAG2ICT z 2025-12-11 oraz aktualny katalog ACT. Daty pochodzą z treści, nie z domysłu na podstawie pobrania. Pochodzenie publicznych body i zredagowane metadane są zachowane w dowodach technicznych; karta nie dodaje zewnętrznej bibliografii.

  • H100 jest techniką wystarczającą, nie normą. Dla procesu tylko e-mail + hasło sprawdza odpowiednie nazwy każdego pola oraz rzeczywisty paste. Poprawne znaczniki/autocomplete pomagają managerowi; atrybut nie zastępuje testu. Tutaj H100 NOT-RUN: wykonano kod MFA, nie logowanie hasłem ani managerem.
  • G218 opisuje link otrzymany e-mailem. Test wymaga odebrania wiadomości, otwarcia linku i rzeczywistego zalogowania konta; przy AAA dodatkowo sprawdza brak rozpoznawania obiektów. G218 NOT-RUN: nie wysyłano wiadomości, nie używano konta; lokalna atrapa magic-link nie byłaby pełnym PASS i nie została dodana.
  • F109 bada możliwość wprowadzenia całego hasła/kodu w pierwotnym formacie oraz odpowiednią alternatywę. Usterka występuje dopiero przy braku obu. Nasz bad jest własnym odtworzeniem bariery pełnego paste; jego ręczna transkrypcja potwierdza działanie formularza, nie dostępnościowy PASS. Przykłady F109 obejmują częściowe znaki i rozdzielone pola; control ilustruje wyraźną granicę dla pól automatycznie rozdzielających kod.
  • Understanding wymienia WebAuthn, OAuth i zestawy metod 2FA także jako potencjalne przyszłe techniki. Nie przypisano im istniejących numerów ani testów. OAuth/WebAuthn/backend NOT-RUN.
  • Katalog ACT dla 3.3.8 jawnie wskazuje brak reguł. ACT NOT-RUN; brak reguły nie oznacza zgodności. Własny checker ma wyłącznie zakres fixture i integralności dowodów.

Platformy

Weryfikacja wszystkich poniższych interpretacji: AI, 2026-10-04, przegląd człowieka NOT-RUN. Brak uruchomienia nie jest wyłączeniem platformy; tabela nie rozstrzyga obowiązków prawnych ani EN 301 549, której tu nie oceniano.

ID / środowisko Podstawa / kryterium Stan, warunek i zakres Adaptacja oraz uzasadnienie Wykonanie
web — WWW, także przeglądarka telefonu WCAG 2.2 / 3.3.8 AA Dotyczy warunkowo: uwierzytelnianie istniejącego użytkownika, wszystkie wymagane etapy i warunkowe bramki. Bez zmiany wymagania; rozpatrzyć pomoc i alternatywy całego procesu. Lokalny HTML w IAB/macOS; opisane ograniczenie wejścia providera. Web telefonu NOT-RUN.
mobile — aplikacje mobilne WCAG2ICT 2.2 Group Note / 3.3.8 Dotyczy warunkowo: własny mechanizm uwierzytelniania aplikacji, MFA i recovery. „Witryna” staje się witryną, dokumentem poza WWW lub oprogramowaniem. Odblokowanie platformy poniżej aplikacji, poza kontrolą autora, jest poza zakresem jej oceny. Flutter/Cupertino na dedykowanym iOS Simulator; Android i fizyczny iPhone NOT-RUN.
desktop — aplikacje desktopowe Ta sama interpretacja / 3.3.8 Dotyczy warunkowo: uwierzytelnianie kontrolowane przez autora programu. Ta sama substytucja; nie przypisywać aplikacji wymuszonego przez OS hasła odblokowania. Własny ekran logowania nadal podlega ocenie. Natywna aplikacja desktop NOT-RUN; WWW na macOS nie potwierdza jej działania.
document — dokumenty cyfrowe poza WWW Ta sama interpretacja / 3.3.8 Dotyczy warunkowo: dokument uczestniczy w uwierzytelnianiu. Zwykły otwarty statyczny dokument bez takiego procesu nie uruchamia warunku. Własna treść nietekstowa może być wcześniej dostarczona dokumentowi/programowi. Ustalić, kto kontroluje bramkę i czy odbiornik pozwala na pomoc, np. paste. PDF/odbiornik NOT-RUN; nie uznano całej kategorii za wyłączoną.
other — oprogramowanie kiosku lub urządzenia z zamkniętą funkcjonalnością Ta sama interpretacja / 3.3.8 i uwagi o closed functionality Dotyczy warunkowo: własna bramka uwierzytelniania urządzenia. Brak zewnętrznego managera/schowka wymaga oceny dostępnej alternatywy lub pomocy wbudowanej. Gdy przy power-on nie jest wykonalna żadna pomoc, spełnienie może być niemożliwe — nie jest to automatyczny wyjątek. Sprzęt ocenia się osobno. Kiosk/urządzenie i power-on NOT-RUN.

Część webową aplikacji hybrydowej oceniać jako WWW, natywną jako oprogramowanie. W badanej fixture modelowany jest tylko lokalny etap MFA, bez sesji serwera lub odblokowania OS.

Rozwiązania w technologiach

Minimalna wspólna poprawka: standardowe pole przechowujące cały tekst, skuteczne paste i semantyczny cel. Hint może wspierać autofill, nie jest dowodem działania. W produkcji sprawdzić wszystkie etapy, walidację i bezpieczny backend; poniższe fragmenty nie implementują bezpieczeństwa ani logowania. Fragmenty innych frameworków są edukacyjne; nie przypisano im niewykonanych wersji.

Flutter / Dart

W State, z final code = TextEditingController(); dispose kontrolera należy do rodzica:

import 'package:flutter/cupertino.dart';
import 'package:flutter/services.dart';
// W build istniejącego State:
Semantics(
  label: 'Kod weryfikacyjny',
  child: CupertinoTextField(
    controller: code,
    autocorrect: false,
    autofillHints: const [AutofillHints.oneTimeCode],
  ),
);

Nie ograniczać każdej operacji wejścia do pierwszego znaku, nie wyłączać standardowej obsługi paste. Pełna demonstracja zawiera także control rozdzielający kod. Dla logowania hasłem: nazwy pól, AutofillGroup, AutofillHints.username/password i standardowy edytor; nie utożsamiać obscureText z blokadą paste. Dokumentacja PASS 2026-10-04; analiza/build/runtime Flutter 3.44.9, Dart 3.12.2 na iOS Simulator PASS w zakresie kodu. Password manager/autofill NOT-RUN.

iOS / SwiftUI

import SwiftUI
struct VerificationCode: View {
    @State private var code = ""
    let submit: (String) -> Void
    var body: some View {
        VStack {
            TextField("Kod weryfikacyjny", text: $code)
                .textContentType(.oneTimeCode)
                .autocorrectionDisabled()
            Button("Sprawdź kod") { submit(code) }
        }
    }
}

Binding przyjmuje pełną zmianę; nie obcinać jej w onChange do jednego znaku. textContentType daje systemowi wskazówkę, a standardowy edytor pozostawia pomoc. Przy haśle użyć SecureField z .password i prawidłowym username; ograniczenia kopiowania z secure field nie są zakazem wklejania do niego. Przeczytano właściwe przeciążenie UITextContentType dla iOS, nie tylko przeciążenie macOS. Dokumentacja PASS 2026-10-04; kompilacja/runtime SwiftUI NOT-RUN. Driver XCTest nie potwierdza tego fragmentu.

Android / Jetpack Compose

import androidx.compose.foundation.layout.Column
import androidx.compose.material3.Button
import androidx.compose.material3.Text
import androidx.compose.material3.TextField
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue

@Composable
fun VerificationCode(submit: (String) -> Unit) {
    var code by remember { mutableStateOf("") }
    Column {
        TextField(value = code, onValueChange = { code = it },
            label = { Text("Kod weryfikacyjny") }, singleLine = true)
        Button(onClick = { submit(code) }) { Text("Sprawdź kod") }
    }
}

Pokazano dokumentowany wariant value-based; pełna zmiana trafia do stanu. Nie odrzucać wieloznakowego wejścia przez take(1) lub transformację input. Oficjalne materiały opisują także nowsze state-based fields i InputTransformation; dobór zależy od użytej biblioteki. Dla username/hasła Modifier.semantics { contentType = ContentType.Username/Password } wspiera autofill w obsługującym to stosie; nie dowodzi jego wykonania. Dokumentacja PASS 2026-10-04; kompilacja/runtime Compose i Android NOT-RUN, bez nowych zależności.

React Native / TypeScript

import { useState } from 'react';
import { Button, Text, TextInput, View } from 'react-native';
export function VerificationCode({
  submit,
}: {
  submit: (code: string) => void;
}) {
  const [code, setCode] = useState('');
  return (
    <View>
      <Text>Kod weryfikacyjny</Text>
      <TextInput
        accessibilityLabel="Kod weryfikacyjny"
        value={code}
        onChangeText={setCode}
        autoCorrect={false}
        autoComplete="one-time-code"
        contextMenuHidden={false}
      />
      <Button title="Sprawdź kod" onPress={() => submit(code)} />
    </View>
  );
}

Zachować cały tekst, menu i systemowe skróty. Samo contextMenuHidden={false} nie potwierdza paste. Dla hasła właściwe autoComplete="current-password", username i secureTextEntry; nie używać jednocześnie sprzecznych textContentType i autoComplete, bo dokumentacja opisuje pierwszeństwo celu iOS. Dokumentacja TextInput PASS 2026-10-04; typecheck/kompilacja/runtime NOT-RUN.

HTML / CSS / JavaScript

<form>
  <label for="code">Kod weryfikacyjny</label>
  <input
    id="code"
    name="code"
    autocomplete="one-time-code"
    inputmode="numeric"
  />
  <button type="submit">Sprawdź kod</button>
</form>

CSS może ustalić układ, nie zastępuje pomocy. W fixture good nie anuluje paste; control czyta pełny kod z zdarzenia i rozdziela go. Bad celowo anuluje domyślne paste oraz wstawia pierwszy znak, przy zachowaniu zwykłego wpisywania. Nie są to rozwiązania bezpiecznego serwera.

Dla hasła i e-maila przykład edukacyjny H100 używa powiązanych label, type="email" autocomplete="email" oraz type="password" autocomplete="current-password"; do identyfikatora logowania dobierać właściwy username. Dokumentacja HTML PASS 2026-10-04; runtime fixture przez provider PASS, native trusted clipboard i H100/autofill NOT-RUN.

Jak sprawdzić

  1. Zidentyfikuj proces istniejącego użytkownika i wszystkie obowiązkowe etapy, alternatywy, MFA, recovery oraz warunkowe CAPTCHA. Nie ograniczaj próby do jednego udanego loginu.
  2. Dla każdego testu poznawczego ustal skuteczną pomoc, alternatywę lub konkretny wyjątek AA. Rozpoznawanie obiektu odróżnić od obliczenia, własną treść od dostarczonej przez serwis i tekstowej odpowiedzi.
  3. Skopiuj cały syntetyczny kod/hasło zwykłym UI lub do prawdziwego schowka. Użyj systemowego paste; sprawdź pełną rzeczywistą wartość po operacji i normalny submit. fill, typeText i sam atrybut celu nie dowodzą paste/autofill.
  4. Sprawdź ten sam paste w bad; zanotuj obcięcie/odrzucenie oraz brak odpowiedniej alternatywy. Dodatkowo ręcznie wpisz cały kod i submituj: to kontrola, że funkcja działa kosztem transkrypcji, nie wynik spełnienia 3.3.8.
  5. Dla sześciu pól wklej cały kod raz do pierwszego; sprawdź wszystkie pola i rezultat. Sam screenshot ramek nie wystarczy do zgłoszenia F109.
  6. Dla metody alternatywnej sprawdź jej realny skutek i dostępność. G218 wymaga odbioru e-maila i zalogowania; WebAuthn/OAuth i manager potrzebują własnej próby. Niewykonane pozostają NOT-RUN.

Rzeczywiste wykonanie źródła

Dane z 2026-10-04; bez nowego wykonania podczas migracji.

Kontrola Wynik i zakres
Końcowy Flutter Analiza, 67 istniejących hostowych testów i build PASS, Flutter 3.44.9 / Dart 3.12.2.
iOS driver v2 XCTest PASS 78,731 s / 88,258 s orkiestracji; 21 STATE/TREE, 17 INPUT, 13 PNG, systemowy Cmd+V i native value. Brak FAIL/INTERRUPTED UI.
iOS środowisko iPhone 17 / iOS 26.5 Simulator, Xcode 27.0 / SDK 27.0; 402×874 pt, PNG 1206×2622; odczyt light/content size large.
Web Mechanika providera PASS, 18 DOM/AX, 16 grup działań, dziewięć JPEG, 40 trusted / siedem untrusted zdarzeń. Native trusted clipboard i niezależny getter NOT-RUN.
Oględziny i checker AI obejrzała 13 PNG i dziewięć JPEG. Historyczne kopie JPEG identyczne; checker bada znane wartości, sekwencje, wyniki, geometrię i SHA, bez ACT lub benchmarku. Film/audio nie powstały.
Przygotowanie — FAIL / NOT-RUN Formatter po formatowaniu nie mógł zapisać telemetrii; web przed serwerem/binding FAIL. Przygotowawczy v1 build PASS, runtime NOT-RUN; barierę poprawiono przed instalacją i świeżym v2. Pięć FAIL przygotowania checkera zachowano, potem poprawiono oczekiwania bez ponowienia UI.
Sprzątnięcie Własny serwer, runner i karta 2 zakończone. Karta błędu 1: CLOSE-FAIL przez binding data: i URL policy; jej automatyczne zamknięcie nie było jeszcze obserwowane przed hashami.
Niewykonane Pełne konto/backend, dostarczenie kodu, manager/autofill, H100/G218, OAuth/WebAuthn, Android i fizyczny iPhone, natywny desktop, PDF/kiosk, AT, człowiek i zaślepiony walidator NOT-RUN.

Checker nie ustala z jednego kadru całego logowania, pochodzenia obrazu lub skuteczności alternatywy. Fałszywy alarm może dać sześć pól, działająca inna metoda, wyjątek AA lub OS poza kontrolą autora. Fałszywy PASS: samo autocomplete, atrapa magic-link, ręczne wpisanie uznane za paste albo redagowany getter. Oczekiwania good/bad/control nie należą do wejścia przyszłego zaślepionego walidatora. Lokalna akceptacja nie dowodzi sesji użytkownika ani bezpieczeństwa konta.

Jak sprawdza Clearship

redundant-entry-auth-1 w P0 rozpoznaje uwierzytelnianie po polu bieżącego hasła lub kolejnym kroku takiego procesu. Szuka kodu/hasła, przepisania znaków z obrazka lub obliczenia. Na Androidzie korzysta z paste-1 — próby ACTION_PASTE i długości — oraz autofill-1. Ten kanał nie jest menu/klawiaturowym paste ani pełnym testem menedżera danych.

Kontrolny Android z 8 października 2026 r.: 6/8 usterek, 0/20 fałszywych alarmów, below-threshold. Na iOS brak sygnałów paste/autofill kieruje kody i hasła do człowieka; zestaw rozwojowy z 9 października dał 4/8 i 0/20, pomiar kontrolny NOT-RUN, katalog not-measured. Nie ma podstaw do automatycznego wyniku bez usterek.

Inna kontrolka, wyjątki rozpoznania obiektu/własnej treści, skuteczność alternatywy, pełne login/MFA/recovery, manager, wiadomość i OAuth/WebAuthn wymagają człowieka. Reguła wskazuje także blokadę jednego z kanałów pomocy, więc rzeczywistą wystarczającą drogę trzeba ocenić wobec normy. Metoda nie bada treści webowej. Nieobsługiwane wyzwanie pozostaje pominięciem z ograniczeniem, bez obchodzenia uwierzytelniania. Systemowy paste źródłowego iOS nie oznacza takiego kanału w harnessie.

Powiązane kryteria