Okta Identity Engineの制限付きアクセスを使用してデバイスコンテキストを渡す

早期アクセスリリース

制限付きアクセスでは、認証中にやり取りされるSAMLアサーションを通してデバイスコンテキストを特定のSAMLアプリに渡すようにOktaを構成できます。次にアプリはその情報を使用して、アプリの編集やアプリからのファイルのダウンロードなど、アプリ固有の特定の動作に対するアクセスを制限します。

orgがClassic Engineを使用しているときは、こちらのトピックを参照してください。

この機能は、Windows、macOS、iOS、Androidデバイスと連携します。カスタムおよびOIN SAMLアプリ統合は、デバイスコンテキスト属性を消費して、構成に基づいてアクセスを許可またはブロックすることができます。

Okta Classic EngineからOkta Identity Engineに移行したorgは、Expression Languageを手動で構成して結果が正しいことを確認する必要があります。「Okta Expression Languageの概要」を参照してください。

はじめに

詳細については、「管理対象デバイス」でorgに適したトピックを選んで参照してください。

サポートされる属性値

この機能を構成すると、Oktaは、Oktaで構成された属性ステートメントと認証ポリシーに従って、次のいずれかの属性値をSAMLアサーションの外部アプリケーションに渡します。

属性値

定義

true Okta認証ポリシーに定義されているように、ユーザーのデバイスは管理されます。
false Okta認証ポリシーに定義されているように、ユーザーのデバイスは管理されません。
null 次のいずれか、または両方に該当するため、デバイスコンテキストは不明です。
  • 指定されたデバイスタイプでは、デバイス管理証明は有効化されません。
  • 認証ポリシーにデバイス管理証明が構成されていません。

外部アプリに渡される属性値は、セッション中は強制的に適用されます。

Okta Expression Languageを使ってOktaの用語をベンダー固有の用語にマッピングします。

属性ステートメントを追加する

  1. まだ行っていない場合は、Admin Consoleでカスタムアプリ統合を作成するか、OINアプリ統合を追加します。
  2. アプリ統合に属性ステートメントを追加します。詳細については、「SAMLアプリ統合を作成する」を参照してください。ステートメントは、アプリ統合の作成時または既存のアプリ統合の編集時に追加できます。

属性ステートメント

このプロセスは、作成または編集しているアプリ統合に応じて異なります。

カスタムアプリ統合を編集する

  1. 管理者ダッシュボード[Applications(アプリケーション)][Applications(アプリケーション)]に移動します。

  2. 編集するカスタムSAMLアプリをクリックします。

  3. [一般]タブをクリックします。[SAML設定]セクションまでスクロールして[Edit(編集)]をクリックします。

  4. [Next(次へ)]をクリックします。

  5. [属性ステートメント]セクションまでスクロールします。

  6. [Name(名前)]フィールドに属性名を入力します。このフィールドの最大文字数は512です。名前属性は、ユーザーとグループの属性ステートメント全体で一意である必要があります。

  7. [Name format(名前の形式)]としてUnspecifiedを選択します。

  8. [Value(値)]フィールドに「device.profile.managed」を入力します。ユースケースの必要に応じてOkta Expression Languageを使って値を変換します。このフィールドの最大文字数は1024です。

OINアプリ統合を編集する

  1. 管理者ダッシュボード[Applications(アプリケーション)][Applications(アプリケーション)]に移動します。

  2. OIN SAMLアプリ統合をクリックします。

  3. [サインオン]タブをクリックし、[Edit(編集)]をクリックします。

  4. [属性ステートメント]セクションまでスクロールします。

  5. [Name(名前)]フィールドに属性名を入力します。このフィールドの最大文字数は512です。名前属性は、ユーザーとグループの属性ステートメント全体で一意である必要があります。

  6. [Name format(名前の形式)]としてUnspecifiedを選択します。

  7. [Value(値)]フィールドで「device.profile.managed」を選択します。ユースケースの必要に応じてOkta Expression Languageを使って値を変換します。このフィールドの最大文字数は1024です。

属性値を変換する

値は、ユースケースの必要に応じてOkta Expression Languageを使って変換できます。たとえば、信頼できるデバイスコンテキスト用のOkta用語を関連するSalesforce用語にマッピングするには、[Value(値)]フィールドに次のステートメントを入力します。

device.profile.managed == true ? "HIGH ASSURANCE" : "STANDARD"

上のステートメントは用語を次のように変換します。

    Oktaデバイスコンテキスト属性

    Salesforce用語

    true HIGH ASSURANCE(高アシュアランス)
    false STANDARD(標準)
    null STANDARD(標準)

別のステートメント行を追加するには、[Add Another(もう1つ追加)]をクリックします。必要な属性定義が完了するまでこの手順を繰り返します。

[Next(次へ)]をクリックして変更内容を保存し、完了時は[Finish(終了)]をクリックします。

属性ステートメントの詳細

次に、非信頼デバイスのデバイスコンテキストを示す、SAMLアサーションを通じて外部アプリに送信される属性ステートメントを示します。

コピー
<?xml version="1.0"?>
<saml2:AttributeStatement xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">
<saml2:Attribute Name="device.profile.managed" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
<saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">
false
</saml2:AttributeValue>
</saml2:Attribute>
</saml2:AttributeStatement>

関連項目

管理対象デバイス

SAMLアプリ統合を作成する

既存のアプリ統合を追加する

Okta Expression Language