菜鸟教程小白 发表于 2022-12-12 23:54:33

ios - kSecUseAuthenticationUISkip 使用方法


                                            <p><p>我想通过以下访问控制向 secItemAdd 添加一个项目</p>

<pre><code>SecAccessControlRef sacObject = SecAccessControlCreateWithFlags(kCFAllocatorDefault,
                                                             kSecAttrAccessibleAfterFirstUnlock,
                                                             /*kecAccessControlTouchIDAny | */kSecAccessControlApplicationPassword, &amp;error);
</code></pre>

<p>所以它基本上要求密码将项目添加到钥匙串(keychain),这是完美的,但是当我想访问这个项目时,我想跳过 UI 身份验证,并且我想使用 kSecUseAuthenticationUISkip 手动提供密码。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>根据 Apple 关于 <code>kSecUseAuthenticationUISkip</code> 常量 (<a href="https://developer.apple.com/reference/security/ksecuseauthenticationuiskip?language=objc" rel="noreferrer noopener nofollow">https://developer.apple.com/reference/security/ksecuseauthenticationuiskip?language=objc</a>) 的文档</p>

<blockquote>
<p>Silently skip any items that require user authentication. Only use this value with the <code>SecItemCopyMatching</code> function.</p>
</blockquote>

<p>所以不是选择性地跳过身份验证,而是跳过需要身份验证的项目</p>

<p>现在,当您想使用应用程序提供的密码保护对钥匙串(keychain)的访问时,在调用 <code>SecItemAdd</code> 时,您必须使用 <code>kSecUseAuthenticationContext</code> 键设置为<code>LAContext</code> 类型为 <code>LACredentialTypeApplicationPassword</code> 的实例,其中包含您向用户询问的密码以及您传递给 <code> 的对象中的 <code>kSecAccessControlApplicationPassword</code> >kSecAttrAccessControl</code> 键。</p>

<p>这是一篇文章,它通过一个示例对其进行了解释,我认为它非常适合您的用例:<a href="http://collinbstuart.github.io/lessons/2015/11/04/keychain_entropy" rel="noreferrer noopener nofollow">http://collinbstuart.github.io/lessons/2015/11/04/keychain_entropy</a> </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - kSecUseAuthenticationUISkip 使用方法,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/42339000/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/42339000/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - kSecUseAuthenticationUISkip 使用方法