Realmsは、OktaのUniversal Directoryでユーザー管理の新しいアプローチを提供する新機能です。Realms(領域)を活用することで、ビジネスがどのような形で成長するかに関係なく、柔軟なユーザー管理を実現して維持できます。既存のリソースや能力を生かした有機的な成長でも、M&Aや部署の新設による成長でも、多様なタイプのユーザーに対応した管理が必要になります。ビジネスが拡大する過程では、こうしたユーザーをシームレスに管理し、管理を委任できることが非常に重要です。

レルムを使用すると、中央IT管理者はユーザー管理を委任および促進し、単一のOkta組織内でアイデンティティを一元化し、グループまたは複数の組織への依存を減らすことで、組織の複雑さを改善できます。以下では、レルムを使用して複数の事業部門を管理する方法の一例と、それを独自のユースケースに適用する方法について説明します。(レルムの基本的な背景については、Dipt Kanthilalの別のブログをお読みください

はじめに:Realmsの有効化

Realmsは現在、Okta Identity Governanceを介した早期アクセスでセルフサービスを通じて利用できます。開始するには、次の手順に従って操作してください。

  1. 管理コンソールの左のナビゲーションで[Settings]を選択します。
  2. [Features]を選択します。
  3. レルムを有効にします。
     

Realmsが有効になったら、以下の手順でユースケース例の構成を開始します。

  1. 領域を作成します。
  2. 領域割り当てを設定します。
  3. 管理権限を領域管理者に委任します。
  4. 特定の領域でAccess Certificationキャンペーンを作成します。
  5. 領域認証ポリシーを設定します。
  6. Workflowsを使用して領域の管理を自動化します。

シナリオ:WindRides Aviation

背景:Realmsを実際に使用してみましょう。Windridesは、民間航空に焦点を当てることから、プライベートジェットのリースや客室乗務員の調達などの追加の事業ラインを追加することに事業を拡大した架空の航空会社です。組織に2つの主要な新規事業を導入したことで、ユーザー、アクセス、および日々のITニーズの管理において、ITチームに大きな負担がかかっています。彼らは、異なる地理的地域にある異なる事業間で、同様の職務に対して共通のアプリケーションニーズを持っています。WindridesはRealmsについて耳にし、この新機能を活用できることを楽しみにしています。

現在の展開:Windridesは現在、グループを使用してアプリケーションアクセスをモデル化および管理しています。グループのユーザー層が重複しているため、管理者は異なる地域のユーザーの管理に苦労しています。地域に基づいてさまざまなエンジニアリンググループを管理するための現在の構造を示す、以下のシナリオを見てください。

 

現在のデプロイ1

 

望ましい最終状態:Realms を使用して、WindRides は、地域を越えたエンジニアリングのために、共有アプリケーションアクセス用の 1 つの機能グループを作成しながら、異なるユーザー集団を分離したいと考えています。

 

管理者委任

このモデルを採用することにより、WindRidesの中央IT管理者は、ユーザーとグループの管理オーバーヘッドを削減し、ユーザー管理を地域管理者に簡単に委任できます。追加のグループは、より特定のアプリケーションアクセスに対して作成できますが、これにより、すべて同じアプリアクセスを定義する地域グループの拡散を防ぐことができます。

領域の作成

Realms機能がorgで有効になると、管理コンソールの左側ナビゲーションで、[Directory]の下に[Realms]という新しいセクションが表示されます。

まず、[Realms]セクションに移動して、領域を作成します。同社のシナリオに基づき、Engineering AMER、Engineering EMEA、Engineering APACという3つの領域を作成します。

 

レルムの作成

 

3つの領域に加え、包括的な役割を果たすDefault Realmが存在します。既存のユーザーは最初にDefault Realmに配置されますが、後から簡単に他の領域に移動できます。APIやWorkflowsを使用して領域を作成することも可能です。

領域割り当て

前述のとおり、ユーザーは必ずいずれかの領域に所属する必要があります。既存のユーザーは最初にDefault Realmに配置されますが、個別に他の領域に移動できます。新しい[Realm assignments]を利用することで、正しい領域へのユーザーのオンボーディングを自動的に実行できます。また、領域割り当てを活用して、複数のユーザーを一括で別の領域に移動することも可能です。

個々のユーザーの移動

個人のユーザープロファイルで、鉛筆アイコンをクリックすると、ユーザーをあるレルムから別のレルムに移動できます。以下に示すAlex Taylorは現在、デフォルトレルムにいますが、エンジニアリングEMEAレルムに属する必要があります。鉛筆アイコンを使用すると、Alexを目的のレルムに移動できます。
 

 

手動編集

 

ユーザーを大規模に移動するには、「レルム割り当て」を活用するのがより良い選択肢です。

領域割り当ての利用方法

[Realms]セクションには、[Realm assignments]というタブがあります。バックアップとして、デフォルトの[Catch-all realm assignment]が用意されていますが、WindRidesの例では3つのカスタム領域に関連付けて具体的にRealmsを割り当てる必要があります。

 

レルムの割り当てを作成

 

Realmの割り当てを作成する場合、ユーザーが正しいRealmに作成またはオンボードされるようにするのに役立つ複数の情報があります。以下のような機能があります。

 

領域割り当て名

簡単に参照できるように、領域割り当てに関連付けられた名前です。

プロファイルソース

組織内のユーザープロファイルの信頼できる情報源であり、Okta、ディレクトリ、人事ソースなどの正式に承認されたプロファイルソースを指します。

優先度

変更なし:[Priority]の値を最下位に設定

最優先に指定:[Priority]の値を最上位に設定

 

これにより、複数の領域割り当て間の競合が解決されます。

スコープ

複数の領域に同じプロファイルソースを関連付ける必要がある場合、ユーザープロファイル属性を使用して領域割り当てに追加のパラメーターを設定できます。

領域への割り当て

割り当て先の領域

 

WindRidesがオンボーディングを自動化してユーザーを容易に移動できるように、スコープの一部としてプロファイルソースとExpression Languageを活用して、3つの領域割り当てを作成します。

Expression Languageを使用して、2つの属性(Organization = Regions、Department = Engineering)を組み合わせ、領域割り当てのスコープを決定できます。

 

レルムのルール

 

グループルールと同様に、作成した領域割り当ては有効にする必要があります。有効にするには、[Actions]メニューに移動し、[Activate]を選択します。

 

レルムの割り当て

 

領域割り当ては、有効にした後に作成された新しいユーザーに対して自動的に実行されます。既存のユーザーに対して領域割り当てを実行するには、[Run]または[Run all realm assignments]を選択します。ジョブのステータスは、[Monitor user movement]タブで確認できます。

領域割り当てを実行すると、org内のすべてのユーザーが正しい領域に所属するようになります。

エンジニアリングAMER

管理者の委任

領域を使うことで得られる主な利点の一つは、ユーザー管理を委任できる点です。次のステップとして、WindRidesチームは管理者ロールを設定します。

ステップ1:ロールを作成する

[Administrators]ビューでの最初のステップは、委任先の管理者のロールを作成することです。最低限、委任される領域管理者には、ユーザーと領域に関連する許可へのアクセス権が必要です。さらに、必要に応じて、グループやアプリケーションに関連する権限を割り当てます。以下は、割り当て可能な許可の例です。

 

許可名

許可セット

ユーザー

ユーザーを管理する

すべてのユーザー許可を含む

Realms

領域とその詳細を表示する

Application (アプリケーション)

アプリケーションのユーザー割り当てを編集する

 

WindRidesは、すべての領域管理者に同じ権限を委任するため、ロールを1つだけ作成する必要があります。

[Security]>[Administrators]>[Roles]で新しいロールを作成します。

ステップ2:リソースセットを作成する

リソースセットには、管理が委任されるリソースを定義します。管理する必要がある3つの領域に合わせて、リソースセットを3つ作成する必要があります。

WindRidesのシナリオでは、Engineering AMER、Engineering EMEA、Engineering APACそれぞれに個別のリソースセットを作成します。これらのリソースセットには、ユーザー、領域、アプリケーションが含まれます。

[Security]>[Administrators]>[Resources]で新しいリソースを作成します。

 

新しいリソースセットを作成

 

ユーザーについては、[Users in realm]を選択し、含める領域を選択します。これによりユーザーセットが定義され、[People]ページに表示されます。

[Realms]リソースセットを追加することで、委任された管理者が表示して管理できる領域が設定されます。リソースセットの一部としてアプリケーションを追加すると、委任された管理者が管理できるアプリケーションが指定されます。[Users in realm]での選択内容に従って、委任された管理者は、管理対象の領域に所属するユーザーに対してのみ、表示やアプリケーションへの割り当て/割り当て解除を実行できることに留意してください。

 

リソースセットの編集

 

WindRidesは3つの領域を使用します。したがって、各管理者が管理できるユーザー集団を定義するために、3つのリソースセットを作成する必要があります。

 

リソースセットの作成

 

ステップ3:管理者を割り当てる

ロールとリソースセットが定義されたので、最後の手順では、委任される管理者にロールとリソースセットの両方を関連付けます。最初にユーザーを選択し、次にロールとリソースセットを選択して、委任プロセスを完了します。

 

管理者による管理者割り当て

 

委任された管理者のユーザーエクスペリエンス

Vidyard video

この動画では、管理者はEngineering EMEA領域のユーザーのみを管理できます。割り当てられた許可に基づいて、ユーザーの作成、ライフサイクルの管理、領域内のユーザーへのアプリケーションの割り当て/割り当て解除を実行できます。

Okta Identity GovernanceのAccess Certificationキャンペーン

領域割り当てを利用することで、WindRidesは適切な領域にユーザーを自動的に作成できます。さらに、カスタム管理者ロールのフレームワークを使って、これらのユーザーの管理を委任できます。ユーザー管理のもう1つの重要な側面はガバナンスであり、ユーザーがどのリソースにアクセスできるかを確認し、そのアクセスを継続すべきかを評価します。Okta Identity Governanceを利用することで、認定キャンペーンを作成して領域管理者に割り当てることができます。この方法により、委任された管理者は、担当する領域内のユーザーに対するレビューを割り当てられ、継続的なガバナンスを維持できます。

WindRidesは、Expression Languageを通じて、キャンペーンに含まれるユーザーとキャンペーンのレビュー担当者の範囲を指定できます。この例では、WindRidesはExpression Languageを使用して、キャンペーンのユーザーの範囲をEngineeringレルムに絞ります。式で参照されているRealmIDは、APIまたはRealms URLから確認できます。以下は、Engineering EMEAのRealmIDの例です。

レルムID

 

Access CertificationキャンペーンでのExpression Languageのリファレンス

 

スコープ

詳細

ユーザー

user.realmId == "realmid"

1つの領域のスコープ。

複数のRealmsは、ORを使用してスコープの一部として定義できます。

例:

user.realmId == "realmId1" Or user.realmId == "realmId2" ...

レビュアー

user.realmId == "Realmid" ? "user@example.com":"backupuser@example.com"

この式を使用すると、スコープ内のユーザーのRealmIDがTrueかどうかが条件でチェックされます。Falseの場合、レビューはフォールバックレビュアーにルーティングされます。

ステップ1:キャンペーンの作成

 

WindRidesは、リソースとユーザーの両方のキャンペーンを実行できますが、Engineering EMEA領域内のGoogleアプリケーションに対するアプリケーションアクセスを評価するためのリソースキャンペーンの作成に関心があります。

アクセス認証キャンペーン

ステップ2:ユーザースコープ

ユーザースコープには、すべてのユーザーまたは特定のユーザーのサブセットを含めることができます。Expression Languageを活用してユーザースコープを定義します。

 

キャンペーンの詳細

 

ステップ3:レビュアーを選択する

レビュアーを定義するために選択できるオプションは多数あります。このキャンペーンでは、WindRidesはレビューを領域管理者に割り当てたいので、[Custom]を選択します。

レビュー担当者を指定する

 

Expression Languageを使用すると、領域管理者をレビュアーとして定義できます。ユーザーが定義された領域に所属していない場合、レビューはフォールバックレビュー担当者にルーティングされます。領域管理者は、レビュー対象となる領域に所属している必要はありません。

レビュー担当者の詳細

 

Access Certificationキャンペーン

Vidyard video

上の動画では、Expression Languageを使用したユーザーとレビュー担当者のスコープの構成など、リソースのAccess Certificationキャンペーンの構成方法を解説しています。

認証ポリシー

Access Certificationキャンペーンと同様に、認証ポリシーでもExpression Languageを使用してポリシールールを定義します。

ルールを追加

 

認証ポリシーの設定

Vidyard video

この動画では、よりきめ細かなポリシーを設定するため、Expression Languageを活用して、特定の認証ポリシーのスコープを特定領域内のユーザーに指定する方法を解説しています。

Okta Realms Workflows接続

自動化はユーザー管理の重要な部分であり、Workflowsはライフサイクル管理の自動化で重要な役割を果たします。Workflowsが提供するRealmsカードは、領域の作成/削除、特定領域へのユーザーのオンボーディングなどのフローの構築に役立ちます。

Workflowsで領域を活用するには、最初に以下の2つの重要な手順を実行する必要があります。

  • 認可
  • Realms Actionsカードの接続

Okta Workflows OAuth認可の付与

許可を付与するには、[Applications]でOkta Workflows OAuthアプリケーションに移動します。[OKTA API scopes]で、領域でWorkflowsを構築するために必要な以下の許可を付与します。

 

付与する認可

okta.realms.manage

okta.realms.read

okta.schemas.read

okta.users.manage

okta.users.read

 

Okta Realmsコネクター

Workflowsコンソールから[Connections]に移動し、[Okta Realms]の新しい接続フィルターを追加します。

このビューで、付与された許可を検証することも可能です。

 

接続ビュー

 

接続を追加するには、Okta Workflows OAuthアプリケーションからクライアントIDとシークレットを取得し、ドメインURLと一緒に接続に追加します。

接続を追加

 

認証が成功すると、Actionsカードの準備が整います。

Workflowsカードの活用

Vidyard video

この動画では、Workflowsカードを設定する手順を順を追って解説しています。

おわりに

Realms機能の導入により、WindRidesは組織を再設計して、グループの数を減らし、複数の部署を1つのorgに統合し、オンボーディングから委任、ガバナンスまでユーザーを簡単に管理できるようになりました。

今後は、ビジネスの拡大に応じてRealmsを活用し、組織内のユーザーを管理する中央ITチームの負担を軽減できます。

その他のリソース

MacAdmins Slackの#oktaチャンネルに参加して、コミュニティから学び、助けを得てください。

アイデンティティ施策を推進