Articles of 认证

Android HttpClient身份validation始终返回401代码

我正在尝试使用HTTP身份validation在线发布玩家得分,但响应总是401(未经授权),尽管我非常确定用户名和密码是否正确。 我究竟做错了什么? DefaultHttpClient client = new DefaultHttpClient(); Credentials creds = new UsernamePasswordCredentials(“user”, “passsword”); client.getCredentialsProvider().setCredentials(new AuthScope(“http://myurl.com/score.php”, 80), creds); try { HttpPost post = new HttpPost(“http://myurl.com/score.php”); List nameValuePairs = new ArrayList(3); nameValuePairs.add(new BasicNameValuePair(“score”, points)); nameValuePairs.add(new BasicNameValuePair(“name”, name)); post.setEntity(new UrlEncodedFormEntity(nameValuePairs)); HttpResponse response = client.execute(post); final int statusCode = response.getStatusLine().getStatusCode(); if (statusCode != HttpStatus.SC_OK) { throw new Exception(); } […]

Android Facebook SDK SSO“您请求的页面无法显示”

我一直坚持这个非常令人沮丧的问题并且通过Google我发现许多人遇到了同样的问题而没有与Android的新Facebook API相关的答案。 我已完全按照此处列出的步骤操作: https://developers.facebook.com/docs/getting-started/facebook-sdk-for-android/3.0/ 当我在我的设备上运行示例应用程序时,我得到了: 当我在模拟器上运行它时,它工作。 我理解这是因为Facebook的SSO实施。 模拟器没有安装Facebook,所以它第一次成功登录,但设备启动Facebook应用程序,由于某种原因给出了这个错误,当我回来时,就好像我根本没有登录到Facebook没有活动会话(虽然我是因为当它启动Facebook应用程序时我可以浏览朋友等) 我无法卸载我的设备上的Facebook,即使我可以这对应用程序用户是不可接受的。 如果可能的话,我想保留SSOfunction,但不知何故让它工作! 我花了一整天的时间来使用我的Hash Keys,并通过我的设备+代码和keytool生成它们,因此问题与此无关。 此外,示例应用程序在模拟器上运行,这肯定意味着它的SSO问题。 提前致谢。

使用Auth Cookie以编程方式发送Gmail

我想实现类似于此问题中提供的解决方案,允许应用程序在不使用ACTION_SEND Intent的情况下发送电子邮件。 但是,我宁愿使用AccountsManager类来允许用户通过一键批准来访问Google帐户,而不是提示用户输入他们的gmail凭据。 我熟悉一旦用户允许访问他们的帐户,如何获取身份validation令牌/ cookie,但我无法find的信息(如果可能的话)是如何validation和发送电子邮件给定auth cookie而不是用户名和密码。 有关如何执行此操作的任何信息/如果可能的话,将非常感谢。 提前致谢。

如何使用MSCHAPV2身份validation连接到Microsoft VPN服务器

你能不能指点一下去哪里挖? 我拥有的: 我有一个装有ICS(Android 4.x)的设备(HTC One X)。 我的公司有一个基于Microsoft VPN服务(RRAS等)的企业VPN服务器。 Microsoft VPN Server应用了一个策略,它告诉它只接受与MSCHAPV2身份validation的连接。 我需要的: 我需要从我的设备到公司VPN服务器建立VPN连接。 问题: 是否有可能通过ICS的板载VPN客户端满足我的需求? 有没有第三方VPN客户端呢? 如何向Google询问我的需求?

在Android上保护Twitter密钥

将twitter身份validation添加到我的Android应用程序,转到Twitter开发时 ,我惊讶地发现我必须像这样初始化Twitter的Fabric : import io.fabric.sdk.android.Fabric; import com.twitter.sdk.android.Twitter; import com.twitter.sdk.android.core.TwitterAuthConfig; … @Override public void onCreate() { super.onCreate(); TwitterAuthConfig authConfig = new TwitterAuthConfig(“consumerKey”, “consumerSecret”); Fabric.with(this, new Twitter(authConfig)); } 他们正式建议我将API Key和API Secret作为明文放在我的应用程序中。 即使在此官方示例中 ,密钥也存储在BuildConfig 。 我正在使用Proguard,但即便如此,我无法保证坚定的黑客无法利用我的API秘密 。 像Quora这样的既定应用程序是否也公开了这些密钥 有人可以发布一个例子来克服这个漏洞,或者说一下为什么Twitter会这样做吗? 相比之下, 谷歌和Facebook只要求我添加一个AppID ,我不得不哈希我的签名证书并将哈希链接到相应的应用程序。 这比以上更安全。

如何在服务器上获取用户的日历信息?

用户在我的Android应用程序中授权。 我正在将用户的令牌和其他信息发送到我的服务器。 在这个服务器上,我想为用户实现一些逻辑。 我希望得到这个流程 。 我按照此链接中的步骤quickstart.php来获取用户在服务器上的日历。 但我得到以下错误: 谷歌oauthexception’与消息’无法json解码令牌’ 因此我尝试了这个解决方案 。 但是我也犯了同样的错误。 因此,作为第三个选项,我自己创建了json格式,如下所示。 $access_token = ‘{ “access_token”:’.$access_token.’, “token_type”:”Bearer”, “expires_in”:3600, “id_token”:’.$id_token.’, “refresh_token”:” “, “created”:’. time() .’ }’; 如你所见,我不知道如何交换刷新令牌。 我搜索了如何获得刷新令牌并看到了这个问题 。 并将此解决方案应用于我的代码但没有任何改变。 编辑4 :我试图在Android应用程序中根据此答案获取访问令牌并将其发送到应用服务器。 我像以前一样接受代码: GoogleSignInAccount acct = result.getSignInAccount(); code = acct.getServerAuthCode();//sending this code to AsyncTask to get access token 我获取访问令牌的function: private void getAccessToken()throws GoogleAuthException, IOException{ new AsyncTask() […]

如何让一个原生的Android应用程序与Web后端进行身份validation?

我正在开发一个原生的Android应用程序,以便从我公司的网站上为用户检索数据。 因为数据是特定于用户的,所以我需要使用我们的Web服务器进行身份validation,但我不确定最好的方法。 我一直在阅读有关REST / SOAP / HTML表单身份validation的内容,但我无法在任何地方find任何明确的“这就是它的完成方式”。 我知道移动应用程序总是这样做 – 只要看看facebook / skype /任何电子邮件应用程序 – 你必须先登录才能做任何事情。 我的问题是 – 我应该如何构建服务器端代码(php)以便轻松地允许我从我的Android设备validation用户? 我对“网络服务”领域还不熟悉 – 这属于那个类别吗? 有没有你们建议看的教程? 谢谢!

如何更改Facebook登录validation屏幕中的默认应用程序图标

干净利落。 我需要更改在使用Facebook SDK登录应用程序时在身份validation屏幕中呈现给用户的默认应用程序图标。 我试过的: www.developer.facebook.com -> My Apps -> App Details -> Icons 任何帮助表示赞赏! 感谢您的时间!

使用Volley请求发送身份validation信息

在我的Android应用程序中,我必须调用一个看起来像这样的Web服务 http://mywesite.com/demo/mob/getmenubycategory/1 我正在使用截击发送请求但结果是VolleyError 401 。 我已经重写了getParams()方法来添加标题,但它无法正常工作。 这是我的代码。 RequestQueue requestQueue = volleySingleton.getRequestQueue(); requestQueue.add(new JsonObjectRequest(Request.Method.GET, url, new Response.Listener() { @Override public void onResponse(JSONObject response) { Log.e(TAG, “onResponse = \n ” + response.toString()); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, “response error \n” + error.networkResponse.statusCode); } }) { @Override protected Map getParams() throws […]

如何在Android M版本中基于指纹识别用户?

我们可以使用Android M(API 22)中的FingerprintManager来识别(以及授权)用户吗? 例如,在设备中注册了两个指纹,一个用于用户A,另一个用于用户B. API是否支持检测刚刚登录的用户A或B?