制限付きアクセスを使用してデバイスコンテキストを渡す
制限付きアクセスでは、認証中にやり取りされるSAMLアサーションを通してデバイス・コンテキストを特定のSAMLアプリケーションに渡すようにOktaを構成できます。その後アプリケーションはその情報を使用して、アプリケーションを編集する許可やアプリケーションからファイルをダウンロードする許可など、特定のアプリ固有の動作にアクセスを制限できます。
この機能は以下のデバイスで使用できます。
- Windows、macOS、iOS、Androidデバイス
- デバイス・コンテキスト属性を消費できるカスタムおよびOIN SAMLアプリ統合
前提条件
Okta Admin Consoleで、
- Okta Admin Consoleでデバイスの信頼を有効にする([セキュリティ]>[デバイスの信頼])
- アプリ統合用のデバイスの信頼サインオン・ポリシーを構成する(アプリの[Sign On(サインオン)]タブ)
詳細は、ご自分の実装に合ったデバイスの信頼のドキュメントを参照してください。
外部アプリの場合
SAMLアサーションで受け取ったデバイス・コンテキストを消費するように外部アプリケーションを構成し、そのコンテキストに基づいてコントロールする動作を指定します。
サポートされている属性値
この機能を構成すると、Oktaは、Oktaで構成された属性ステートメントおよびアプリ統合のサインオン・ポリシーに従って、以下の属性値の1つをSAMLアサーションの外部アプリケーションに渡します。
属性値 |
定義 |
---|---|
TRUSTED(信頼) | ユーザーのデバイスはOktaアプリ統合サインオン・ポリシーの定義によると信頼されています。 |
NOT_TRUSTED(非信頼) | ユーザーのデバイスはOktaアプリ統合サインオン・ポリシーの定義によると信頼されていません。 |
UNKNOWN(不明) |
以下のいずれか、または両方がTrueであるため、デバイス・コンテキストは不明です。
|
- 外部アプリに渡された属性値はセッション期間中、強制適用されます。
- Okta Expression Languageを使用して、Okta用語をISV固有用語にマップできます。
手順
- 前提条件を完了します。
- まだ行っていない場合は、Okta Admin Consoleからカスタムアプリ統合を作成するか、OINアプリ統合を追加します。
- カスタムSAMLアプリ統合を作成するには、「SAMLアプリ統合を作成する」を参照してください。
- OINアプリ統合を追加するには、「既存のアプリ統合を追加する」を参照してください。外部アプリがSAMLをサポートしている必要があります。
- アプリ統合に[Attribute Statement(属性ステートメント)]を追加します(詳細については、「SAMLアプリ統合を作成する」を参照)。
新しいアプリ統合を作成する際にステートメントを追加したり、既存のアプリ統合を編集したりできます。
- Admin Consoleで、 に移動します。
- カスタムSAMLアプリをクリックします。
- [一般]タブに移動し、[SAML Settings(SAMLの設定)]セクションまでスクロールして、[編集]をクリックします。
- [次へ]をクリックします。
- [Attribute Statements (Optional)(属性ステートメント(オプション))]セクションまでスクロールします。
- Admin Consoleで、 に移動します。
- OIN SAMLアプリ統合をクリックします。
- [Sign On(サインオン)]タブに移動して、[編集]をクリックします。
- [Attribute Statements (Optional)(属性ステートメント(オプション))]セクションまでスクロールします。
- [Name(名前)]に、追加する属性の名前を入力します。
- [Name format(名前の形式)]で[Unspecified(指定なし)]を選択します。
新しいアプリ統合の場合:
手順2:SAMLを構成するで[Attribute Statements (Optional)(属性ステートメント(オプション))]セクションまでスクロールします。
既存のアプリ統合の場合:
カスタム・アプリ統合とOINアプリ統合のどちらを編集するかによって手順が異なります。
カスタムアプリ統合を編集する場合:
OINアプリ統合を編集する場合:
このフィールドの最大文字数は512文字です。Name属性は、ユーザーとグループの属性ステートメント全体で一意である必要があります。
- [Value(値)]で、[device.trusted(デバイス、信頼)]を選択します。
- ステートメント行を追加するには、[Add Another(もう1つ追加)]をクリックします。必要な属性定義が完了するまでこの手順を繰り返します。
- [次へ]をクリックします。
- 完了したら、[終了]をクリックします。
このフィールドの最大文字数は1024文字です。
Okta Expression Languageを使用して、値をユース・ケースの必要に応じて変換できます。
たとえば、信頼されているデバイス・コンテキスト用のOkta用語を関連するSalesforce用語にマップするには、[Value(値)]フィールドにこのステートメントを入力します。
device.trusted == "TRUSTED" ? "HIGH ASSURANCE" : "STANDARD"上記のステートメントは用語を以下のように変換します。
Oktaデバイス・コンテキスト属性 |
Salesforce用語 |
---|---|
TRUSTED(信頼) | HIGH ASSURANCE(高アシュアランス) |
NOT_TRUSTED(非信頼) | STANDARD(標準) |
UNKNOWN(不明) | STANDARD(標準) |
属性ステートメントの詳細
以下は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>