0

Androidに移植する必要があるJavaコードがあります。Java コードはセキュリティのために JAAS を使用しますが、Android には javax.security ライブラリがありません。そこで、javax.security ライブラリを個別にコンパイルし、Android ライブラリに追加しました。今、 loginContext.login() が null ポインター例外を与えることがわかりました。それはコードの問題ですか、それとも Android を機能させるための他の依存関係はありますか? jar の再パッケージ化 (私が行った) は、Android にないすべてのライブラリで機能しますか?

4

1 に答える 1

0

以来

JAAS の主な目標は、ユーザー認証の問題を分離して、それらを個別に管理できるようにすることです。以前の認証メカニズムには、コードの発信元とそのコードに誰が署名したかに関する情報が含まれていましたが、JAAS は、誰がコードを実行したかに関するマーカーを追加します。検証ベクトルを拡張することにより、JAAS は、認証および承認モジュールを必要とする Java アプリケーションのセキュリティ アーキテクチャを拡張します。

しかし、参照されたjeffsixまたはこのAhmedDira 解像度として Android を使用すると、

JAAS は実際には Android には適用されません。JAAS は、Java ベースのアプリケーションにユーザー中心のセキュリティを提供します (ID とは、アプリケーションを「実行」しており、アプリケーションを「実行」しており、実行を許可されている ID (通常は LDAP ユーザー ID などの「ユーザー」) です)。Android では、アプリケーションを互いに分離するために、各アプリケーションが異なるユーザー ID で実行されるという点で、ユーザー ID は異なる方法で使用されます。JAAS 対応の Java アプリケーションと Android アプリケーションの間では ID の概念が大きく異なるため、JAAS モデルは Android モデルとうまく調和しないため、ドキュメントに警告が表示されます。

詳細については、 jeffsixPost の回答を参照してください。

于 2013-09-18T04:13:52.380 に答える