カスタムクレデンシャル
カスタムOAuth アプリを使用して、サービスアカウントまたはユーザーアカウントで認証できます。詳しくは、OAuth 認証の使用 を参照してください。
ユーザーアカウント
カスタムOAuth アプリでのデスクトップ認証
下記の手順に従って、カスタムOAuth アプリの資格情報を使用して認証します。カスタムOAuth アプリの作成 を参照してください。OAuth アクセストークンの取得およびリフレッシュ
次を設定して、接続してください。
- OAuthClientId:アプリの登録時に割り当てられたクライアントID に設定。
- OAuthClientSecret:アプリの登録時に割り当てられたクライアントシークレットに設定。
- InitiateOAuth:GETANDREFRESH に設定。InitiateOAuth を使うと、OAuth 交換の繰り返しや、手動でのOAuthAccessToken 設定を避けられます。
- ChannelId:YouTube チャンネルのId に設定。指定しない場合、認証されたユーザーのチャンネルのデータが返されます。
- ContentOwnerId:コンテンツ所有者のレポートを生成する場合に設定。
- コールバックURL からアクセストークンを取得し、リクエストを認証します。
- アクセストークンの期限が切れたときにはリフレッシュしてください。
- OAuthSettingsLocation にOAuth 値を保存し、接続の間に維持されるようにします。
カスタムOAuth アプリでのWeb 認証
Web アプリケーション経由で接続する場合は、YouTube Analytics にカスタムOAuth アプリケーションを登録する必要があります。それから本製品 を使用してOAuth トークンの値を取得および管理します。
OAuth アクセストークンの取得
次の接続プロパティを設定し、OAuthAccessToken を取得します。
- OAuthClientId:アプリケーション設定のクライアントID に設定。
- OAuthClientSecret:アプリケーション設定のクライアントシークレットに設定。
続いてストアドプロシージャを呼び出し、OAuth 交換を完了します。
- GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。AuthMode インプットをWEB に、CallbackURL インプットをアプリケーション設定で指定したリダイレクトURI に設定します。ストアドプロシージャがOAuth エンドポイントのURL を返します。
- ログインして、アプリケーションを認可します。コールバックURL にリダイレクトされます。
- GetOAuthAccessToken ストアドプロシージャを呼び出します。AuthMode インプットをWEB に設定します。Verifier インプットを、コールバックURL のクエリ文字列の"code" パラメータに設定します。
OAuth アクセストークンのリフレッシュ
InitiateOAuth をREFRESH に設定してOAuth アクセストークンの期限が切れたときに自動的にリフレッシュするか、RefreshOAuthAccessToken ストアドプロシージャを呼び出してトークンを手動でリフレッシュできます。
自動リフレッシュ
InitiateOAuth でトークンをリフレッシュするには、最初のデータ接続で次のように設定します。
- OAuthAccessToken:これをGetOAuthAccessToken によって返されたアクセストークンに設定します。
- InitiateOAuth:REFRESH に設定。InitiateOAuth を使うと、OAuth 交換の繰り返しや、手動でのOAuthAccessToken 設定を避けられます。
- OAuthSettingsLocation:本製品 がOAuth 値を保存する場所のパスを設定し、接続の間に維持されるようにします。
- OAuthClientId:アプリケーション設定のクライアントID に設定。
- OAuthClientSecret:アプリケーション設定のクライアントシークレットに設定。
- OAuthRefreshToken:これをGetOAuthAccessToken によって返されたリフレッシュトークンに設定します。
- ChannelId:YouTube チャンネルのId に設定。指定しない場合、認証されたユーザーのチャンネルのデータが返されます。
- ContentOwnerId:コンテンツ所有者のレポートを生成する場合に設定。
その後のデータ接続では、次を設定します。
- InitiateOAuth
- OAuthSettingsLocation
- ChannelId:YouTube チャンネルのId に設定。指定しない場合、認証されたユーザーのチャンネルのデータが返されます。
- ContentOwnerId:コンテンツ所有者のレポートを生成する場合に設定。
手動でリフレッシュ
RefreshOAuthAccessToken ストアドプロシージャを使用してOAuthAccessToken を手動でリフレッシュできます。GetOAuthAccessToken によって返されたExpiresIn パラメータ値が経過した後にストアドプロシージャを呼び出します。以下の接続プロパティが設定されている必要があります。
- OAuthClientId:アプリケーション設定のクライアントID に設定。
- OAuthClientSecret:アプリケーション設定のクライアントシークレットに設定。
次のパラメータセットを使用してRefreshOAuthAccessToken を呼び出すことができます。
- OAuthRefreshToken:これをGetOAuthAccessToken によって返されたOAuthRefreshToken に設定します。
サービスアカウント
サービスアカウントには、ブラウザによるユーザー認証なしのサイレント認証があります。また、サービスアカウントを使用して、エンタープライズ全体のアクセススコープを本製品 に委任することもできます。
このフローでは、OAuth アプリケーションを作成する必要があります。アプリの作成および認可については、カスタムOAuth アプリの作成 を参照してください。これでサービスアカウントにアクセス権があるYouTube Analytics データに接続できます。
次の接続プロパティを設定して、接続してください。
- InitiateOAuth:GETANDREFRESH に設定。
- OAuthClientId:アプリケーション設定のクライアントID に設定。
- OAuthClientSecret:アプリケーション設定のクライアントシークレットに設定。
- OAuthJWTCertType:PEMKEY_FILE に設定。
- OAuthJWTCert:生成した.pem ファイルのパスに設定。
- OAuthJWTCertPassword:.pem ファイルのパスワードに設定。
- OAuthJWTCertSubject:"*" に設定すると、証明書ストアの1番目の証明書が選択されます。
- OAuthJWTSubject:アクセスの委譲を要求しているアプリケーションのユーザーのE メールアドレスを設定。管理者がアクセス委譲を承認しなければならないので、ご注意ください。
- ChannelId:YouTube チャンネルのId に設定。指定しない場合、認証されたユーザーのチャンネルのデータが返されます。
- ContentOwnerId:コンテンツ所有者のレポートを生成する場合に設定。
- 本製品 に要求されるclaim set でJWT を作成し、サインします。
- JWT はアクセストークンと交換されます。
- OAuthSettingsLocation にOAuth 値を保存し、接続の間に維持されるようにします。
- トークンの期限が切れたときは、JWT を送り、新しいアクセストークンと交換します。