Mit der sekundären Nutzerbestätigung können Sie die 2-Faktor-Authentifizierung für die Sprachsteuerung aktivieren . So können Sie die Sicherheit für bestimmte Aktionen erhöhen, z. B. das Ausschalten einer Überwachungskamera oder das Öffnen einer Tür Sekundäre Nutzerbestätigung ist nicht an eine bestimmte Geräteeigenschaft gebunden. So können Sie entscheiden, Google Assistant gibt eine Herausforderung aus. Sie können beispielsweise eine Herausforderung für das Merkmal OnOff für ein Sicherheitskamera, stellen aber keine Herausforderung für den OnOff Eigenschaft für ein Licht. Du kannst auch Assistant verwenden für dieselbe Aktion in bestimmten Situationen Herausforderungen stellen. Zum Beispiel haben Sie kann beantragen, dass Assistant eine Herausforderungsanfrage an eine Tür öffnen, wenn sich ein NFC-Schlüsselanhänger nicht in der Nähe dieser Tür befindet, aber nicht eine Abfrage senden, wenn der Schlüsselanhänger vorhanden ist.
Die Assistant kann zwei Arten von Identitätsbestätigungen ausgeben:
ausdrückliche Bestätigung oder persönliche Identifikationsnummer (PIN) erhalten. Dadurch wird ein
Blockierung der Identitätsbestätigung an die Intents QUERY
und EXECUTE
, die von Assistant an deine Aktion gesendet werden und einen challengeNeeded
-Fehler akzeptieren
Antwort. Assistant sendet die Intent-Anfrage dann an
Ihre Aktion mit den Challenge-Daten im Challenge-Block durchführen. Sie können dann
Daten zur Identitätsbestätigung validieren, um festzustellen, ob der Nutzer die richtigen Sicherheitsmaßnahmen angewendet hat
Antwort.
Assistant verwendet ein Dialogfeld, um die Herausforderung zu senden, aber wenn Sie Verwende Assistant auf Geräten ohne Sprachsteuerung, PIN und Bestätigungen auf dem Bildschirm erfolgen.
Unterstützte Gerätetypen
Die sekundäre Nutzerbestätigung wird auf allen Gerätetypen unterstützt.
Unterstützte Geräte-Traits
Die sekundäre Nutzerbestätigung wird für alle Geräte-Traits unterstützt.
Unterstützte Arten der Identitätsbestätigung
Folgende Arten von Identitätsbestätigungen werden bei der sekundären Nutzerbestätigung unterstützt:
- Keine Identitätsbestätigung: Eine Anfrage und Antwort, für die kein Sekundäre Nutzerbestätigung
- ackNeeded – sekundäre Nutzerbestätigung, die Folgendes erfordert: ausdrücklich bestätigen („Ja“ oder „Nein“). Außerdem können Trait-Zustände Feedback geben. Diese Art der Identitätsbestätigung wird aus Sicherheitsgründen nicht empfohlen Geräte und Eigenschaften.
- pinNeeded: eine sekundäre Nutzerbestätigung, die eine persönliche Identifikationsnummer (PIN), die sich ideal für Sicherheitsgeräte eignet und Eigenschaften.
Keine Herausforderung
Dieses Beispiel zeigt eine erfolgreiche EXECUTE
-Anfrage und -Antwort ohne
Herausforderung zum Einschalten des Lichts.
Nutzer | Schalte das Licht ein. |
Google Assistant | Ok, ich schalte 3 Lampen ein. |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.OnOff", "params": { "on": true } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "SUCCESS", "states": { "on": true, "online": true } }] } }
ackNeeded
Sekundäre Nutzerbestätigungsauthentifizierung, die mehrere Status verwenden kann für ein Merkmal oder eine einfache Bestätigungsauthentifizierung.
Es gibt die folgenden Arten von ackNeeded
-Aufgaben:
ack Needed einfach
Dieses Beispiel zeigt eine einfache Anfrage und Antwort mit einer ackNeeded
-Abfrage
und die Bestätigung, dass das Licht gedimmt wird.
Nutzer | Dimme das Licht im Wohnzimmer. |
Google Assistant | Das Licht im Wohnzimmer wird gedimmt. Sind Sie sicher? |
Nutzer | Ja. |
Google Assistant | Das Licht im Wohnzimmer wird gedimmt. |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.BrightnessAbsolute", "params": { "brightness": 12 } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "errorCode": "challengeNeeded", "challengeNeeded": { "type": "ackNeeded" } }] } }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.BrightnessAbsolute", "params": { "brightness": 12 }, "challenge": { "ack": true } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "SUCCESS" }] } }
Mit Eigenschaftsstatus akzeptabel
Eine sekundäre Authentifizierung zur Nutzerbestätigung, die Statuswerte für eine
Eigenschaft ist.
Wenn Sie zum Beispiel mit dem
TemperatureSetting Trait und beide
thermostatMode
und thermostatTemperatureSetpoint
sind festgelegt,
Assistant kann Folgendes fragen: Möchtest du die Heizung wirklich stellen?
der Klimaanlage auf 28 Grad einstellen?
Sie können auch einen Bundesstaat in eine Antwort einfügen, Assistant führt auf Grundlage eines bestimmten
Die folgenden Traits und Status unterstützen ackNeeded
mit Trait-Zuständen. A
eines bestimmten Merkmals gibt an, dass alle zugehörigen Bundesstaaten unterstützt werden.
- ArmDisarm
currentArmLevel
currentStatusReport
- Fill
- LockUnlock
- OnOff
on
- OpenClose
- Scene
- TemperatureSetting
thermostatMode
thermostatTemperatureSetpoint
thermostatTemperatureSetpointHigh
thermostatTemperatureSetpointLow
Dieses Beispiel zeigt eine Anfrage und Antwort mit einer ackNeeded
-Abfrage, die
einen Eigenschaftsstatus verwendet. Er schaltet den Modus der Klimaanlage auf Heizen und stellt den
Temperatur auf 28 Grad einstellen. Anschließend werden die Nutzer von Assistant gefragt
für die Bestätigung, die Heizung einzuschalten und die Temperatur auf 28 Grad einzustellen
Grad, da ein thermostatTemperatureSetpoint
von 28
als Zustand zurückgegeben wird
in der Antwort angeben.
Nutzer | Stell die Klimaanlage auf „Heizen“. |
Google Assistant | Möchtest du die Heizung der Klimaanlage wirklich auf 28 stellen? Abschlüsse? |
Nutzer | Ja. |
Google Assistant | Die Temperatur der Klimaanlage wird auf 28 Grad eingestellt. |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.TemperatureSetting", "params": { "thermostatMode": "heat" } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "states": { "thermostatMode": "heat", "thermostatTemperatureSetpoint": 28 }, "errorCode": "challengeNeeded", "challengeNeeded": { "type": "ackNeeded" } }] } }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.TemperatureSetting", "params": { "thermostatMode": "heat" }, "challenge": { "ack": true } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "SUCCESS", "states": { "thermostatMode": "heat", "thermostatTemperatureSetpoint": 28 } }] } }
pinNeeded
Für Sicherheitsgeräte wird die Herausforderung „pinNeeded
“ empfohlen.
Dieses Beispiel zeigt eine erste Anfrage und Antwort mit einem pinNeeded
.
Herausforderung. Das Beispiel gibt eine Antwort mit einer pinNeeded
-Abfrage zurück.
Assistant fragt nach der Markierung. An dieser Stelle können Nutzende
eine falsche oder gültige PIN anzugeben.
Beispielanfrage und -antwort für eine falsche oder gültige PIN:
Nutzer | Tür aufschließen. |
Google Assistant | Könnten Sie mir bitte den Sicherheitscode geben? |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.LockUnlock", "params": { "lock": false } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "errorCode": "challengeNeeded", "challengeNeeded": { "type": "pinNeeded" } }] } }
Falsche PIN
Dieses Beispiel zeigt die Anfrage und Antwort mit einem challengeFailedPinNeeded
.
Herausforderung. Dieser Wettkampf sollte nach der ersten pinNeeded
-Herausforderung verwendet werden
fehlgeschlagen.
Wenn ein challengeFailedPinNeeded
-Typ zurückgegeben wird,
Assistant fragt noch einmal nach dem Sicherheitscode. Wenn der Nutzer
zu viele fehlgeschlagene Versuche führt, können Sie eine tooManyFailedAttempts
Fehlerantwort. Siehe Fehlerantworten.
Nutzer | 333222 |
Google Assistant | Der Sicherheitscode ist leider falsch. Könnten Sie mir bitte den Sicherheitscode geben? |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.LockUnlock", "params": { "lock": false }, "challenge": { "pin": "333222" } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "errorCode": "challengeNeeded", "challengeNeeded": { "type": "challengeFailedPinNeeded" } }] } }
Gültige PIN
Dieses Beispiel zeigt die Anfrage und Antwort einer gültigen PIN.
Nutzer | 333444 |
Google Assistant | Die Tür wird entriegelt. |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.LockUnlock", "params": { "lock": false }, "challenge": { "pin": "333444" } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "SUCCESS", "states": { "isLocked": false, "isJammed": false } }] } }
Nutzer | Dimme das Licht im Wohnzimmer. |
Google Assistant | Könnten Sie mir bitte den Sicherheitscode geben? |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.BrightnessAbsolute", "params": { "brightness": 12 } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "errorCode": "challengeNeeded", "challengeNeeded": { "type": "pinNeeded" } }] } }
Fehlerantworten
Folgende Fehlercodes können zusammen mit Ihren Antworten zurückgegeben werden:
- tooManyFailedAttempts – Leider sind zu viele Fehlversuche aufgetreten. Öffne die App auf deinem Gerät, um diese Aktion abzuschließen.
- pinIncorrect – Der Sicherheitscode ist falsch.
- userCancelled - OK
Vollständige Liste der Fehler und Ausnahmen.