Block Federated Learning of Cohorts (FLoC)

Cookieに代わる技術(ユーザーのブラウジング行動を分析してグループにまとめる)

これは新しい広告テクノロジーになるのか?

FLoC の概要

もちろん賛否両論。

Webプラットフォームインキュベーターコミュニティグループ

電子フロンティア財団(EFF)

 


 このサイトは、Joomla(バージョン:3.10.0)で構築している。

既にJoomlaは、バージョン 3.9.27 以降、Federated Learning of Cohorts(FLoC)をブロックしている。

 デフォルトでHTTPレスポンスヘッダに、Permissions-Policy: interest-cohort=()を発行してFLoCの分析対象から除外設定されているのだ。

しかし、このサーバは、Joomlaとは別のCMSも稼働している。

一括して、FLoCの分析対象から除外するため、Apacheの設定ファイルに記述した。

 

Local blog for Japanese speaking developers
「FLoC の概要」より引用

ウェブサイトは Permissions-Policy ヘッダーに interest-cohort=() を設定すると、FLoC 計算からオプトアウトすることができます。オプトアウトしていないページでは、document.interestCohort() が使われていると、ブラウザの FLoC 計算に含まれることになります。FLoC のオリジントライアル期間中、広告や広告に関連するリソースを読み込むことが検知された場合も、ブラウザの FLoC 計算に含まれることになります(Chrome の広告検知メカニズムの仕組みは、Chromium での広告のタグ付けで説明しています)。

 

バージョン

# uname -a
FreeBSD www 12.2-RELEASE FreeBSD 12.2-RELEASE r366954 GENERIC  amd64

# httpd -v
Server version: Apache/2.4.46 (FreeBSD)

 

Apache設定ファイルに、FLoCの分析対象から外す記述、下記を追記した。

# vi /usr/local/etc/apache24/httpd.conf

<IfModule mod_headers.c>
  Header always set Permissions-Policy: interest-cohort=()
</IfModule>

 

Apache再起動

# httpd -t
Syntax OK

# service apache24 restart
Performing sanity check on apache24 configuration:
Syntax OK
Stopping apache24.
Waiting for PIDS: 840.
Performing sanity check on apache24 configuration:
Syntax OK
Starting apache24.

 

curlコマンドをインストールして、コマンドでヘッダを出力できるようにする。

# pkg install curl
Updating FreeBSD repository catalogue...
Fetching packagesite.txz: 100%    6 MiB 387.6kB/s    00:17
Processing entries: 100%
FreeBSD repository update completed. 30848 packages processed.
All repositories are up to date.
The following 1 package(s) will be affected (of 0 checked):

Installed packages to be UPGRADED:
        curl: 7.74.0 -> 7.77.0

Number of packages to be upgraded: 1

1 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/1] Fetching curl-7.77.0.txz: 100%    1 MiB 345.4kB/s    00:04
Checking integrity... done (0 conflicting)
[1/1] Upgrading curl from 7.74.0 to 7.77.0...
[1/1] Extracting curl-7.77.0: 100%

 

JoomlaCMSの以外のヘッダ出力

# curl -I https://www.server-bff.net/doc/jp
HTTP/1.1 200 OK
Date: Sat, 21 Aug 2021 07:06:51 GMT
Server: Apache
Permissions-Policy: interest-cohort=()
X-Frame-Options: SAMEORIGIN
Expect-CT: enforce, max-age=300, report-uri='https://www.server-bff.net/'
Set-Cookie: server-bff-bb50409=72t1sj8g21dl1389mh0eid6eph; expires=Sat, 21-Aug-2021 07:36:51 GMT; Max-Age=1800; path=/doc/; domain=www.server-bff.net; HttpOnly; SameSite=Lax
Expires: Sat, 28 Aug 2021 07:06:51 GMT
Cache-Control: max-age=604800
Pragma: no-cache
Last-Modified: Sun, 28 Mar 2021 00:37:49 GMT
ETag: "1c219696453db3e35e24c2ff18eaf764"
Vary: Accept-Encoding
Content-Length: 17799
Connection: close
Strict-Transport-Security: max-age=31536000
Content-Type: text/html;charset=UTF-8

 

Joomlaのヘッダ出力

# curl -I https://www.server-bff.net/
HTTP/1.1 200 OK
Date: Sat, 21 Aug 2021 07:08:16 GMT
Server: Apache
Permissions-Policy: interest-cohort=()
X-Frame-Options: SAMEORIGIN
Expect-CT: enforce, max-age=300, report-uri='https://www.server-bff.net/'
Set-Cookie: 3433ec95c5d8db4bd910e53de1a8ad34=9ql0psb55qq5sk1uolev5ppmcb; path=/; secure; HttpOnly
Permissions-Policy: interest-cohort=()
Expires: Wed, 17 Aug 2005 00:00:00 GMT
Last-Modified: Sat, 21 Aug 2021 07:08:16 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Strict-Transport-Security: max-age=31536000
Content-Type: text/html; charset=utf-8

 

JoomlaCMSデフォルトの”Permissions-Policy: interest-cohort=()”とApacheのhttpd.confに追記した”Permissions-Policy: interest-cohort=()”が重複している。

JoomlaCMS以外のCMS公開ディレクトリに、.htaccessで記述するのが正解なのか?

しばらく、このまま運用してみる。


ブラウザ(Google Chromeバージョン: 92.0.4515.159の場合)のプライバシーサンドボックスをブロックしてFLoCを無効にする手順は、こちら「FLoCはオプトアウトです」に記述した。

 

以上