1

HTTPS (サーバー側の証明書のみ) とシングル サインオン認証システムを使用して保護された 2 つの Web アプリケーションがあります。App1 で、ユーザーはリンクをクリックし、App2 のページに「ドリルダウン」する必要があります。これらは同じドメインと SSL 証明書を共有しますが、物理的に同じアプリではありません。App1 が要求を App2 に転送またはリダイレクトするとき、要求に認証トークンが含まれているため、App2 はユーザーの ID を確認できます。

App1 は、ユーザーが閲覧を許可されている情報を知っています。これをアカウントのリストと呼びます。App2 はこの情報にアクセスできません (少なくとも現時点では)。リクエストで、App1 が許可されたアカウントのリストを App2 にも渡すことが提案されています。

私の質問は、HTTPS がペイロードを保護し、それが App1/App2 サーバーによってのみ生成されたことを保証するかどうかです。より具体的には、有効な認証トークンを持つ有効なユーザーが、追加のアカウントを使用して独自のフォームを作成し、それを有効な HTTPS POST 要求として App2 サーバーに送信して、不正なアカウントにアクセスできるかどうかが懸念されます。

4

2 に答える 2

4

いいえ、HTTPS だけでは、求めているセキュリティを提供できません。あなたが直面している問題に他の人がどのように取り組んだかについては、次のリンクを参照してください。

SAML による SSO

SAML プロトコルを使用して SSO を実現することです。一般に、セキュリティが深刻な問題である場合は、シングル サインオンへの DIY アプローチではなく、査読済みのソリューション (SAML など) を使用することをお勧めします。SAML を使用する必要はありませんが、環境で利用可能な既存の SSO ソリューションを使用するようにしてください。

「App1/App2 サーバーによって生成されたことを保証する」ために、ペイロードにデジタル署名することができます。これにより、改ざんは防止されますが、リプレイ攻撃は防止されない可能性があります。送信は暗号化されますが、リプレイ攻撃は可能であるため (おそらく中間者攻撃を介して) SSL を使用すると、一部のユーザーには役立ちます。

于 2013-03-13T00:45:09.417 に答える
0

HTTPSは、安全な通信チャネルを提供します。しかし、あなたは悪魔自身と安全なコミュニケーションをとることができます:-)

于 2013-03-18T12:40:47.227 に答える