tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:SafariブラウザでSalesforceの設定ページアクセスを試してみました

SafariのブラウザでSalesforceの設定ページにアクセスすると次のようにエラーメッセージが表示されます。

『ブラウザでクロスドメイン Cookie がブロックされているため、このページを表示できませんが、このページを Salesforce Classic で表示することはできます。』


不具合とかではなく、Safariブラウザのセキュリティ設定まわりの関係で表示できないようになっています。(オブジェクトマネージャとか開けるページもあります。)


普段Salesforceを使うときにはGoogle Chromeを使うので、エラー自体はそういうものだねと気にしていなかったのですが、そういえばSalesforceがサポートするブラウザに一応Safariも含まれていたけど、このあたりどういう扱いなんだろと検索してみました。


特に触れられていないかなと思ったのですが、『Apple Safari に関する考慮事項』というページがちゃんと用意されていました。



「Apple Safari での Analytics をサポートしていません。」とか「Tab キー」の話とかこういう考慮点あったんだという話もありましたが、今回のCookieブロックの件も記載がありました。基本的にはClassicでは使えますという表現。


仕様なので使えませんが結論かなと思ったのですが、一応ブラウザ設定を変更することでページ表示可能になるとのこと。『デフォルト設定からこのように変更したことでデータが共有されることになった場合でも Salesforce は責任を負わないものとします。』と警告メッセージ付き。


ということで試してみました。Safariブラウザを開いた状態で設定メニューを選択。


プライバシーのタブでオン、オフができる。


おまけですが、すべてのCookieをブロックはWebブラウザが動作しなくなる可能性あるとAppleもメッセージ出すようにしている仕組みでした。(ブロックしたい人向けに提供している機能)


せっかくAppleが用意してくれているのでオンにしておきたいところもありますが、検証目的でチェック・オフ。これで設定ページが表示できるか試してみました。


試してみた結果としては無事表示されるようになりました。


個人PCでデフォルトブラウザをSafariに設定しているときに、sfdx コマンド経由でSalesforceを開くとSafariで開くので、そういうときにちょっと設定ページで更新したいといったときにちょっと不便だったのが解消できました。


※おまけ - sfdx コマンドで組織を開くときのコマンド
(最新のsf コマンドにも open コマンドはあるのかな)

% sfdx force:org:open -u <組織のエイリアス名>


一応エラーをなくせる方法という形でのヘルプ記載でしたので、そのあたり考慮して必要に応じて設定変更するのが良さそうです。