-
Trust Insightsについて
SNS詐欺や脅迫による被害を防ぐTrust Insightsについて解説します。この新しいフレームワークでは、プライバシー保護のための機械学習を利用し、ユーザーが高リスクな行動に誘導される可能性がある状況を検出します。Trust Insightsをアプリに統合し、シグナルを解釈して、プライバシーを尊重しながらユーザーを保護する適切な介入策を設計する方法を確認しましょう。
関連する章
- 0:00 - Introduction
- 2:35 - Generating insights
- 6:50 - Feedback requirements
- 9:25 - Privacy
- 10:34 - Best practices
- 12:48 - Next steps
リソース
関連ビデオ
WWDC26
-
このビデオを検索
こんにちは、私はMike Armstrongです。 Appleのエンジニアリングマネージャーです。 このビデオでは、Trust Insightsを使って アプリ内のソーシャルエンジニアリングの 脅威を検出・対応する方法を学びます。 ソーシャル詐欺は増大する課題です。 システムではなく、人を標的とした攻撃です。 ソーシャルエンジニアリングは 人間の心理を悪用します。 技術的な脆弱性ではなく。 ユーザーは脅迫、恐怖、 または欺かれ、 正当な行動を取らされる可能性があります。 そしてアプリは、真の意図と 強制された意図の違いを識別できません。
業界全体で、パートナーからの フィードバックを通じて、 繰り返し発生するいくつかの 強制パターンが目立ちます。 テクニカルサポート詐欺: 偽のアラートでリモートアクセスを促し、 ユーザーを欺いて コントロールを手放させます。 権威者の成りすまし: 銀行や政府機関を装い、 または法執行機関として 機密情報を収集します。 そして家族緊急詐欺: 感情的なつながりを悪用した 緊急の送金要求で、 AIが生成したディープフェイクを ますます利用しています。 リアルタイムのコーチングにより 検出は特に困難になります。 攻撃者は音声通話、チャット、 メッセージで被害者を行動へ誘導します。 ユーザーはその後、 自ら行動を実行します。 認証された、正当な形で。 多要素認証や生体認証などの 既存の保護機能は、 このシナリオでは役立ちません。 ユーザー自身が行動しているためです。
新しい種類のシグナルが必要です。 認証は「誰か」を確認しますが、 「自由に行動しているか」は確認しません。
行動コンテキストは、真の意図と 強制された行動を区別するのに役立ちます。
重要なのは、このシグナルが プライバシーを保護しながら ユーザーを守る必要があることです。
Trust Insights、iOS 27で導入された フレームワークは、 アプリがこの行動コンテキストを理解するための 新しいアプローチを提供します。 Trust Insightsをアプリに統合する方法と、 API使用の要件を説明し、 プライバシーアーキテクチャを解説し、 アプリがトラストシグナルにどう応答するかの 例で締めくくります。
インサイトの生成から始めましょう。 Trust Insightsは、デバイスと クラウドインフラを組み合わせたフレームワークで、 統合は完全にクライアントサイドで、 Swift APIを使用します。
最初のステップは設定です。 Trust Insightsの生成には エンタイトルメントが必要です。 XcodeでアプリターゲットにCapabilityを 宣言して設定します。
Trust Insightsをインポートした後、 次のステップは、リクエストするインサイトを 含むパラメータパックを作成することです。 schemaは必須ですが、 modelVersionはオプションです。 同じインサイトの現在のバージョンと 以前のバージョンを両方指定することで、 モデルのガバナンスと バリデーションをサポートできます。
InsightEvaluatorは 複数のインサイトを受け付けます。 コンテキストでoperationCategoryを指定し、 evaluationsも指定します。 operationCategoryはシステムに ユーザーが行っている操作の種類を伝え、 どのモデルロジックが 適用されるかを決定します。 5つのカテゴリが利用可能です。 payment: ゲーム内購入を含む 資産、コンテンツ、または金銭の交換。
account: アカウントの詳細や セキュリティ情報の更新。
resourceUse: コストがかかるまたは 制約のあるインフラへのリクエスト、 AIインフェレンスなど。 communication: メッセージの送信、 フォームの送信、または文書への署名。 そしてother: 上記に当てはまらない 操作のフォールバック。 ユースケースがここに当てはまる場合は、 Feedback Assistantでフィードバックをご提出ください。 次に、InsightContextを渡して InsightEvaluatorを作成します。 ユーザーはTrust Insightsの使用を 完全にコントロールできるため、 アプリが認証されているか 確認する必要があります。 そうでない場合は、 ユーザーに通知することをお勧めします。 準備ができました。 非同期でrequestEvaluationを呼び出します。 注意してください。 結果を返すまで 数秒かかることがあります。 インターネット接続も必要です。 ユーザーエクスペリエンスのどの部分に このコードを配置するかを 検討することが重要です。 既存のアニメーションを 活用することをお勧めします。 または適切なタイミングでの インタースティシャル画面を。 開発中は、リクエストは サンドボックス環境に届きます。 App Storeで配布されると、 リクエストは本番モデルと サーバーで評価されます。 決定ロジックとUXのバリエーションを テストするには、 インサイトの値とエラーをオーバーライドできます。 Xcodeのプロジェクトの ビルドスキームをカスタマイズすることで。
利用可能なlaunch argumentsの詳細は、 Trust Insightsの開発者ドキュメントを ご確認ください。
レスポンスには、リクエストした InsightEvaluationごとに1つの結果が含まれます。 IsLikelyBeingCoachedInsightの場合、 3つの可能な値があります:
unknown: システムに詐欺リスクの証拠はありません。 ただし、これは低リスクと 解釈すべきではありません。 medium: コーチングリスクの 証拠がいくらかあります。 ユースケースによっては、 フリクションの導入を検討してください。 追加の検証や リスクスコアリングの調整も。 high: コーチングリスクの 重大な証拠があります。 続行する前にユーザーに 特定されたリスクを通知すべきです。
評価レベルとインサイトレベルの両方の エラーを独立して処理する必要があります。 詳細は開発者ドキュメントにあります。 これら3つの値の背後には 洗練されたMLモデルがあります。 デバイスから得たデータは ローカルで処理されます。 入力データは評価後 直ちに破棄されます。 単一の出力値のみが ユーザーのデバイスから送信されます。 最終出力はApple Accountシグナルを 組み込むことがあります。 そして追加のコンテキストのための ベロシティチェックも。 2種類のフィードバックが 統合を完成させます: リアルタイム消費フィードバック、 アプリがインサイトにどう応答したかを 報告するものと、 オフラインフィードバック、 後でトランザクションが詐欺であると 判明した場合のためのものです。 リアルタイムフィードバックを送信するには、 評価結果でreportConsumptionを 呼び出します。 この呼び出しはインサイト評価リクエスト ごとに必須です。 省略すると、アプリが レート制限される場合があります。 6つの消費値が利用可能です: usedReducedFriction インサイトが操作を より容易にすることに貢献しました。 usedUnchangedFriction インサイトは評価されましたが、 エクスペリエンスを変更しませんでした。 usedIncreasedFriction インサイトにより追加のチェックや フリクションが生じましたが、 トラストインサイトのみに基づく 完全なブロックはお勧めしません。
notUsedNotNeeded ユーザーがキャンセルしたため、 判断は不要でした。 notUsedError 結果が遅すぎて届いたなど、 技術的な障害により使用できませんでした。 usedEvaluationOnly インサイトは例えば内部評価や ベンチマークに使用されましたが、 ユーザーエクスペリエンスには 影響しませんでした。
オフラインラベルは モデル改善に不可欠です。 トラストインサイト評価が最終的に 詐欺が確認された結果になった場合、 そのシグナルはモデルが 実際のパフォーマンスを理解するのに役立ちます。
これらのレポートは数日、数週間、 または数ヶ月後に届くことがあります。
Apple Business Registerを通じて 提出します。 サーバー間APIを使用して、 インサイト識別子を含む 定義されたスキーマで、 元の評価からの識別子を使用します。
個人識別情報などの余分な情報を 提出に含めないでください。 プライバシー保護技術を適用し、 フィンガープリントに使用される可能性のある 残りの値に対して。
Trust Insightsの恩恵を受けるために オフラインラベルの提出は必須ではありませんが、 エコシステム全体を 強化することができます。 詳細は開発者ドキュメントで ご確認ください。 これで完全な統合をカバーしました: 設定、評価、 結果とフィードバック。 次:プライバシー。 データ最小化は Trust Insightsの機能の中心です。 フレームワークは必要なものだけを処理し、 入力を直ちに破棄し、デバイス由来の データをすべてデバイス上に保持します。 プライバシーはすべてのApple製品と サービスの基盤です。 開発の最初から最後まで考慮され、 各サービスの運用中も継続的に。 Trust Insightsは インタラクションパターンを分析します。 タイミング、コンテキスト、 基本的なセンサーデータを。 Photos、Messages、またはMail内の コンテンツは一切使いません。 これらのデバイス由来のシグナルは Appleまたはサードパーティと共有されません。 ユーザーは完全なコントロールを持ち、 設定内でTrust Insightsを無効にできます。
無効にした後に クールダウン期間が適用される場合があります。 自分でオフにするよう誘導された可能性のある ユーザーを保護するためです。
認証状態を照会する必要があります。 ユーザーがアプリに対して Trust Insightsを有効にしているかを確認するために。 Trust InsightsはApple独自のサービス内で 使用されており、 実践的な推奨事項があります。 例を示します。 あるユーザーが大規模な送金を 設定しています。 家族を治療していると主張する 医師への送金です。 裏側で、アプリは トラストインサイトをリクエストしました。
.mediumの結果はアプリに フローの調整を促します。 この場合、警告を表示し、 トランザクションに遅延を追加します。 ユースケースによっては、結果を サーバーサイドで処理することもできます。 手動レビューのステップを追加したり、 ユーザーを妨げることなくリスクに対応したりすることも。
最適なアプローチはアプリ、ユーザー、 プロダクトによって異なります。 Trust Insightsをいつ呼び出すかは、 どのように呼び出すかと同じくらい重要です。 最も価値を追加する瞬間を 検討してください。 高額な金融取引、 例えば個人間の支払いなど。 アカウント削除や個人データのエクスポートなど、 取り消し不能な操作。 リモートアクセスや新しいデバイスの認証など、 権限の付与。 認証情報や個人文書などの 機密データの共有。 重要な瞬間を特定するだけでなく、 考慮すべき他のベストプラクティスもあります: Trust Insightsを既存のリスク・ 決定ロジックに統合してください。 いかなる決定においても唯一の要素や 決定因子であるべきではありません。 時間をかけて異なるモデルバージョンを サンプリングする機能を活用し、 新しいモデルが意思決定ロジックに 与える影響を理解し、 行動を起こす前に。 すべてのレベルでエラーを処理してください。 評価エラーと インサイトエラーは 異なる意味を持つためです。 unknownや欠損値を 低リスクとして扱わないでください。
フィードバックはエコシステムを豊かにし、 誰もが強制の被害者になることから 守ります。 レート制限を避けるために、 アプリ内でリアルタイムのインサイト フィードバックを直接提出し、 可能であればApple Business Registerを通じて オフラインの詐欺ラベルを提供してください。
アプリ内でTrust Insightsが 連携できる瞬間を特定し、 既存のロジックで ユーザーを保護してください。 そこから、ベストプラクティスに従って フレームワークを採用し、 開発者ドキュメントに従ってください。 Apple Business Registerで ビジネスを登録し、 Partner Data Servicesについて 学んでください。 App Attestにもご興味があるかもしれません。 サーバーリクエストを検証するための フレームワークで、 アプリの正当なインスタンスからの ものであることを確認します。
Feedback Assistantを通じて フィードバックを提出する最良の時期です。 Trust Insightsのあらゆる側面について、 フレームワーク、その機能、または 高頻度のユースケースを含めて。 Trust Insightsはアプリに 行動コンテキストをもたらし、 プライバシーを保護しながら 強制を検出するのを支援します。 最も重要な瞬間に統合し、 結果を慎重に処理し、 フィードバックループを閉じて エコシステムを強化してください。
-
-
3:01 - Generating insights
import TrustInsights let request = IsLikelyBeingCoachedInsight.request(schema: .version1, modelVersion: .current) let context = InsightEvaluator.InsightContext(operationCategory: .resourceUse, requestedEvaluations: request) let evaluator = InsightEvaluator() guard try await evaluator.requestAuthorization(for: context) == .authorized else { return } let assessment = try await evaluator.requestEvaluation(context: context) do { try handleAssessment(assessment) } catch { // Handle error } assessment.reportConsumption(.usedIncreasedFriction) -
5:37 - Handling results for IsLikelyBeingCoachedInsight
func handleAssessment(_ assessment: InsightEvaluation<IsLikelyBeingCoachedInsight>) throws { switch try assessment.insight.outcome.get() { case .unknown: case .medium: case .high: @unknown default: } } -
7:05 - Real-time consumption feedback
import TrustInsights let request = IsLikelyBeingCoachedInsight.request(schema: .version1, modelVersion: .current) let context = InsightEvaluator.InsightContext(operationCategory: .resourceUse, requestedEvaluations: request) let evaluator = InsightEvaluator() guard try await evaluator.requestAuthorization(for: context) == .authorized else { return } let assessment = try await evaluator.requestEvaluation(context: context) do { try handleAssessment(assessment) } catch { // Handle error } assessment.reportConsumption(.usedIncreasedFriction)
-
-
- 0:00 - Introduction
Meet Trust Insights, a new iOS 27 framework that helps your app detect coercion and social engineering.
- 2:35 - Generating insights
Integrating Trust Insights with its client-side Swift API — declaring the entitlement, building a parameter pack of requested insights, and using the InsightEvaluator with an operation category that determines which model logic applies.
- 6:50 - Feedback requirements
The two required types of feedback that keep insights accurate — mandatory real-time consumption feedback reporting how your app responded, and offline feedback for transactions that later prove fraudulent.
- 9:25 - Privacy
Understand how Trust Insights minimizes data, keeps signals on device, and gives users full control.
- 10:34 - Best practices
Learn where Trust Insights adds the most value and how to combine it with your existing risk logic.
- 12:48 - Next steps
Adopting Trust Insights — identify moments where it can work alongside your existing logic, follow the documentation and best practices, and register on Apple Business Register to learn about Partner Data Services.