(レガシー) iOS/tvOS SDK API リファレンス iostvos-sdk-api-reference

NOTE
このページのコンテンツは、情報提供のみを目的として提供されています。 このAPIを使用するには、Adobeの現在のライセンスが必要です。 無断使用は認められません。
IMPORTANT
製品のお知らせ ページに集計されている最新のAdobe Pass認証製品のお知らせと廃止予定について、常に情報を得てください。

概要 intro

ここでは、Adobe Pass Authentication用のiOS/tvOS ネイティブクライアントで公開されるメソッドとコールバック関数について説明します。 ここで説明するメソッドとコールバック関数は、AccessEnabler.hおよびEntitlementDelegate.h ヘッダーファイルで定義されています。これらの関数は、iOS AccessEnabler SDKの[SDK directory]/AccessEnabler/headers/api/にあります。

関連ドキュメント:

NOTE
Adobeでは、Adobe Pass Authentication public APIのみを使用することをお勧めします。
  • パブリック APIは利用可能で、サポートされているすべてのクライアントタイプで完全にテストされています。 公開されている機能については、各クライアントタイプに対応するバージョンの関連メソッドが含まれていることを確認します。
  • 下位互換性をサポートし、パートナー統合が壊れないようにするために、パブリック APIは可能な限り安定している必要があります。 ただし、非公開APIについては、将来の時点で署名を変更する権利を留保します。 現在のパブリック Adobe Pass Authentication API呼び出しの組み合わせでサポートできない特定のフローが発生した場合、最善のアプローチは私たちに知らせることです。 お客様のニーズを考慮して、公開APIを変更し、安定したソリューションを提供することができます。

API リファレンス apis

init:softwareStatement initWithSoftwareStatement

ファイル: AccessEnabler/headers/AccessEnabler.h

説明: AccessEnabler オブジェクトをインスタンス化します。 アプリケーションインスタンスごとに1つのAccessEnabler インスタンスが必要です。

API呼び出し:iOS AccessEnabler コンストラクター
- (id) init:
(NSString *)softwareStatement;

可用性: v3.0以降

パラメーター:

  • softwareStatement: Adobe システム内のアプリケーションを識別する文字列。 ソフトウェアステートメントの取得方法を確認してください。

トップへ戻る…

init - [非推奨] init

ファイル: AccessEnabler/headers/AccessEnabler.h

説明: AccessEnabler オブジェクトをインスタンス化します。 アプリケーションインスタンスごとに1つのAccessEnabler インスタンスが必要です。

API呼び出し:iOS AccessEnabler コンストラクター
- (id) init;

可用性: v1.0+ まで: v3.0

パラメーター:​なし

トップへ戻る…

setOptions:options setOptions

ファイル: AccessEnabler/headers/AccessEnabler.h

説明: グローバル SDK オプションを設定します。 引数としてNSDictionaryを受け付けます。 ディクショナリの値は、SDKが行うすべてのネットワーク呼び出しと共にサーバーに渡されます。

注意:​値は、現在のフロー(認証/承認)に関係なく、サーバーに渡されます。 値を変更する場合は、任意の時点でこのメソッドを呼び出すことができます。

API呼び出し:setOptions
- (void) setOptions:(NSDictionary *)options;

可用性: v2.3.0以降

パラメーター:

  • options:グローバル SDK オプションを含むNSDictionary。 現在、次のオプションを使用できます。

    • applicationProfile – この値に基づいてサーバー設定を行うために使用できます。

    • visitorID - Experience Cloud ID サービス。 この値は、後で高度な分析レポートに使用できます。

    • handleSVC - プログラマがSFSafariViewControllersを処理するかどうかを示すブール値。 詳しくは、iOS SDK 3.2+🔗のSFSafariViewController サポートを参照してください。

      • falseに設定すると、SDKは自動的にSFSafariViewControllerをエンドユーザーに表示します。 SDKは、MVPDのログインページ URLにさらに移動します。
      • trueに設定すると、​のSDKは​ NOT ​によってSFSafariViewControllerがエンドユーザーに自動的に表示されます。 SDKは​ navigate (toUrl:{url}, useSVC:YES) ​をさらにトリガーします。
  • device_info - ​ クライアント情報を渡すの説明に従ったクライアント情報。

トップへ戻る…

setRequestor:requestorID, setRequestor:requestorID:serviceProviders: setReqV3

ファイル: AccessEnabler/headers/AccessEnabler.h

説明: プログラマーのIDを確立します。 各プログラマーには、Adobe Pass認証システムにAdobeに登録する際に一意のIDが割り当てられます。 SSOおよびリモートトークンを扱う場合、アプリケーションがバックグラウンドにあるときに認証状態が変更される可能性があります。システム状態と同期するためにアプリケーションがフォアグラウンドに入ったときにsetRequestorを再度呼び出すことができます(SSOが有効になっている場合はリモートトークンを取得し、その間にログアウトが発生した場合はローカルトークンを削除します)。

サーバー応答には、MVPDのリストと、プログラマーのIDに添付されているいくつかの設定情報が含まれています。 サーバー応答は、AccessEnabler コードによって内部で使用されます。 操作のステータス (つまり、SUCCESS/FAIL)のみが、setRequestorComplete: コールバックを介してアプリケーションに表示されます。

urls パラメーターが使用されていない場合、結果のネットワーク呼び出しは、デフォルトのサービスプロバイダーURL (Adobe RELEASE/production environment)をターゲットにします。

urls パラメーターに値が指定されている場合、結果のネットワーク呼び出しは、urls パラメーターで指定されたすべてのURLをターゲットにします。 すべての設定リクエストは、別々のスレッドで同時にトリガーされます。 MVPDのリストをコンパイルする場合は、最初のレスポンダーが優先されます。 リスト内の各MVPDについて、AccessEnablerは関連するサービスプロバイダーのURLを記憶します。 その後のすべての使用権限リクエストは、設定フェーズでターゲット MVPDとペア設定されたサービスプロバイダーに関連付けられたURLに送信されます。

API呼び出し:依頼者設定
- (void) setRequestor:(NSString *)requestorID

可用性: v3.0以降

API呼び出し:依頼者設定
- (void) setRequestor:(NSString *)requestorID serviceProviders:(NSArray *)urls;

可用性: v3.0以降

