コンテンツまでスキップ

【Okta】ユーザのBulk Delete(一括削除)

はじめに

ご挨拶


本ブログではPostmanを使ったOktaユーザのBulk Deleteについて、準備から実行までの手順をご紹介したいと思います。

 

背景


社内の異動時期やPoCの後始末などで、複数Oktaユーザの削除を一括で簡単に行いたいと思うことはありませんか?

しかし、Oktaの管理操作で一般的に利用されるOkta Admin Consoleでは複数ユーザの削除操作がサポートされていません。*1

*1 Okta Admin Console上でGUI操作によるユーザのBulk Deleteができない件

そこで、Postmanの出番です。

 

おことわり


本ブログの執筆に使用した端末は英語言語にローカライズされたmacOSです。

そのため、本ブログに掲載した画像と読者の方の作業環境で表示される内容が異なる場合がありますので、ご了承ください。

なお、本ブログの内容はこちらのOkta公式ナレッジの情報をもとに記載しています。(現在のところ英語でのみの提供のようです。)

また、本ブログではユーザの削除操作をプログラム的に実行する内容について説明しており、場合によっては危険な結果をもたらすことがあります。

公式的にはOktaで推奨されていない削除方式ともなりますので、実行は十分な準備と確認の上、自己責任でお願いします。

目次

準備

Postmanアカウントの作成


Postmanのアカウントを作成します。

Postmanを使用するためには、Postmanのアカウントが必要です。

こちらのサインアップページからPostmanのアカウントを作成します。(Freeアカウントで大丈夫です。)

Postman Appのダウンロード・インストール


操作端末にPostman appをダウンロード・インストールします。

Postmanでは、Webインターフェイスが用意されており、アカウント作成後すぐに利用を開始できますが、「コレクションの実行」ができないなど

一部機能が制限されているようです。

今回は「コレクションの実行」を利用したいため、ネイティブのアプリケーションであるPostman appを使用します。

こちらのページからPostman appをダウンロードし、操作端末へインストールします。

APIトークンの作成


PostmanからOkta APIを実行するために必要となるAPIトークンを作成します。

こちらのドキュメントに従ってOktaでAPIトークンを作成します。

APIトークンを作成したら値を「クリップボードへコピー」ボタンをクリックし、その値をメモしておきます。

APIトークン作成

削除対象OktaユーザのDeactivate


削除対象OktaユーザをDeactivateします。

Oktaユーザの削除(Delete)を行うためには該当のOktaユーザのステータスが「Deactivated(Deprovisioned)」である必要があります。

DeactivateもDeleteと同様にPostmanから行うことも可能ですが、GUI操作によるBulk処理がサポートされているため今回はOkta Admin Consoleから行います。

こちらのドキュメントに従ってOktaユーザの非アクティブ化(Deactivate)を行います。

削除対象Oktaユーザのリスト作成


Postmanで反復処理を行う際のインプットとして使用する削除対象ユーザの一覧(CSVファイル)を作成します。

Okta Admin Consoleから[レポート]>[Okta使用状況]にある[Oktaパスワードの健全性]CSVをダウンロードします。

ダウンロードしたCSVファイルをGoogle シートなどの表計算ソフトで開きます。

C列(Status)の値が「DEPROVISIONED」であるユーザのみをフィルタした上で、B列をコピーします。

ユーザリスト(CSV)

表計算ソフトで新規ファイルにコピーした値を貼り付け、CSVファイルとして保存します。

Postman Appの設定


環境の作成

PostmanでAPIを実行する際に指定する「環境」を作成します。(本番とかテストとか検証とか)

Postman appの[環境]-[+]ボタンをクリックします。

Postman環境作成

①:任意の環境名を設定します。(本番とかテストとか検証とか)

②:以下のとおり、変数および値を設定します。

変数 初期値
apikey 本ブログAPIトークンの作成でメモした値
url https://<Your Org Domain>

[保存]をクリックして、設定を保存します。

Postman環境作成

コレクション/リクエストの作成


Postmanに実行させたいAPIリクエストのコレクションを作成します。

Postman appの[コレクション]-[+]ボタンをクリックします。

Postmanコレクション作成

任意のコレクション名を設定します。

Postmanコレクション作成

作成したコレクション名の[・・・]-[リクエストを追加]をクリックします。

Postmanコレクション作成

①:リクエストに任意のフレンドリー名を設定します。

②:[ヘッダー]タブを選択します。

③:以下のとおり、キーおよび値を設定します。

キー
Content-Type application/json
Accept application/json
Authorization SSWS

[保存]をクリックして、設定を保存します。

Postmanコレクション作成

 

実行

PostmanでOktaユーザ削除のAPIを実行します。

作成したコレクション名の[・・・]-[コレクションを実行]をクリックします。

Postmanコレクション実行

[Select File]をクリックし、削除対象Oktaユーザのリスト作成で作成したCSVファイルを選択します。

①:本ブログ「Postman Appの設定」-「環境定義」で作成した環境名を指定します。

②:[Iterations]に表示されている数が削除予定のOktaユーザの数と一致していることを確認します。

③:[Run . . .]をクリックします。

Postmanコレクション実行

Deleteメソッドのレスポンスコードが「204」であれば削除成功です。

Okta Admin Consoleなどから、ユーザが削除されていることを確認してください。

Postmanコレクション実行