NTLM認証を使用してactionscript 3.0からWebサービスを呼び出す例はありますか? adobe livedocs には NTLM 認証がサポートされていると記載されていますが、ユーザー資格情報をどこに渡すかわかりません。
ありがとう、ピーター
NTLM認証を使用してactionscript 3.0からWebサービスを呼び出す例はありますか? adobe livedocs には NTLM 認証がサポートされていると記載されていますが、ユーザー資格情報をどこに渡すかわかりません。
ありがとう、ピーター
Adobe AIR を使用している場合を除いて、これが直接可能ではないことは確かです。LiveDocs の認証情報は、AIR にのみ適用されます (メソッド名の横にある小さな記号がこれを示しています)。
NTLM over HTTPについて簡単に読んだところ、サーバーから返された HTTP ステータス コードに基づいて複数の要求を行う必要があるようです。Flash はせいぜいこれらのコードを提供することで不安定であるため、これ自体が問題になる可能性があります。
さらに、NTLM は接続ベースのスキームであり、2 番目と 3 番目の要求の間で接続を維持する必要があります。Flash は keep-alive ヘッダーを送信できず、永続的な接続を作成できません。これにより、Flash が AS3 でネイティブに NTLM 認証を行う可能性がなくなると考えがちです。
ただし、私はNTLMの専門家ではなく、引用したドキュメントは NTLM over HTTP 仕様の公式バージョンではないようです。Flash を介した NTLM の認証が不可能であるとまでは言いません。
ActionScript で可能です。あなたが行うすべてのリクエストは、ブラウザに NTLM クレデンシャルを要求することによって、サーバーによってチャレンジされます。その後、Internet Explorer は適切な承認ヘッダーを追加します。次に、サーバーは資格情報を確認し、コンテンツを提供するか、アクセスを拒否します。
これらはすべて、Flash Player サンドボックスに認識されずに行われるため、(サンドボックスの開発者である) 私たちが制御することはできません。そのため、最初のリクエストを行う前に ActionScript を使用して NTLM 認証ヘッダーを事前に追加することはできません。これにより、「チャレンジ」フェーズがバイパスされます。Silverlight でも同様です。