[初心者向け] OktaのAPIを使ってユーザやグループを操作してみる
こんにちは、株式会社イエソドのtsukakeiです
これは、Okta Advent Calendar 2021 3日目の記事です!
OktaのAPIトークンを発行して、実際にAPIを通してユーザやグループを操作してみる一連の流れを紹介したいと思います!
簡単にできるので、ぜひトライしてみてください
準備
Oktaのトライアル環境を払い出す(必要な人だけ)
(Okta Advent Calendar 2021 1日目の記事に書かれていると思うので割愛します)
APIトークンを発行する
- 管理コンソールにログイン
- サイドメニューの Security → API をクリック
- Tokensタブをクリックして🔑 Create Tokenをクリック
- Tokenの名前(変更不可なので注意!)を入れてCreate Tokenをクリック
- 作成後に出てきたToken Valueを大事に保存しておいてください!
実行
上で取得したTokenとcurlコマンドを使って、OktaのAPI(Core Okta API)を叩きます
難しそうに聞こえますが、とても簡単です!
ユーザを作成してみる
まずAPIを通して、ユーザを作成してみましょう
下のコマンドのプレースホルダーを埋めて実行してみてください
-
${api_token}
→ 上で保存したトークン -
${yourOktaDomain}
→ お使いのhoge.okta.com
curl -v -X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: SSWS ${api_token}" \
-d '{
"profile": {
"firstName": "Taro",
"lastName": "YESOD",
"email": "taro.yesod@example.com",
"login": "taro.yesod@example.com"
}
}' "https://${yourOktaDomain}/api/v1/users?activate=false"
実行すると、たしかにユーザが作成されています!
今回は、説明のために最も簡単なクレデンシャル情報なしのユーザを作成しました
Referenceには様々なクレデンシャルを持つユーザの作成方法もあるので、興味のある方は是非ご覧になってください
グループを作成してみる
次にグループを作成してみましょう
同様に、下のコマンドのプレースホルダーを埋めて実行してみてください
-
${api_token}
→ 上で保存したトークン -
${yourOktaDomain}
→ お使いのhoge.okta.com
curl -v -X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: SSWS ${api_token}" \
-d '{
"profile": {
"name": "YESOD Teams",
"description": "All Users of YESOD"
}
}' "https://${yourOktaDomain}/api/v1/groups"
実行すると、たしかにグループが作成されています!
こうして、ユーザもグループも非常に簡単に作成することができました!
せっかくなので、新たに作成したグループに新たに作成したユーザを追加してみましょう
ユーザをグループに追加してみる
ユーザIDを確認する
ユーザIDはユーザ表示画面のURLで確認することができます
https://${yourOktaDomain}/admin/user/profile/view/${userId}
となっているので、${userId}
を保存しておいてください
グループIDを確認する
グループIDはグループ表示画面のURLで確認することができます
https://${yourOktaDomain}/admin/group/${groupId}
となっているので、${groupId}
を保存しておいてください
ユーザをグループに追加してみる
それではユーザをグループに追加してみましょう
下のコマンドのプレースホルダーを埋めて実行してみてください
-
${api_token}
→ 上で保存したトークン -
${yourOktaDomain}
→ お使いのhoge.okta.com
-
${groupId}
→ 保存したグループID -
${userId}
→ 保存したユーザID
curl -v -X PUT \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: SSWS ${api_token}" \
"https://${yourOktaDomain}/api/v1/groups/${groupId}/users/${userId}"
実行すると、たしかにグループにユーザが追加されています!
こうして簡単にユーザ作成・グループ作成・グループへのユーザ追加をすることができました!
最後に
APIトークンを発行して、ユーザ作成・グループ作成・グループへのユーザ追加をする一連の流れを紹介しました!
APIを使うと、手作業では大変な量のデータでも素早く、そして手堅く実行することができます
手作業で辛い思いをしている方の一助となれば幸いです!
Discussion