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

早期アクセスリリース

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

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

開始する前に

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

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

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

属性値

定義

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

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

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

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

属性ステートメント

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

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

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

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

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

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

  5. 属性ステートメント(Attribute Statements)セクションまでスクロールします。

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

  7. 名前のフォーマット(Name format)としてUnspecifiedを選択します。

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

OINアプリ統合を編集する

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

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

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

  4. 属性ステートメント(Attribute Statements)セクションまでスクロールします。

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

  6. 名前のフォーマット(Name format)としてUnspecifiedを選択します。

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

属性値を変換する

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

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

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

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

Salesforce用語

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

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

次へ(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>

関連項目

管理対象デバイス(Managed devices)

SAMLアプリ統合を作成する

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

Okta式言語