パラメーター:

  • requestorID: プログラマーに関連付けられている一意のID。 Adobeで割り当てられた一意のIDを、最初にAdobe Pass Authentication Serviceに登録するときにサイトに渡します。
  • urls: オプションのパラメーター。デフォルトでは、Adobe サービスプロバイダーが使用されます(http://sp.auth.adobe.com/)。 この配列を使用すると、Adobeが提供する認証サービスと認証サービスのエンドポイントを指定できます(デバッグ目的で様々なインスタンスを使用する場合があります)。 これを使用して、複数のAdobe Pass認証サービスプロバイダーインスタンスを指定できます。 この場合、MVPD リストは、すべてのサービスプロバイダーのエンドポイントで構成されます。 各MVPDは、最速のサービスプロバイダー、つまり最初に応答し、そのMVPDをサポートするプロバイダーに関連付けられます。
NOTE
serviceProviders パラメーターなしで呼び出された場合、ライブラリはデフォルトのサービスプロバイダー(実稼動プロファイルの場合はhttps://sp.auth.adobe.com、ステージングプロファイルの場合はhttps://sp.auth-staging.adobe.com)から設定を取得します。 serviceProviders パラメーターが指定されている場合は、URLの配列である必要があります。 設定情報は、指定されたすべてのエンドポイントから取得され、結合されます。 異なるサービスプロバイダーの応答に重複する情報が存在する場合、競合は最速の応答サーバー(つまり、応答時間が最も短いサーバーが優先されます)に優先して解決されます。

コールバックがトリガーされました: setRequestorComplete:

トップへ戻る…

setRequestor:setSignedRequestorId:, setRequestor:setSignedRequestorId:serviceProviders: - [非推奨] setReq

ファイル: AccessEnabler/headers/AccessEnabler.h

説明: プログラマーのIDを確立します。 各プログラマーには、Adobe Pass認証システムにAdobeに登録する際に一意のIDが割り当てられます。 SSOおよびリモートトークンを扱う場合、アプリケーションがバックグラウンドにあるときに認証状態が変更される可能性があります。システム状態と同期するためにアプリケーションがフォアグラウンドに投入されたときにsetRequestorを再度呼び出すことができます(SSOが有効になっている場合はリモートトークンを取得し、その間にログアウトが発生した場合はローカルトークンを削除します)。

サーバー応答には、MVPDのリストと、プログラマーのIDに添付されているいくつかの設定情報が含まれています。 サーバー応答は、AccessEnabler コードによって内部で使用されます。 操作のステータス (つまり、SUCCESS/FAIL)のみが、setRequestorComplete: コールバックを介してアプリケーションに表示されます。

urls パラメーターが使用されていない場合、結果のネットワーク呼び出しは、デフォルトのサービスプロバイダーURL (Adobe RELEASE/production environment)をターゲットにします。

urls パラメーターに値が指定されている場合、結果のネットワーク呼び出しは、urls パラメーターで指定されたすべてのURLをターゲットにします。 すべての設定リクエストは、別々のスレッドで同時にトリガーされます。 MVPDのリストをコンパイルする場合は、最初のレスポンダーが優先されます。 リスト内の各MVPDについて、AccessEnablerは関連するサービスプロバイダーのURLを記憶します。 その後のすべての使用権限リクエストは、設定フェーズでターゲット MVPDとペア設定されたサービスプロバイダーに関連付けられたURLに送信されます。

API呼び出し:依頼者設定
- (void) setRequestor:(NSString *)requestorID
signedRequestorID:(NSString *)signedRequestorID;

可用性: v1.0+ まで: v3.0

API呼び出し:依頼者設定
- (void) setRequestor:(NSString *)requestorID
signedRequestorID:(NSString *)signedRequestorID
serviceProviders:(NSArray *)urls;

可用性: v1.0+ まで: v3.0

パラメーター:

  • requestorID: プログラマーに関連付けられている一意のID。 Adobeで割り当てられた一意のIDを、Adobe Pass Authentication Serviceに初めて登録したときにサイトに渡します。
  • signedRequestorID: このパラメーターは、iOS AccessEnabler バージョン 1.2以降に存在します。 秘密鍵でデジタル署名された依頼者IDのコピー。 .
  • urls: オプションのパラメーター。デフォルトでは、Adobe サービスプロバイダーが使用されます(http://sp.auth.adobe.com/)。 この配列を使用すると、Adobeが提供する認証サービスと認証サービスのエンドポイントを指定できます(デバッグ目的で様々なインスタンスを使用する場合があります)。 これを使用して、複数のAdobe Pass認証サービスプロバイダーインスタンスを指定できます。 この場合、MVPD リストは、すべてのサービスプロバイダーのエンドポイントで構成されます。 各MVPDは、最速のサービスプロバイダー、つまり最初に応答し、そのMVPDをサポートするプロバイダーに関連付けられます。

メモ: serviceProviders パラメーターなしで呼び出された場合、ライブラリはデフォルトのサービスプロバイダー(実稼動プロファイルのhttps://sp.auth.adobe.com、ステージングプロファイルのhttps://sp.auth-staging.adobe.com)から設定を取得します。 serviceProviders パラメーターが指定されている場合は、URLの配列である必要があります。 設定情報は、指定されたすべてのエンドポイントから取得され、結合されます。 異なるサービスプロバイダーの応答に重複する情報が存在する場合、競合は最速の応答サーバーに優先して解決されます(つまり、応答時間が最も短いサーバーが優先されます)。

コールバックがトリガーされました: setRequestorComplete:

トップへ戻る…

setRequestor:setSignedRequestorId:secret:publicKey, setRequestor:setSignedRequestorId:serviceProviders:secret:publicKey - [非推奨] setReq_tvos

ファイル: AccessEnabler/headers/AccessEnabler.h

説明: プログラマーのIDを確立します。 各プログラマーには、Adobe Pass認証システムにAdobeに登録する際に一意のIDが割り当てられます。 この設定は、アプリケーションのライフサイクル中に1回だけ実行する必要があります。

サーバー応答には、MVPDのリストと、プログラマーのIDに添付されているいくつかの設定情報が含まれています。 サーバー応答は、AccessEnabler コードによって内部で使用されます。 操作のステータス (つまり、SUCCESS/FAIL)のみが、setRequestorComplete: コールバックを介してアプリケーションに表示されます。

urls パラメーターが使用されていない場合、結果のネットワーク呼び出しは、デフォルトのサービスプロバイダーURL (Adobe RELEASE/production environment)をターゲットにします。

urls パラメーターに値が指定されている場合、結果のネットワーク呼び出しは、urls パラメーターで指定されたすべてのURLをターゲットにします。 すべての設定リクエストは、別々のスレッドで同時にトリガーされます。 MVPDのリストをコンパイルする場合は、最初のレスポンダーが優先されます。 リスト内の各MVPDについて、AccessEnablerは関連するサービスプロバイダーのURLを記憶します。 その後のすべての使用権限リクエストは、設定フェーズでターゲット MVPDとペア設定されたサービスプロバイダーに関連付けられたURLに送信されます。

API呼び出し:依頼者設定
code language-none
- (void) setRequestor:(NSString *)requestorID
    signedRequestorID:(NSString *)signedRequestorID
               secret:(NSString *)secret
            publicKey:(NSString *)publicKey;

可用性: v2.0+ まで: v3.0

API呼び出し:依頼者設定
code language-none
- (void) setRequestor:(NSString *)requestorID
    signedRequestorID:(NSString *)signedRequestorID
     serviceProviders:(NSArray *)urls

secret:(NSString *)secret

publicKey:(NSString *)publicKey;

可用性: v2.0+ まで: v3.0

パラメーター:

  • requestorID: プログラマーに関連付けられている一意のID。 Adobeで割り当てられた一意のIDを、Adobe Pass Authentication Serviceに初めて登録したときにサイトに渡します。
  • signedRequestorID: このパラメーターは、iOS AccessEnabler バージョン 1.2以降に存在します。 秘密鍵でデジタル署名された依頼者IDのコピー。 .
  • urls: オプションのパラメーター。デフォルトでは、Adobe サービスプロバイダーが使用されます(http://sp.auth.adobe.com/)。 この配列を使用すると、Adobeが提供する認証サービスと認証サービスのエンドポイントを指定できます(デバッグ目的で様々なインスタンスを使用する場合があります)。 これを使用して、複数のAdobe Pass認証サービスプロバイダーインスタンスを指定できます。 この場合、MVPD リストは、すべてのサービスプロバイダーのエンドポイントで構成されます。 各MVPDは、最速のサービスプロバイダー、つまり最初に応答し、そのMVPDをサポートするプロバイダーに関連付けられます。
  • secret and publicKey: 2回目のscreen呼び出しに署名するために使用される秘密鍵と公開鍵。 詳しくは、​ クライアントレスのドキュメント ​を参照してください。

serviceProviders パラメーターなしで呼び出された場合、ライブラリはデフォルトのサービスプロバイダー(実稼動プロファイルの場合はhttps://sp.auth.adobe.com、ステージングプロファイルの場合はhttps://sp.auth-staging.adobe.com)から設定を取得します。 serviceProviders パラメーターが指定されている場合は、URLの配列である必要があります。 設定情報は、指定されたすべてのエンドポイントから取得され、結合されます。 異なるサービスプロバイダーの応答に重複する情報が存在する場合、競合は最速の応答サーバーに優先して解決されます(つまり、応答時間が最も短いサーバーが優先されます)。

コールバックがトリガーされました: setRequestorComplete:

トップへ戻る…

setRequestorComplete: setReqComplete

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明​設定フェーズが完了したことをアプリケーションに通知するAccessEnablerによってトリガーされるコールバック。 これは、アプリが使用権限リクエストの発行を開始できることを示すシグナルです。 設定フェーズが完了するまで、アプリケーションは使用権限の要求を発行できません。

コールバック:依頼者設定が完了しました
code language-none
- (void) setRequestorComplete:(int)status;

可用性: v1.0以降

パラメーター:

  • status:次のいずれかの値を取ることができます:

    • ACCESS_ENABLER_STATUS_SUCCESS – 構成フェーズが正常に完了しました
    • ACCESS_ENABLER_STATUS_ERROR – 構成フェーズが失敗しました

トリガー:

setRequestor:setSignedRequestorId:, setRequestor:setSignedRequestorId:serviceProviders:

トップへ戻る…

checkAuthentication checkAuthN

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​現在のユーザーの認証ステータスを確認します。これは、ローカルの有効な認証トークンを検索することで実現します
トークンのストレージ容量: このメソッドはネットワーク呼び出しを実行せず、メインスレッドで呼び出すことをお勧めします。アプリケーションは、ユーザーの認証ステータスをクエリするために使用され、
それに応じてUIを更新します(ログイン/ログアウト UIの更新など)。 を
認証ステータスは、を介してアプリケーションに通知されます
setAuthenticationStatus:errorCode: コールバック。

API呼び出し:認証ステータスの確認
code language-none
- (void) checkAuthentication;

可用性: v1.0以降

パラメーター:​なし

**コールバックがトリガーされました:

トップへ戻る…

getAuthentication, getAuthentication:withData: getAuthN

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​完全な認証ワークフローを開始します。 まず、認証ステータスを確認します。 まだ認証されていない場合は、認証フローのstate-machineが開始されます。

  • 最後の認証が成功した場合、MVPDの選択フェーズはスキップされ、navigateToUrl: コールバックがトリガーされます。 このコールバックを使用して、MVPDのログインページを表示するWebView コントロールをインスタンス化します。 [メモ:Access Enabler 1.5の時点では、SDK]の制限により、この機能は使用できません。
  • 最後の認証が失敗した場合、またはユーザーが明示的にログアウトした場合、displayProviderDialog: コールバックがトリガーされます。 アプリケーションでは、このコールバックを使用してMVPDの選択UIを表示します。 また、AccessEnabler ライブラリにsetSelectedProvider: メソッドを介してユーザーのMVPDの選択を通知することで、認証フローを再開する必要があります。

ユーザーの資格情報はMVPD ログインページで確認されるため、ユーザーがMVPD ログインページで認証する間に行われる複数のリダイレクト操作をモニターする必要があります。 正しい資格情報を入力すると、WebView コントロールはADOBEPASS_REDIRECT_URL定数で定義されたカスタム URLにリダイレクトされます。 このURLは、WebViewで読み込まれることを意図したものではありません。 アプリケーションはこのURLをインターセプトし、ログインフェーズが完了したことを示すシグナルとしてこのイベントを解釈する必要があります。 次に、認証フローを完了するためにAccessEnablerに制御を渡す必要があります(handleExternalURL メソッドを呼び出すことによって)。

最後に、認証ステータスがsetAuthenticationStatus:errorCode: コールバックを介してアプリケーションに通知されます。

API呼び出し:認証フローを開始します
code language-none
- (void) getAuthentication;

可用性: v1.0以降

API呼び出し:認証フローを開始します
code language-none
- (void) getAuthentication:(BOOL)forceAuthn:
                  withData:(NSDictionary* )data;

可用性: v1.9以降

パラメーター:

  • forceAuthn: ユーザーが既に認証されているかどうかに関係なく、認証フローを開始するかどうかを指定するフラグ。
  • data:有料テレビのパスサービスに送信するキーと値のペアで構成されるディクショナリ。 Adobeでは、このデータを利用して、SDKに変更を加えることなく、将来の機能を有効にすることができます。

コールバックがトリガーされました: setAuthenticationStatus:errorCode:displayProviderDialog:sendTrackingData:forEventType:

トップへ戻る…

getAuthentication:filter, getAuthentication:withData:andFilter getAuthN_filter

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​完全な認証ワークフローを開始します。 まず、認証ステータスを確認します。 まだ認証されていない場合は、認証フローのstate-machineが開始されます。

  • 現在の依頼者にSSOをサポートするMVPDが1つ以上ある場合、presentTvProviderDialog () ​が呼び出されます。 MVPDでSSOがサポートされていない場合、クラシック認証フローが開始され、フィルターパラメーターは無視されます。
  • ユーザーが完了すると、Apple SSO フローdismissTvProviderDialog()がトリガーされ、認証プロセスが終了します。

最後に、認証ステータスがsetAuthenticationStatus:errorCode: コールバックを介してアプリケーションに通知されます。

可用性: v2.4以降

API呼び出し:認証フローを開始します
code language-none
- (void) getAuthentication:(NSDictionary *)filter;
API呼び出し:認証フローを開始します
code language-none
- (void) getAuthentication:(BOOL)forceAuthn:
                  withData:(NSDictionary* )data
                 andFilter:(NSDictionary *)filter;

パラメーター:

  • forceAuthn: ユーザーが既に認証されているかどうかに関係なく、認証フローを開始するかどうかを指定するフラグ。

  • data:有料テレビのパスサービスに送信するキーと値のペアで構成されるディクショナリ。 Adobeでは、このデータを利用して、SDKに変更を加えることなく、将来の機能を有効にすることができます。

  • filter: Apple SSO ダイアログに表示されるMVPD IDの2つのリストを含むディクショナリ。 SSOをサポートしていないMVPDは無視されますが、注文は尊重されます。 辞書には2つのキーが必要です。

    • TV_PROVIDERS: ピッカーに表示されるすべてのMVPDを含むリスト
    • FEATURED_TV_PROVIDERS: ピッカーでフィーチャーとしてマークされるすべてのMVPDを含むリスト。 このリストのMVPDもTV_PROVIDERS リストで指定する必要があります。

可用性: v2.0 - v2.3.1

API呼び出し:認証フローを開始します
code language-none
- (void) getAuthentication:(NSArray *)filter;
API呼び出し:認証フローを開始します
code language-none
- (void) getAuthentication:(BOOL)forceAuthn:
                  withData:(NSDictionary* )data
                 andFilter:(NSArray *)filter;

パラメーター:

  • forceAuthn: ユーザーが既に認証されているかどうかに関係なく、認証フローを開始するかどうかを指定するフラグ。
  • data:有料テレビのパスサービスに送信するキーと値のペアで構成されるディクショナリ。 Adobeでは、このデータを利用して、SDKに変更を加えることなく、将来の機能を有効にすることができます。
  • filter: Apple SSO ダイアログに表示されるMVPD IDのリスト。 SSOをサポートしていないMVPDは無視されますが、注文は尊重されます。

コールバックがトリガーされました: setAuthenticationStatus:errorCode:, presentTvProviderDialog, dismissTvProviderDialog

トップへ戻る…

displayProviderDialog: dispProvDialog

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明 AccessEnablerによってトリガーされたコールバックは、ユーザーが目的のMVPDを選択できるようにするために、適切なUI要素をインスタンス化する必要があることをアプリケーションに通知します。 このコールバックは、MVPD オブジェクトのリストに、MVPDのロゴを指すURLやわかりやすい表示名など、選択UI パネルの正しい構築に役立つ情報を提供します。

ユーザーが目的のMVPDを選択したら、上位のアプリケーションは、setSelectedProvider:を呼び出して、ユーザーの選択に対応するMVPDのIDを渡すことにより、認証フローを再開する必要があります。

認証フローの中止 – これは、ユーザーが「戻る」ボタンを押すことができるポイントです。これは、認証フローの中止に相当します。 このシナリオでは、AccessEnablerに認証状態マシンをリセットする機会を与えるために、setSelectedProvider: メソッドを呼び出し、パラメーターとしてnullを渡すアプリケーションが必要です。

コールバック:MVPDの選択UIの表示
code language-none
- (void) displayProviderDialog:(NSArray *)mvpds;

可用性: v1.0以降

パラメーター:

  • mvpds: アプリケーションがMVPD selection UI要素の構築に使用できる、MVPD関連の情報を保持するMVPD オブジェクトのリスト。

トリガー: getAuthenticationgetAuthentication:withData:getAuthorization:getAuthorization:withData:

トップへ戻る…

setSelectedProvider: setSelProv

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドは、ユーザーのMVPDの選択内容をAccess Enablerに通知するためにアプリケーションによって呼び出されます。 アプリケーションは、この方法を使用して、認証に使用するサービスプロバイダーを選択または変更できます。

選択したMVPDがTempPass MVPDの場合、後でgetAuthentication ()を呼び出すことなく、そのMVPDで自動的に認証されます。

getAuthentication () メソッドに追加のパラメーターが指定されているプロモーション一時パスでは、これは不可能であることに注意してください。

パラメーターとして​ null ​を渡す場合、Access Enablerは、ユーザーが認証フローをキャンセルしたと仮定し(つまり、「戻る」ボタンを押した)、認証状態マシンをリセットし、setAuthenticationStatus:errorCode: コールバックをAccessEnabler.PROVIDER_NOT_SELECTED_ERROR エラーコードで呼び出すことによって応答します。

API呼び出し:現在選択されているプロバイダーを設定します
code language-none
- (void) setSelectedProvider:(NSString *)mvpdId;

可用性: v1.0以降

パラメーター:​なし

コールバックがトリガーされました: setAuthenticationStatus:errorCode:sendTrackingData:forEventType:navigateToUrl:

トップへ戻る…

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明: AccessEnablerによってトリガーされたコールバックは、UIWebView/WKWebView コントローラーのインスタンス化と、コールバックの​url パラメーターで指定されたURLの読み込みをアプリケーションに要求します。 コールバックは、認証エンドポイントのURLまたはログアウトエンドポイントのURLを表す​url パラメーターを渡します。

UIWebView/WKWebView コントローラーが複数のリダイレクトを行う場合、アプリケーションはコントローラーのアクティビティを監視し、ADOBEPASS_REDIRECT_URL 定数(つまりadobepass://ios.app)で定義された特定のカスタム URLを読み込む瞬間を検出する必要があります。 この特定のカスタム URLは実際には無効であり、コントローラが実際に読み込むことを意図していないことに注意してください。 認証またはログアウトフローが完了し、コントローラーを安全に閉じることができることを示すシグナルとしてのみ、アプリケーションによって解釈される必要があります。 コントローラーがこの特定のカスタム URLを読み込むと、アプリケーションはUIWebView/WKWebViewを閉じて、AccessEnablerのhandleExternalURL:url API メソッドを呼び出す必要があります。

注意:​認証フローの場合、これはユーザーが「戻る」ボタンを押す機能を持つポイントです。これは、認証フローの中止と同じです。 このようなシナリオでは、アプリケーションは​ nil ​をパラメーターとして渡すsetSelectedProvider: メソッドを呼び出し、AccessEnablerに認証状態マシンをリセットする機会を提供する必要があります。

コールバック:MVPD ログインページの表示
code language-none
- (void) navigateToUrl:(NSString *)url;

可用性: v1.0以降

パラメーター:

  • url: MVPDのログインページを指すURL

トリガー: setSelectedProvider:

トップへ戻る…

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明: setOptions ([“handleSVC”:true"]) ​呼び出しを介した手動のSafari View Controller (SVC)処理を以前にアプリケーションで有効にした場合に、AccessEnablerではなくnavigateToUrl: コールバックによってトリガーされるコールバック。また、Safari View Controller (SVC)を必要とするMVPDの場合のみ実行できます。 その他のすべてのMVPDでは、navigateToUrl: コールバックが呼び出されます。 Safari View Controller (SVC)の管理方法について詳しくは、iOS SDK 3.2+のSFSafariViewController サポートを参照してください。

navigateToUrl: コールバックと同様に、navigateToUrl:useSVC:はAccessEnablerによってトリガーされ、SFSafariViewController コントローラーのインスタンス化と、コールバックの​url パラメーターで指定されたURLの読み込みをアプリケーションにリクエストします。 コールバックは、認証エンドポイントのURLまたはログアウトエンドポイントのURLを表す​url パラメーターと、アプリケーションがSFSafariViewControllerを使用する必要があることを指定する​useSVC パラメーターを渡します。

SFSafariViewController コントローラーが複数のリダイレクトを行う場合、アプリケーションはコントローラーのアクティビティを監視し、application's custom schemeで定義された特定のカスタム URL (例:**​ **adbe.u-XFXJeTSDuJiIQs0HVRAg://adobe.com)を読み込む瞬間を検出する必要があります。 この特定のカスタム URLは実際には無効であり、コントローラが実際に読み込むことを意図していないことに注意してください。 認証またはログアウトフローが完了し、コントローラーを安全に閉じることができることを示すシグナルとしてのみ、アプリケーションによって解釈される必要があります。 コントローラーがこの特定のカスタム URLを読み込むと、アプリケーションはSFSafariViewControllerを閉じて、AccessEnablerのhandleExternalURL:url API メソッドを呼び出す必要があります。

注意:​認証フローの場合、これはユーザーが「戻る」ボタンを押す機能を持つポイントです。これは、認証フローの中止と同じです。 このようなシナリオでは、アプリケーションは​ nil ​をパラメーターとして渡すsetSelectedProvider: メソッドを呼び出し、AccessEnablerに認証状態マシンをリセットする機会を提供する必要があります。

Callback: SFSafariViewControllerにMVPD ログインページを表示する
code language-none
@optional
​- (void) navigateToUrl:(NSString *)url useSVC:(BOOL)useSVC;

​ 可用性:​v 3.2以降

パラメーター:

  • url: MVPDのログインページを指すURL
  • useSVC: URLをSFSafariViewControllerに読み込むかどうかを指定します。

トリガー:​ setOptions:setSelectedProvider:

トップへ戻る…

handleExternalURL:url handleExternalURL

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドは、認証またはログアウトフローを完了するためにアプリケーションによって呼び出されます。 このメソッドは、UIWebView/WKWebView or SFSafariViewController コントローラーが特定のカスタム URLにリダイレクトされた瞬間をアプリケーションが検出した直後に呼び出す必要があります。 アプリケーションでSFSafariViewController コントローラーを使用する必要がある場合、特定のカスタム URLはapplication's custom scheme (例:adbe.u-XFXJeTSDuJiIQs0HVRAg://adobe.com)によって定義されます。定義されていない場合、この特定のカスタム URLはADOBEPASS_REDIRECT_URL 定数(例:adobepass://ios.app)によって定義されます。

認証フローの場合、AccessEnablerは、バックエンドサーバーから認証トークンを取得し、トークンのストレージにローカルに保存することで、フローを完了します。 AccessEnablerは、認証フローが完了したことをアプリケーションに通知し、成功を示すステータスコード 1でsetAuthenticationStatus() コールバックを呼び出します。 これらの手順の実行中にエラーが発生した場合、setAuthenticationStatus() コールバックは、認証失敗を示すステータスコード 0と、対応するエラーコードでトリガーされます。

API呼び出し:認証またはログアウトフローを完了します
code language-none
 (void) handleExternalURL:(NSString *)url;

可用性: v3.0以降

パラメーター:

  • url: UIWebView/WKWebView or SFSafariViewController コントロールから文字列として傍受したURL。

コールバックがトリガーされました: setAuthenticationStatus:errorCode, sendTrackingData:forEventType:

トップへ戻る…

getAuthenticationToken - [非推奨] getAuthNToken

ファイル: AccessEnabler/headers/AccessEnabler.h

説明: バックエンドサーバーから認証トークンを要求して、認証フローを完了します。 このメソッドは、MVPD ログインページをホストするWebView コントロールがADOBEPASS_REDIRECT_URL定数で定義されたカスタム URLにリダイレクトされるイベントに応じてのみ、アプリケーションで呼び出す必要があります。

API呼び出し:認証トークンを取得します
code language-none
- (void) getAuthenticationToken;

可用性: v1.0+ まで: v3.0

パラメーター:​なし

コールバックがトリガーされました: setAuthenticationStatus:errorCode,sendTrackingData:forEventType:

トップへ戻る…

</br

setAuthenticationStatus:errorCode: setAuthNStatus

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明​認証フローのステータスをアプリケーションに通知するAccessEnablerによってトリガーされるコールバック。 ユーザーの操作の結果として、または他の予期せぬシナリオ(ネットワーク接続の問題など)によって、このフローが失敗する可能性がある場所は数多くあります。 このコールバックは、認証フローの成功/失敗ステータスをアプリケーションに通知し、必要に応じて失敗の理由に関する追加情報も提供します。

コールバック:認証フローのステータスをレポートします
code language-none
- (void) setAuthenticationStatus:(int)status
                       errorCode:(NSString *)code;

可用性: v1.0以降

パラメーター:

  • status:次のいずれかの値を取ることができます:

    • ACCESS_ENABLER_STATUS_SUCCESS – 認証フローが正常に完了しました
    • ACCESS_ENABLER_STATUS_ERROR – 認証フローに失敗しました
  • code:失敗の理由。 status​がACCESS_ENABLER_STATUS_SUCCESSの場合、code​は空の文字列です(つまり、USER_AUTHENTICATED定数で定義されています)。 失敗した場合、このパラメーターは次のいずれかの値を取ることができます。

    • USER_NOT_AUTHENTICATED_ERROR - ユーザーが認証されていません。 ローカル トークン キャッシュに有効な認証トークンがない場合のcheckAuthentication: メソッドの呼び出しに応答します。
    • PROVIDER_NOT_SELECTED_ERROR – 上層アプリケーションが​ null ​をsetSelectedProvider:に渡して認証フローを中止した後、AccessEnablerは認証状態マシンをリセットしました。 おそらく、ユーザーは認証フローをキャンセルしました(「戻る」ボタンを押しました)。
    • GENERIC_AUTHENTICATION_ERROR - ネットワークが利用できないなどの理由で認証フローが失敗したか、ユーザーが認証フローを明示的にキャンセルしました。

トリガー: checkAuthenticationgetAuthenticationgetAuthentication:withData:checkAuthorization:checkAuthorization:withData:

トップへ戻る…

checkPreauthorizedResources: checkPreauth

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドは、ユーザーが特定の保護されたリソースを表示する権限を既に持っているかどうかを判断するために、アプリケーションで使用されます。 このメソッドの主な目的は、UI の装飾に使用する情報を取得することです(例えば、ロックおよびロック解除アイコンを使用したアクセス状態を示します)。

API呼び出し:現在選択されているプロバイダーを設定します
code language-none
- (void) checkPreauthorizedResources:(NSArray *)resources;

可用性: v1.3以降

パラメーター:

  • リソース:​認証を確認する必要があるリソースの配列。 リスト内の各要素は、リソース IDを表す文字列である必要があります。 リソース IDは、呼び出し中のリソース IDと同じ制限の対象となります。つまり、プログラマーとMVPDまたはMedia RSS フラグメントの間で設定された合意された値である必要があります。

コールバックがトリガーされました: preauthorizedResources:

トップへ戻る…

checkPreauthorizedResources:cache: checkPreauthCache

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドは、ユーザーが特定の保護されたリソースを表示する権限を既に持っているかどうかを判断するために、アプリケーションで使用されます。 この方法の主な目的は、UIの装飾に使用する情報を取得することです(例えば、ロックアイコンとロック解除アイコンを使用してアクセスステータスを示す)。 cache パラメーターは、内部キャッシュをリソースの解決に使用するかどうかを制御します。

API呼び出し:現在選択されているプロバイダーを設定します
code language-none
- (void) checkPreauthorizedResources:(NSArray *)resources cache:(BOOL)cache;

可用性: v3.1以降

パラメーター:

  • リソース:​認証を確認する必要があるリソースの配列。 リスト内の各要素は、リソース IDを表す文字列である必要があります。 リソース IDは、getAuthorization:呼び出しのリソース IDと同じ制限の対象となります。つまり、プログラマーとMVPDまたはMedia RSS フラグメントの間で設定された合意値である必要があります。
  • cache: リソースの解決に内部キャッシュを使用するかどうかを指定するブール値。 falseの場合、キャッシュはバイパスされ、このAPIが呼び出されるたびにサーバー呼び出しが行われます。

コールバックがトリガーされました: preauthorizedResources:

トップへ戻る…

preauthorizedResources: preauthResources

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明: コールバックがcheckPreauthorizedResources:によってトリガーされました。 ユーザーが既に表示を許可されているリソースのリストを提供します。

API呼び出し:現在選択されているプロバイダーを設定します
code language-none
- (void) checkPreauthorizedResources:(NSArray *)resources;

可用性: v1.3以降

パラメーター:

  • resources: ユーザーが既に表示を許可されているリソースの配列。

トリガー: checkPreauthorizedResources:

トップへ戻る…

checkAuthorization:, checkAuthorization:withData: checkAuthZ

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドは、アプリケーションが認証ステータスを確認するために使用します。 まず、認証ステータスを確認します。 認証されていない場合、tokenRequestFailed:errorCode:errorDescription: コールバックがトリガーされ、メソッドが終了します。 ユーザーが認証された場合は、認証フローもトリガーします。 getAuthorization: メソッドの詳細を参照してください。

API呼び出し:認証ステータスの確認
code language-none
- (void) checkAuthorization:(NSString *)resource;

可用性: v1.0以降

API呼び出し:認証ステータスの確認
code language-none
- (void) checkAuthorization:(NSString *)resource:
                   withData:(NSDictionary *)data;

可用性: v1.9以降

パラメーター:

  • リソース: ユーザーが認証を要求するリソースのID。
  • data:有料テレビのパスサービスに送信するキーと値のペアで構成されるディクショナリ。 Adobeでは、このデータを利用して、SDKに変更を加えることなく、将来の機能を有効にすることができます。

コールバックがトリガーされました:

tokenRequestFailed:errorCode:errorDescription:,setToken:forResource:, sendTrackingData:forEventType:, setAuthenticationStatus:errorCode:

トップへ戻る…

getAuthorization:, getAuthorization:withData: getAuthZ

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドは、アプリケーションが認証フローを開始するために使用します。 ユーザーがまだ認証されていない場合は、認証フローも開始します。 ユーザーが認証された場合、AccessEnablerは認証トークンのリクエスト(有効な認証トークンがローカルトークンキャッシュに存在しない場合)と短期間有効なメディアトークンのリクエストを発行します。 ショートメディアトークンが取得されると、認証フローは完了したものとみなされます。 setToken:forResource: コールバックがトリガーされ、ショートメディアトークンがパラメーターとしてアプリケーションに配信されます。 何らかの理由で認証が失敗した場合は、tokenRequestFailed:forEventType: コールバックがトリガーされ、エラーコードまたは詳細が提供されます。

API呼び出し:認証フローを開始します
code language-none
- (void) getAuthorization:(NSString *)resource;

可用性: v1.0以降

API呼び出し:認証フローを開始します
code language-none
- (void) getAuthorization:(NSString *)resource:
                 withData:(NSDictionary *)data;

可用性: v1.9以降

パラメーター:

  • リソース: ユーザーが認証を要求するリソースのID。
  • data:有料テレビのパスサービスに送信するキーと値のペアで構成されるディクショナリ。 Adobeでは、このデータを利用して、SDKに変更を加えることなく、将来の機能を有効にすることができます。

コールバックがトリガーされました: tokenRequestFailed:errorCode:errorDescription:, setToken:forResource:,sendTrackingData:forEventType:

追加のコールバックがトリガーされました:
このメソッドは、次のコールバックをトリガーすることもできます(フローも開始されている場合): setAuthenticationStatus:errorCode:displayProviderDialog:

NOTE
可能な限り、getAuthorization: / getAuthorization:withData:の代わりにcheckAuthorization: / checkAuthorization:withData:を使用してください。 getAuthorization: / getAuthorization:withData: メソッドは、(ユーザーが認証されていない場合)完全な認証フローを開始します。これにより、プログラマー側で複雑な実装が行われる可能性があります。

トップへ戻る…

setToken:forResource: setToken

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明​認証フローが正常に完了したことをアプリケーションに通知するAccessEnablerによってトリガーされるコールバック。 短期間有効なメディアトークンもパラメーターとして配信されます。

コールバック:認証フローが正常に完了しました
code language-none
- (void) setToken:(NSString *)token
      forResource:(NSString *)resource;

可用性: v1.0以降

パラメーター:

  • トークン:短期間有効なメディアトークン
  • リソース:認証を取得したリソース

トリガー: checkAuthorization:checkAuthorization:withData:getAuthorization:getAuthorization:withData:

トップへ戻る…

tokenRequestFailed:errorCode:errorDescription: tokenReqFailed

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明 AccessEnablerによってトリガーされたコールバックは、認証フローが失敗したことを上位アプリケーションに通知します。

コールバック:認証フローに失敗しました
code language-none
- (void) tokenRequestFailed:(NSString *)resource
                  errorCode:(NSString *)code
           errorDescription:(NSString *)description;

可用性: v1.0以降

パラメーター:

  • リソース:認証を取得したリソース。
  • code:失敗シナリオに関連付けられたエラーコード。 使用可能な値:
    • USER_NOT_AUTHORIZED_ERROR - ユーザーは認証できませんでした
      与えられたリソースに対して
  • description:失敗シナリオに関する追加の詳細。 この記述文字列が何らかの理由で使用できない場合、Adobe Pass Authenticationは空の文字列​ (“”) ​を送信します。
    この文字列は、MVPDでカスタムエラーメッセージまたはセールス関連メッセージを渡すために使用できます。 例えば、サブスクライバーがリソースの認証を拒否された場合、MVPDは次のようなメッセージを送信できます。「現在、パッケージ内のこのチャネルにアクセスできません。 パッケージをアップグレードする場合は、こちら​をクリックしてください。」 メッセージは、このコールバックを通じてAdobe Pass認証によってプログラマーに渡されます。プログラマーは、メッセージを表示または無視するオプションを持っています。 Adobe Pass認証では、このパラメーターを使用して、エラーの原因となった可能性のある条件を通知することもできます。 例えば、「プロバイダーの認証サービスと通信する際にネットワークエラーが発生しました」などです。

トリガー: checkAuthorization:checkAuthorization:withData:getAuthorization:getAuthorization:withData:

トップへ戻る…

ログアウト logout

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドは、ログアウトフローを開始するためにアプリケーションによって呼び出されます。 ログアウトは、ユーザーがMVPD認証サーバーとAdobe Pass認証サーバーの両方からログアウトする必要があるため、一連のHTTP リダイレクト操作の結果です。 このフローは、AccessEnabler ライブラリが発行した単純なHTTP リクエストでは完了できないため、HTTP リダイレクト操作に従うには、UIWebView/WKWebView or SFSafariViewController コントローラーをインスタンス化する必要があります。

ログアウト フローは、ユーザーがUIWebView/WKWebView or SFSafariViewController コントローラーと何らかの操作を行う必要がないという点で、認証フローとは異なります。 したがって、Adobeでは、ログアウトプロセス中にコントロールを非表示(非表示)にすることをお勧めします。

認証フローと類似したパターンを採用する。 IOS AccessEnablerは、navigateToUrl: コールバックまたはnavigateToUrl:useSVC:をトリガーしてUIWebView/WKWebView or SFSafariViewController コントローラーを作成し、コールバックのurl パラメーターで指定されたURLを読み込みます。 これは、バックエンドサーバー上のログアウトエンドポイントのURLです。 tvOS AccessEnablerの場合、navigateToUrl: コールバックもnavigateToUrl:useSVC: コールバックも呼び出されません。

複数のリダイレクトを行う場合、アプリケーションはUIWebView/WKWebView or SFSafariViewController コントローラーのアクティビティを監視し、特定のカスタム URLを読み込む瞬間を検出する必要があります。 この特定のカスタム URLは実際には無効であり、コントローラが実際に読み込むことを意図していないことに注意してください。 ログアウトフローが完了し、コントローラーを安全に閉じることができることを示すシグナルとしてのみ、アプリケーションによって解釈される必要があります。 コントローラーがこの特定のカスタム URLを読み込むと、アプリケーションはコントローラーを閉じ、AccessEnablerのhandleExternalURL:url API メソッドを呼び出す必要があります。 アプリケーションでSFSafariViewController コントローラーを使用する必要がある場合、特定のカスタム URLはapplication's custom scheme (例:adbe.u-XFXJeTSDuJiIQs0HVRAg://adobe.com)によって定義されます。定義されていない場合、この特定のカスタム URLはADOBEPASS_REDIRECT_URL 定数(例:adobepass://ios.app)によって定義されます。

最後に、AccessEnablerはステータスコードが0のsetAuthenticationStatus() コールバックを呼び出し、ログアウトフローの成功を示します。

メモ: ユーザーがApple SSOを使用してログインしている場合、VSA203 ステータスがトリガーされます。 その場合は、システム設定からもログアウトするようにユーザーに指示する必要があります。 これを怠ると、アプリケーションが再起動したときに再認証が行われます。

API呼び出し:ログアウトフローを開始します
code language-none
- (void) logout;

可用性: v1.0以降

パラメーター:​なし

コールバックがトリガーされました: navigateToUrl:setAuthenticationStatus:errorCode:

トップへ戻る…

getSelectedProvider getSelProv

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドを使用して、現在選択されているプロバイダーを決定します。

API呼び出し:現在選択されているMVPDを決定します
code language-none
- (void) getSelectedProvider;

可用性: v1.0以降

パラメーター:​なし

コールバックがトリガーされました: selectedProvider:

トップへ戻る…

selectedProvider selProv

ファイル: AccessEnabler/headers/EntitlementDelegate.h

現在選択されているMVPDに関する情報をアプリケーションに配信するAccessEnablerによってトリガーされる​説明 コールバック。

コールバック:現在選択されているMVPDに関する情報
code language-none
- (void) selectedProvider:(MVPD *)mvpd;

可用性: v1.0以降

パラメーター:

  • mvpd:現在選択されているMVPDに関する情報を含むオブジェクト

トリガー: getSelectedProvider

トップへ戻る…

getMetadata: getMeta

ファイル: AccessEnabler/headers/AccessEnabler.h

説明:​このメソッドを使用して、AccessEnabler ライブラリによってメタデータとして公開された情報を取得します。 アプリケーションは、辞書ベースの​ key ​入力パラメーターを指定することで、このデータにアクセスできます。

プログラマーが利用できるメタデータには、次の2種類があります。

  • 静的メタデータ(認証トークン TTL、認証トークン TTLおよびデバイス ID)
  • ユーザーメタデータ(ユーザーID、郵便番号などのユーザー固有の情報。認証および認証フロー中に、MVPDからユーザーのデバイスに渡すことができます)
API呼び出し:メタデータのAccessEnablerをクエリします
code language-none
- (void) getMetadata:(NSDictionary *)keyDictionary;

可用性: v1.0以降

パラメーター:

  • keyDictionary:次のディクショナリ データ構造
    フォーマット:

    • キーがMETADATA_OPCODE_KEY、値がMETADATA_AUTHENTICATIONの場合、認証トークンの有効期限を取得するためにクエリが実行されます。

    • キーがMETADATA_OPCODE_KEY、値がMETADATA_AUTHORIZATION および​の場合
      キーはMETADATA_RESOURCE_ID_KEYで、値は特定のリソース IDです。その後、クエリを実行して、指定されたリソースに関連付けられている認証トークンの有効期限を取得します。

    • キーがMETADATA_OPCODE_KEY、値がMETADATA_DEVICE_IDの場合、クエリは現在のデバイス IDを取得するために行われます。 この機能はデフォルトで無効になっており、プログラマーは有効化と料金についてAdobeに問い合わせる必要があります。

    • キーがMETADATA_OPCODE_KEY、値がMETADATA_USER_META キーがMETADATA_USER_META_KEY、値がメタデータの名前である場合、ユーザーメタデータに対してクエリが実行されます。 使用可能なユーザーメタデータタイプのリスト:

      • zip - Zip コードのリスト
      • householdID – 世帯ID。 MVPDがサブアカウントをサポートしていない場合、これはuserIDと同じになります。
      • maxRating - ユーザーの親の最大評価のコレクション
      • userID - ユーザーID。 MVPDがサブアカウントをサポートしており、ユーザーがメインアカウントでない場合、userIDhouseholdID.とは異なります
      • channelID - ユーザーが表示権限を持つチャネルのリスト。
    note
    NOTE
    プログラマが実際に使用できるユーザーメタデータは、MVPDで使用可能なメタデータによって異なります。 このリストは、新しいメタデータが利用可能になり、Adobe Pass Authentication Systemに追加されると拡張されます。

コールバックがトリガーされました: setMetadataStatus:encrypted:forKey:andArguments:

詳細情報: ​ ユーザーメタデータ ​

トップへ戻る…

presentTVProviderDialog presentTvDialog

ファイル: AccessEnabler/headers/EntitlementDelegate.h

現在の依頼者がSSO サポートを持つ少なくとも1つのMVPDをサポートしている場合、説明​現在の依頼者がgetAuthentication () ​を呼び出した後、AccessEnablerによってトリガーされるコールバック。

コールバック:SSO フローの結果
code language-none
- (void) presentTvProviderDialog: (UIViewController *) viewController;

可用性: v2.0以降

パラメーター:

  • viewController: Apple SSO ダイアログを表します。 このviewControllerは画面に表示する必要があります。

トリガー: getAuthentication

詳細情報: iOS/tvOS シングルサインオン ​

トップへ戻る…

dismissTVProviderDialog dismissTvDialog

ファイル: AccessEnabler/headers/EntitlementDelegate.h

ユーザーがApple SSO ダイアログを閉じた後にAccessEnablerによってトリガーされる​説明 コールバック。

コールバック:SSO フローの結果
code language-none
- (void) dismissTvProviderDialog: (UIViewController *) viewController;

可用性: v2.0以降

パラメーター:

  • viewController: Apple SSO ダイアログを表します。 このviewControllerを画面から削除する必要があります。

トリガー: ユーザーアクション

詳細情報: iOS/tvOS シングルサインオン ​

トップへ戻る…

setMetadataStatus:encrypted:forKey:andArguments: setMetaStatus

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明 コールバックは、getMetadata:呼び出しを介して要求されたメタデータを配信するAccessEnablerによってトリガーされます。

コールバック:メタデータ取得リクエストの結果
code language-none
- (void) setMetadataStatus:(id)metadata
                 encrypted:(bool)encrypted
                    forKey:(int)key
              andArguments:(NSDictionary *)arguments;

可用性: v1.0以降

パラメーター:

  • metadata:要求されたメタデータ。 静的メタデータ (認証TTL、認証TTL、デバイス ID)の場合、この値はNSStringです。 ユーザー固有のメタデータをリクエストする場合は、複雑なオブジェクトです。 この複雑なオブジェクトは通常、JSON ペイロードのObjective-C表現です(例:'{“street”: “Main Avenue”, “buildings”: [“150”, “320”]}'はObjective-CでNSDictionary (“street” -> “Main Avenue”, “buildings” -> NSArray (“150”, “320”))と訳されます)。 メタデータ JSON オブジェクトの例:
        {
            updated: 1334243471,
            encrypted: ["encryptedProp"],
            data: {
                zip: ["12345", "34567"],
                maxRating: {
                    "MPAA": "PG-13",
                    "VCHIP": "TV-Y",
                    "URL": "http://exam.pl/e/manage/ratings"
                },
                householdID: "3456",
                userID: "BgSdasfsdk23/dsaf3+saASesadgfsShggssd=",
                channelID: ["channel-1", "channel-2"]
            }
  • encrypted:取得したメタデータが暗号化されているかどうかを指定するブール値。 このパラメーターは、ユーザーメタデータ要求に対してのみ有効であり、常に暗号化せずに受信される静的メタデータ(認証TTLなど)に対しては意味がありません。 このパラメーターがtrueに設定されている場合は、ホワイトリストに登録されている秘密鍵(setRequestor:setSignedRequestorId:呼び出しとsetRequestor:setSignedRequestorId:serviceProviders: 呼び出しの依頼者IDの署名に使用されるのと同じ秘密鍵)を使用してRSA復号化を実行し、暗号化されていないユーザーメタデータ値を取得するのはプログラマーの責任です。

  • key: メタデータ取得要求の策定に使用されるキー。

  • arguments: getMetadata:呼び出しに渡された同じディクショナリ。 これは、アプリケーションがリクエストと応答を一致させるために提供されます。

トリガー: getMetadata:

詳細情報: ​ ユーザーメタデータ ​

トップへ戻る…

MVPD mvpd

ファイル: AccessEnabler/headers/model/MVPD.h

説明 MVPD オブジェクトについて説明します。 MVPDのプロパティに関する情報を取得するために使用できます。

可用性: v1.0+ [boardingStatus プロパティはv2.2]から利用できます

プロパティ:

  • (NSString) ID - MVPD Id。

  • (NSString) displayName - MVPD名。 [これは、ピッカーに表示するために使用する必要があります]

  • (NSString) logoURL - MVPDのロゴアドレス。

  • (BOOL) enablePlatformServices - trueの場合、MVPDはApple SSOのようなSSO サービスをサポートします。

  • (NSString) boardingStatus - 3つの値を持つことができます。

    • nil - MVPDはApple SSOをサポートしていません。
    • PICKER - MVPDはApple ピッカーに表示されますが、認証フローはAdobeによって実行されます。
    • サポート - MVPDはAppleで完全にサポートされており、AppleのSSO トークンを使用します。

トップへ戻る…

トラッキングイベント tracking

AccessEnablerは、必ずしも使用権限フローに関連しない追加のコールバックをトリガーします。 sendTrackingData() コールバック関数の実装はオプションですが、特定のイベントを追跡し、認証/承認の試行回数などの統計をコンパイルすることをアプリケーションで有効にします。

sendTrackingData sendTracking

ファイル: AccessEnabler/headers/EntitlementDelegate.h

説明​認証/認証フローの完了/失敗など、様々なイベントの発生をアプリケーションに通知するAccessEnablerによってトリガーされるコールバック。 Adobe Pass Authentication 1.6では、デバイスの種類、AccessEnabler クライアントの種類、およびオペレーティング システムがsendTrackingData()によって報告されます。 sendTrackingData() コールバックは後方互換性を維持します。

コールバック:トラッキングイベント

(void) sendTrackingData:(NSArray *)data
             forEventType:(int)event;

可用性: v1.0以降

注: デバイスの種類とオペレーティング システムは、パブリック Java ライブラリ (http://java.net/projects/user-agent-utils)とユーザーのエージェント文字列を使用して取得されます。 この情報は、操作指標をデバイスカテゴリーに分類する大まかな方法としてのみ提供されますが、Adobeは誤った結果に対して責任を負うことはできません。 それに応じて新しい機能を使用してください。

  • デバイスタイプの可能な値:

    • computer
    • tablet
    • mobile
    • gameconsole
    • unknown
  • AccessEnabler クライアントの種類に指定できる値:

    • flash
    • html5
    • ios
    • android

パラメーター:

  • event:追跡されているイベントのコード。 トラッキングイベントには、次の3つのタイプがあります。

    • authorizationDetection:​認証トークン要求が返されるたびに(イベントはTRACKING_AUTHORIZATION
    • 認証チェックが発生するたびに​authenticationDetection: (イベントはTRACKING_AUTHENTICATION)です
    • mvpdSelection::ユーザーがMVPD セレクション フォームでMVPDを選択した場合(イベントはTRACKING_GET_SELECTED_PROVIDER
  • data:報告されたイベントに関連付けられている追加データ。 このデータは、値のリストの形式で表示されます。

トリガー: checkAuthenticationgetAuthenticationgetAuthentication:withData:checkAuthorization:checkAuthorization:withData:getAuthorization:getAuthorization:withData:setSelectedProvider:

data​配列内の値を解釈する手順:

  • trackingEventType TRACKING_AUTHENTICATION:の場合

    • 0 - トークン要求が成功したかどうか(true/false)、成功した場合:
    • 1 - MVPD ID文字列
    • 2 - GUID (md5 ハッシュ)
    • 3 - トークンは既にキャッシュ内にあります(true/false)
    • 4 - デバイスの種類
    • 5 - AccessEnabler クライアント タイプ
    • 6 - オペレーティング システムの種類
  • trackingEventType TRACKING_AUTHORIZATION:の場合

    • 0 - トークン要求が成功したかどうか(true/false)、成功した場合:
    • 1 - MVPD ID
    • 2 - GUID (md5 ハッシュ)
    • 3 - トークンは既にキャッシュ内にあります(true/false)
    • 4 - エラー
    • 5 – 詳細
    • 6 - デバイスの種類
    • 7 - AccessEnabler クライアント タイプ
    • 8 - オペレーティング システムの種類
  • trackingEventType TRACKING_GET_SELECTED_PROVIDER:の場合

    • 0 – 現在選択されているMVPDのID
    • 1 - デバイスの種類
    • 2 - AccessEnabler クライアント タイプ
    • 3 - オペレーティング システムの種類
recommendation-more-help
pass-help-authentication