Sophos Linux SensorパッケージリポジトリAPIトークンを生成する方法
前提条件
SLS は、次のいずれかの認定製品ライセンスをお持ちの新規および既存のお客様が利用できます。
- Intercept X Advanced for Server with XDR
- Central Managed Detection and Response Essential Server
- Central Managed Detection and Response Complete Server
制限事項
SLS は評価ライセンスでは使用できません。
概要
Sophos Linux Sensor (SLS) パッケージリポジトリ API トークンを生成するには、次の手順を実行する必要があります。
- サービスプリンシパルの作成します
- サービスプリンシパルの認証情報を使用して、SLS パッケージリポジトリ API トークンを要求します
Sophos Central でサービスプリンシパルを作成する
SLS には、Sophos Central Admin ダッシュボードでスーパー管理者が作成した API 認証情報が必要です。これは、パートナーダッシュボードやエンタープライズダッシュボードではなく、Sophos Central Admin ダッシュボードで設定する必要があります。
SLS パッケージリポジトリトークンを生成する前に、サービスプリンシパルを作成する必要があります。サービスプリンシパルは、API の認証と呼び出しに使用できる認証情報のセットです。この操作には、スーパー管理者ロールが必要となります。サービスプリンシパルを作成するには'次の手順を実行します。
- Sophos Central にサインインします。
- 「グローバル設定 > *管理 > API 認証情報の管理*」に移動します。
- 「認証情報の追加」をクリックします。
- 「認証情報名」を入力します。
- ロールに「サービスプリンシパル スーパー管理者」を選択します。
- 「追加」をクリックします。
-
「クライアント ID」および「クライアントシークレット」をコピーします。この情報は、次のセクションで必要です。
警告
セキュリティ上の理由から、クライアントシークレットは再表示されません。クライアント ID とシークレットを安全に保管するのは、お客様の責任です。クライアントシークレットを失った場合は、新しいサービスプリンシパルを作成する必要があります。
SLS パッケージリポジトリ API トークンの生成
サービスプリンシパル API 認証情報を取得したら、それらを使用して SLS パッケージリポジトリアクセストークンを要求できます。SLS パッケージリポジトリ API トークンを生成するには、次の手順を実行します。
注
次のコマンドは、Linux コマンドプロンプトで動作します。Windows で実行するには、Windows Subsystem for Linux (WSL) が必要です。詳細は、WSL を使用して Windows に Linux をインストールするを参照してください。
-
コマンドラインプロンプトから、次のコマンドを実行します。
{client-id}
は前の手順の client_id に置き換え、{client-secret}
は前の手順の client_secret に置き換えます。curl -sS -XPOST -H "Content-Type:application/x-www-form-urlencoded" -d "grant_type=client_credentials&client_id={client-id}&client_secret={client-secret}&scope=token" https://id.sophos.com/api/v2/oauth2/token
成功した API 応答は、次の例のようになります。
{ "access_token": "{jwt}", "errorCode": "success", "expires_in": 3600, "message": "OK", "refresh_token": "{token}", "token_type": "bearer", "trackingId": "{uuid}" }
ヒント
API 応答の
{jwt}
の値を構成する非常に長い文字列をメモしておきます。これは以下のすべての API 呼び出しに必要です。 -
アクセストークンを取得したら、テナント ID を見つける必要があります。次のコマンドを実行し、
{jwt}
を前の手順の access_token に置き換えます。curl -XGET -H "Authorization: Bearer {jwt}" https://api.central.sophos.com/whoami/v1
成功した API 応答は、次の例のようになります。
{ "id": "{tenant-id}", "idType": "tenant", "apiHosts": { "global": "https://api.central.sophos.com", "dataRegion": "https://api-us03.central.sophos.com" } }
ヒント
API 応答の
{tenant-id}
の値を構成する文字列をメモしておきます。以下の API 呼び出しとインストール後に必要となります。テナント ID は Sophos Central でも確認できます。「アカウント名 > サポート設定」の順に選択して、Sophos Central アカウントの固有の ID をメモします。これはテナント ID です。
-
次のコマンドを実行して、SLS リポジトリトークンを取得します。
{jwt}
をaccess_token
で置き換え、{tenant-id}
を前の手順のid
に置き換えます。curl -sS -XPOST -H "Authorization: Bearer {jwt}" -H "Content-Type: application/json" -H "X-Tenant-ID: {tenant-id}" --data '{"label":"SLS Token","type":"sophosLinuxSensor","expiresAt":"2099-06-15T13:21:54.858Z"}' https://api.central.sophos.com/accounts/v1/access-tokens
注
label
の値を使用すると、トークンの名前を変更できます。expiresAt
の値はオプションで、トークンの有効期限を選択できます。サーバーライセンスの有効期限を超える値expiresAt
を入力すると、サーバーライセンスの有効期限に合わせて調整されます。詳細は、 Access Token Management API Guide を参照してください。成功した API 応答は、次の例のようになります。
{ "id": "{transaction-id}", "token": "{LINUX_REPO_API_KEY}", "type": "sophosLinuxSensor", "label": "SLS Token", "createdAt": "2022-07-06T18:30:24.340Z", "expiresAt": "2022-12-02T00:00:00.000Z", "url": "https://packages.sophos.com", "createdBy": { "id": "{user-id}", "type": "service", "accountType": "tenant", "accountId": "{tenant-id}" } }
-
上記の応答の {LINUX_REPO_API_KEY} の文字列をメモしておきます。"SLS-"で始まります。これは、Sophos Linux Sensor パッケージのリポジトリアクセストークンです。インストールにはこれが必要です。
これで、Sophos Linux Sensor パッケージリポジトリから SLS をインストールおよび更新する準備が整いました。
詳細情報