65

SAMLメタデータファイルには、次のようないくつかのNameID形式が定義されています。

<NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>

<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</NameIDFormat>

<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>

誰かがこれらが何のために使われているのか説明できますか?違いは何ですか?

4

4 に答える 4

68

オアシスSAML仕様のこのSAMLコアpdfのセクション8.3を参照してください。

SPとIdPは通常、主題について相互に通信します。そのサブジェクトは、NAME-IDentifierを介して識別される必要があります。これは、相手がフォーマットに基づいて簡単に識別できるように、何らかのフォーマットである必要があります。

これらすべて

1.urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified [default]

2.urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

3.urn:oasis:names:tc:SAML:2.0:nameid-format:persistent

4.urn:oasis:names:tc:SAML:2.0:nameid-format:transient

名前識別子の形式です。

SAML 1の一時IDの名前形式はurn:mace:sh​​ibboleth:1.0:nameIdentifierであり、SAML 2の一時IDの名前形式はurn:oasis:names:tc:SAML:2.0:nameid-format:transientです。

トランジェントは[ SAMLコアのセクション8.3.8 ]用です

要素のコンテンツが一時的なセマンティクスを持つ識別子であり、証明書利用者によって不透明で一時的な値として扱われるべきであることを示します。

不特定のものを使用することができ、それは純粋にエンティティの実装に依存します。

于 2014-02-10T16:35:34.003 に答える
23

これについては、 http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0.htmlを参照できると思います。

これについての私の理解は次のとおりです。IDフェデレーションのユースケースを使用して、これらの概念の詳細を示します。

  • 永続的な識別子-

IdPは永続識別子を提供します。これらはSPのローカルアカウントへのリンクに使用されますが、特定のサービスのユーザープロファイルとしてそれぞれ単独で識別されます。たとえば、永続識別子は次のようなものです:johnForAir、jonhForCar、johnForHotel、サービス内のローカルIDにリンクする必要があるため、これらはすべて1つの指定されたサービスに対してのみ使用されます。

  • 一時的な識別子-

一時識別子は、セッション内のユーザーがSP上のリソースへのアクセスを許可されていることをIdPがSPに通知するものですが、ユーザーのIDは実際にはSPに提供されません。たとえば、「匿名性(IdpはSPに彼が誰であるかを通知しません)」のようなアサーションには、SP上の/resourceにアクセスする権限があります。SPはそれを取得し、ブラウザにアクセスさせましたが、それでも匿名性の本名はわかりません。

  • 不特定の識別子-

仕様での説明は「要素の内容の解釈は個々の実装に任されている」です。つまり、IdPは実際の形式を定義し、SPがIdPから応答する形式データを解析する方法を知っていることを前提としています。たとえば、IdPはフォーマットデータ "UserName = XXXXX Country = US"を提供し、SPはアサーションを取得し、それを解析してUserNameis"XXXXX"を抽出できます。

于 2017-06-12T08:29:01.117 に答える
13

これは、IDプロバイダーによって返されるNameIDから何を期待するかについてのサービスプロバイダーへの単なるヒントです。かもね:

  1. unspecified
  2. emailAddress–例john@company.com
  3. X509SubjectName–例CN=john,O=Company Ltd.,C=US
  4. WindowsDomainQualifiedName–例CompanyDomain\John
  5. kerberos–例john@realm
  6. entity–これは、SAMLベースのサービスを提供し、URIのように見えるエンティティを識別するために使用されます
  7. persistent–これは不透明なサービス固有の識別子であり、疑似ランダム値を含める必要があり、実際のユーザーまで追跡できないため、これはプライバシー機能です。
  8. transient–一時的なものとして扱われるべき不透明な識別子。
于 2018-07-29T14:56:57.690 に答える
4

1と2はSAML1.1です。これは、これらのURIがOASISSAML1.1標準の一部であったためです。OASIS SAML 2.0標準のリンクされたPDFのセクション8.3は、これを説明しています。

可能な場合は、既存のURNを使用してプロトコルを指定します。IETFプロトコルの場合、プロトコルを指定する最新のRFCのURNが使用されます。SAML用に特別に作成されたURI参照には、最初に導入された仕様セットのバージョンに応じて、次のいずれかの語幹があります。

urn:oasis:names:tc:SAML:1.0:
urn:oasis:names:tc:SAML:1.1:
urn:oasis:names:tc:SAML:2.0:
于 2015-07-31T15:25:03.870 に答える