KeychainStoreManager在钥匙串中的持久凭证

2020-08-22 04:48发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好,我试图揭开Keychai...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,我试图揭开KeychainStoreManager的神秘面纱,以将我们的应用程序凭据保存在Keychain中

业务案例:

每个应用程序都应有自己的本地存储,仅应共享应用程序凭据...这将有助于在同一设备上启动许多应用程序

示例:如果我们有5个用于1部iPhone的应用程序,那么我们应该仅在第一个应用程序中注册,我们不想为其他应用程序重新输入凭据。

我已经阅读了文档,据我所知,我们可以使用KeychainStoreManager通过访问组将漏洞存储持久保存到Keychain中。

有没有一种简单的方法可以只共享"钥匙串共享"功能内的凭据,而不是访问组功能?

这是否意味着我需要在入职流程中包含两个步骤,一个步骤用于持久存储本地存储,一个步骤用于将共享存储持久存储在访问组中,并且仅将我的OAuth2AuthenticationStep包装在StoreSelectorStep

并将其注入凭证的共享存储区?

谢谢

付费偷看设置
发送
3条回答
compass1988
1楼-- · 2020-08-22 05:01

Stan,您好,我不确定为什么要使用访问组功能仅共享用户名和密码

,但是我同意,如果可以的话,也许您需要它来保留其他用户名和密码 东西,

我想知道如何使它工作,我的假设是好的还是我错过了一个难题?

感谢

# p#

想要将范围仅限制为KeychainSharing组而不是AccessGroup的原因是什么?

Bunny_CDM
2楼-- · 2020-08-22 05:04

KeychainStoreManager上的此构造方法

  public init(keychainAccessGroup:String ="",cipherHandler:@escaping(String?)抛出-> Ciphering?= KeychainStoreManager.cipher(for:)) 

旨在支持钥匙串访问组共享。

如果我了解Apple提供的"钥匙串共享"文档,则这里有2种"组"类型在起作用:

1。 kSecAttrAccessGroup ,该分区对应用程序钥匙串
2进行了分区。 AppGroup,使多个应用程序可以访问应用程序钥匙串

您似乎需要对两者进行分层,才能完成共享。

此文档中有许多图表显示了这种重叠: https://developer .apple.com/documentation/security/keychain_services/keychain_items/sharing_access_to_keychain_items_among_a_collection_of_apps

jovirus
3楼-- · 2020-08-22 05:00

谢谢,keychainStoreManager会将您的商店保留在应用程序组中

,要求是我们只希望共享应用程序的凭据,每个应用程序都应拥有自己的凭据 本地商店

您如何实现此目标,如果需要,我需要2个商店,1个本地商店和1个共享商店

,我需要确保我的身份验证步骤正在使用 凭据的共享存储

一周热门 更多>