0

OKTA 経由で SSO を実装しようとしています。そして、次の方法で SAMLResponse テキストを取得できます

string rawSamlData = Request["SAMLResponse"]; 

文字列を XML 形式に変換する

     if (rawSamlData.Contains("%"))
        {
            rawSamlData = HttpUtility.UrlDecode(rawSamlData);
        }
        byte[] samlData = Convert.FromBase64String(rawSamlData);
        string samlAssertion = Encoding.UTF8.GetString(samlData);

ユーザーの情報は、X509Certificate、FirstName、LastName、Email などの文字列 samlAssertion に含まれています。問題は、検証されているかどうかを確認する方法です。

4

3 に答える 3

1

適切なセキュリティを確保するために多くの時間を費やすつもりがない限り、SAML データを独自に解析しないでください。

Kentor.AuthServices は、Okta と互換性のあるオープン ソースの .NET SP 実装です。そのための特定のドキュメントもあります。

于 2015-11-20T07:34:02.477 に答える
0

.NET で SSO に WS-Federation を使用しない理由はありますか? https://msdn.microsoft.com/en-us/library/hh291061(v=vs.110).aspxを確認してください。ステップ 2でOktaを使用するには、Okta でテンプレート WS-Fed アプリを作成し、 [サインオン] タブにある提供された web.config を使用します。

SAML が絶対に必要な場合は、 http://www.componentpro.com/saml.net/などの支援に使用できるフレームワークがいくつかあります。また、SP init SAML についてはhttp://www.twobotechnologies.com/blog/2014/01/sp-init-with-wif.htmlhttp://travisspencer.com/blog/2010/09/idp-initiatedを確認してください。 -sso-using-wif.html (IdP 初期 SAML 用)。

于 2015-11-11T13:41:34.517 に答える