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

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

この機能は次のデバイスで使用できます。

  • Windows、macOS、iOS、Androidデバイス
  • デバイスコンテキスト属性を消費できるカスタムおよびOIN SAMLアプリ統合

前提条件

Okta Admin Consoleで:

  • Okta Admin ConsoleでDevice Trustを有効にする(セキュリティ(Security) > Device Trust
  • アプリ統合向けのDevice Trustサインオンポリシーを構成する(アプリのサインオン(Sign On)タブ)

詳細は、実装に合ったOkta Device Trustソリューションを参照してください。

外部アプリの場合

SAMLアサーションで受け取ったデバイスコンテキストを消費するように外部アプリケーションを構成し、そのコンテキストに基づいてコントロールする動作を指定します。

サポートされている属性値

この機能を構成すると、Oktaは、Oktaで構成された属性ステートメントおよびアプリ統合のサインオンポリシーに従って、以下の属性値の1つをSAMLアサーションの外部アプリケーションに渡します。

属性値

定義

信頼済み(TRUSTED) ユーザーのデバイスは信頼されています(Oktaアプリ統合サインオンポリシーの定義による)。
非信頼(NOT_TRUSTED) ユーザーのデバイスは信頼されていません(Oktaアプリ統合サインオンポリシーの定義による)。
不明(UNKNOWN) 次のいずれか、または両方に該当するため、デバイスコンテキストが不明です。
  • そのデバイスタイプに対してDevice Trustが有効になっていない(セキュリティ(Security) > Device Trust
  • アプリ統合サインオンポリシーでDevice Trustが構成されていない(アプリのサインオン(Sign On)(Sign On Policy)タブのサインオンポリシー(Sign On Policy)セクション)

手順

  1. 前提条件を完了します。
  2. まだ行っていない場合は、Okta Admin Consoleからカスタムアプリ統合を作成するか、OINアプリ統合を追加します。
  3. アプリ統合に属性ステートメント(Attribute Statement)を追加します(詳細については、「属性ステートメントを定義する」を参照)。

    新しいアプリ統合を作成する際にステートメントを追加したり、既存のアプリ統合を編集したりできます。

    新しいアプリ統合の場合:

    手順2:SAMLを構成する(Step 2: Configure SAML)Attribute Statements (Optional)(属性ステートメント(任意))セクションまでスクロールします。

    既存のアプリ統合の場合:

    カスタムアプリ統合とOINアプリ統合のどちらを編集するかによって手順が異なります。

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

    1. Admin Consoleで、アプリケーション(Applications) > アプリケーション(Applications)に移動します。

    2. カスタムSAMLアプリをクリックします。
    3. 一般(General)タブに移動し、SAMLの設定(SAML Settings)セクションまでスクロールして、編集(Edit)をクリックします。
    4. 次へ(Next)をクリックします。
    5. Attribute Statements (Optional)(属性ステートメント(任意))セクションまでスクロールします。

    OINアプリ統合を編集する場合:

    1. Admin Consoleで、アプリケーション(Applications) > アプリケーション(Applications)に移動します。

    2. OIN SAMLアプリ統合をクリックします。
    3. サインオン(Sign On)タブに移動して、編集(Edit)をクリックします。
    4. Attribute Statements (Optional)(属性ステートメント(任意))セクションまでスクロールします。
  4. 名前(Name)に、追加する属性の名前を入力します。

    このフィールドの最大文字数は512文字です。Name属性は、ユーザーとグループの属性ステートメント全体で一意である必要があります。

  5. 名前の形式(Name format)指定なし(Unspecified)を選択します。
  6. 値(Value)で、device.trustedを選択します。

    このフィールドの最大文字数は1024文字です。

    Okta Expression Languageを使用して、値をユースケースの必要に応じて変換できます。

    たとえば、信頼されているデバイスコンテキスト用のOkta用語を関連するSalesforce用語にマップするには、値(Value)フィールドにこのステートメントを入力します。

    device.trusted == "TRUSTED" ? "HIGH ASSURANCE" : "STANDARD"

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

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

    Salesforce用語

    信頼(TRUSTED) 高アシュアランス(HIGH ASSURANCE)
    非信頼(NOT_TRUSTED) 標準(STANDARD)
    不明(UNKNOWN) 標準(STANDARD)
  7. ステートメント行を追加するには、もう1つ追加(Add Another)をクリックします。必要な属性定義が完了するまでこの手順を繰り返します。
  8. 次へ(Next)をクリックします。
  9. 完了したら、終了(Finish)をクリックします。

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

以下はSAMLアサーションを通して外部アプリに送信された非信頼デバイスのデバイスコンテキストを示す属性ステートメントです。

<?xml version="1.0"?>
<saml2:AttributeStatement xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">
  <saml2:Attribute Name="DeviceTrustSignal" 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">
      NOT_TRUSTED
    </saml2:AttributeValue>
  </saml2:Attribute>
</saml2:AttributeStatement>

関連項目

Okta Device Trustソリューション

AIWを使用してSAML統合を作成する

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

アプリ統合ウィザードの使用

Okta式言語