差分

このページの2つのバージョン間の差分を表示します。


前のリビジョン
technic:esi [2022/01/06 12:52] (現在) Osat Bartlett
行 1: 行 1:
 +====== ESIについて ======
 +===== はじめに =====
 +ESIは色々な便利なことに利用できますが、色々なことができる半面、きちんと管理しなければ損害を被る可能性もあります。
  
 +----
 +
 +===== ESIとは =====
 +
 +ESIとはEVE Swagger Interfaceの略で、XML API, CREST APIに続く第三のAPIシステムです。\\
 +2018年5月にXML及びCRESTが廃止され、__現在はこのESIのみが有効なAPIとなっています。__
 +
 +XML APIは2007年から稼働しており、以前の[[:utility|外部ツール]]の大半はXML APIを利用していました。\\
 +__最終更新が2018年以前になっているツールは、もうほとんど利用できないと考えていいでしょう。__
 +
 +===== そもそもAPIとは =====
 +EVEにおけるAPIとは、以前は「公式サイトにログインして発行したコードを外部ツールやサイト等に入力することで、ゲーム内の情報を外部ツール等が読み取れるようにするもの(XML API)」でした。\\
 +これによって呼び出せるデータは
 +  * スキル状況やトレーニング予定
 +  * 戦闘におけるキルデス
 +  * メールの送受信履歴及びその内容
 +  * 保有資産
 +  * アイテム売買及びISKの出納履歴
 +などなど多岐にわたります。\\
 +また、このコードを利用すれば自分以外からでもデータを呼び出せるので、第三者に提示することで自身の潔白を証明する道具にも使えます。
 +
 +ESIでも概ね同じことができます。しかし、「コードを渡す」形ではなく、また機能が大きく拡充されているので注意が必要です。
 +
 +===== ESIの特徴 =====
 +以前の主流であったXML APIとESIの大きな違いは、以下の2点です。
 +  * ESIを利用するサイト・ツールは、EVE公式サイトでのログインを要求する。
 +  * ゲーム内のデータを呼び出すだけでなく、限定的ではあるがゲーム内に干渉できる。
 +
 +ESIはシングルサインオン(SSO)を利用します。\\
 +要は、外部ツールでありながら、EVE公式のログインページに遷移し、EVEのアカウントでのログインを要求するというわけです。\\
 +{{:technic:zkillboard.png|zkillboardの場合。このように、何を有効化させるか事前に選択できるサイトもある。}}
 +
 +ログインした後には、このESIによって何が許可されるかが表示されるのでよく確認しましょう。\\
 +この「ESIで許可する機能」を「ESIスコープ」と呼びます。\\
 +{{:technic:zkillboard-2.png|zkillboardのESI確認画面}}\\
 +例えばこの場合なら、
 +  * 公開データ(キャラクター名やIDなど)の読み込み
 +  * サイト上からキルメールのFitをゲーム内に呼び出せる
 +  * 自分のキルログの自動投稿が有効になる
 +  * コープのキルログの自動投稿が有効になる
 +が有効になります。
 +
 +極端なことを言えば、**ここで許可した機能は、そのサイト・ツールの管理者が無条件に利用できてしまいます**。\\
 +ESIを利用する場合は、
 +  * そのESIで許可する事柄が、そのサイト・ツールの目的に合致しているか。余分な機能に対する許可が含まれていないか。
 +  * そのサイト・ツールの開発者は信頼できるか。
 +をよく確認しましょう。
 +
 +{{:technic:eve_marketer.png|[[https://evemarketer.com/|EVE Marketer]]の場合}}\\
 +例えば、[[https://evemarketer.com/|EVE Marketer]]なら、
 +  * キャラクターの現在位置の読み取り : 売買オーダーまでの距離を計算するため
 +  * ウィンドウを開く : アイテムのマーケット画面を開くため
 +  * 目的地の設定 : 売買オーダーの位置を目的地にするため
 +  * キャラクターのオーダーの読み取り : マーケットデータとそのキャラクターのオーダーを照合するため
 +のためのスコープであると判断できます。このサイトはESI登録しなくても利用できますが、ESIを利用したほうが便利に使える場合もあるでしょう。
 +
 +{{:technic:dotlan.png|[[https://evemaps.dotlan.net/user/login|Dotlan]]の場合}}\\
 +なお、Dotlanのように、ESIを利用するもののゲーム内データは一切利用しないサイトもあります。((Dotlanは、Dotlan固有のアカウントを作ることで、よく使う位置を記憶したり、ジャンプブリッジデータを保存できたりする。\\ ここでは、EVEのアカウントを使ってDotlan用のアカウントを作っているだけなので、スコープは要求されない))
 +
 +{{:technic:japan_wiki_scope.png|当Wikiログイン時のスコープ要求}}\\
 +当WikiではBot排除のためにEVE SSOを利用しています。\\
 +スコープでパブリックデータを要求していますが、これはログインに際してWiki内部でアカウントが生成され、それに対して所属アライアンス/所属コープの情報を紐づけるためです。\\
 +(将来的にコープ限定アクセスなどの機能を付加できますが、現在は利用されていません。)
 +
 +----
 +
 +ESIでできることの一覧は[[https://esi.evetech.net/|公式サイトで公開されています]]。\\
 +{{:technic:fleet.png?500|フリートに関するESIスコープの一覧}}\\
 +機能が色分けされていますが、これは以下のようなことを意味します。
 +  * 青:ゲーム内データの読み込み
 +  * 緑:ゲーム内に何かを追加する
 +  * 黃:ゲーム内の何かを変更する
 +  * 赤:ゲーム内の何かを削除する
 +つまり、__青以外の機能はすべてゲーム内に干渉する機能です__。これはフリート関連以外にも多く存在します。\\
 +先に述べた通り、**ESIを利用する場合は余計な許可が含まれていないか細心の注意を払いましょう**。
 +
 +青以外のスコープには以下のようなものがあります。
 +  * 保存済みFitの削除
 +  * メールの削除
 +  * コンタクトの削除
 +  * フリートのウィングやスクアッドの削除、メンバーのキック
 +  * 目的地の設定
 +  * マーケットのウィンドウを開く
 +  * その他いろいろ
 +
 +----
 +
 +{{:technic:manage_esi.png?500|許可済みESIの一覧}}\\
 +自分が何に対してESIスコープの利用を許可しているかは[[https://community.eveonline.com/support/third-party-applications/|公式サイトで確認・管理できます]]。\\
 +不要になったESI、身に覚えのないESIなどは適宜削除しましょう。