我正在设置一个服务帐户以从 GKE 访问 CloudSQL DB。我已经创建了 GSA 和 KSA,并执行了将两者关联的命令 ( gcloud iam service-accounts add-iam-policy-binding...
)。如何检查绑定以确保调用成功?我原以为会有一个命令gcloud iam service-accounts list-iam-policy-binding ...
来显示状态。
我在将官方 BigQuery 客户端(在 Python 3 中)获取到由 Cloud Run 服务授权的同一组织中的另一个项目时遇到了一些严重问题。
Cloud Run 服务位于 Project Main 中,我正在尝试访问 Project Other 中的表——这两个项目都在同一个组织中。
服务帐户是在 Project Main 中创建的用户创建的服务帐户(不是默认帐户),并且具有在 Project Main 中作为服务帐户运行所需的所有权限,并且服务帐户的电子邮件仅被赋予“BigQuery 用户”角色在其他项目中。
在 Python 中,我有一个这样的代码片段:
from google.cloud import bigquery
query_str = "SELECT * FROM `project_other.prod.table`"
bqclient = bigquery.Client()
df = bqclient.query(query_str).result().to_dataframe()
这在项目 main 中部署到 Cloud Run 的容器内运行,并且部署附加了正确的服务帐号。
触发脚本时,我最终遇到如下异常:
raise self._exception google.api_core.exceptions.BadRequest: 400 Access Denied: Table
project_other:prod.table: User does not have permission to query table project_other:prod.table. at [4:13]
据我了解,如果附加到 Cloud Run 部署的服务帐户具有所需的权限,则您不必在容器中执行任何花哨的身份验证,因为这一切都是由托管服务“为您完成”的。
有人可以帮我弄清楚为什么会这样吗?服务帐户iam.serviceAccounts.actAs
在 Project Main 中具有这些权限,但它是否也需要 Project Other 中的这些权限,或者 BigQuery 用户角色是否足够?
我们想使用虚拟帐户(https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/dd548356(v =ws.10)?redirectedfrom=MSDN#using-virtual-accounts ) 在我们自己的服务器上运行我们的一些应用程序。
然而,这似乎很容易做到:我们的一些应用程序需要访问某些证书才能与其他(远程)服务进行通信。
我已将证书安装到虚拟帐户的用户存储中,并且我还尝试授予对本地计算机帐户中证书的私钥访问权限,这两者似乎都失败了。
我想做的事是不可能的吗?
我有一个由 Apache 执行的服务器端脚本,以www-data
. http://example.com/script.sh
远程调用 ( )时,该脚本在服务器上运行良好。
我试图在同一台服务器上运行相同的脚本root
,模仿www-data
。它没有,甚至su www-data -c 'id'
或runuser -l www-data -c 'id'
失败
This account is currently not available.
2016 Nov 4 09:45:54 eu1 Attempted login by root on /dev/pts/0
此帐户确实被交互式登录锁定(这是正常的):
# grep www-data /etc/shadow
www-data:*:15246:0:99999:7:::
# grep www-data /etc/passwd
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
由于 Apache 设法运行一些东西,www-data
所以root
应该能够做同样的事情。怎么做?
我正在尝试在 Server 2012 R2 上创建计划任务以作为域服务帐户运行。我选择“无论用户是否登录都运行”,然后选择域服务帐户,单击“确定”,输入凭据,然后我收到以下错误消息:
任务 LPAEmail 发生错误。错误消息:报告了以下错误:指定的登录会话不存在。它可能已经被终止。
我已经尝试过的事情:
- 检查该
Network access: Do not allow storage of passwords and credentials for network authentication
策略已禁用。 - 以用户身份登录服务器。
- 不同的域帐户。
- 尝试使用本地管理员帐户。
- 将域帐户添加到本地管理员组。
- 将“配置”更改为 Vista、Windows 7 和 Server 2012 R2。他们都没有改变。
- 设置为本地帐户,然后在出现提示时输入域帐户的凭据。
- 已验证服务帐户的“密码永不过期”。
- 尝试创建一个全新的任务。
有人对其他尝试有什么建议吗?
注意:我发现如果我选中“不存储密码。该任务只能访问本地计算机资源。”,它可以工作。但这不是一个可接受的解决方案,因为任务需要访问远程资源。
我正在调出 AppXtender Workflow Manager。其中一项说明是创建模拟服务帐户。我从来没有听说过这样的。它是什么以及如何在 Windows Server 上创建模拟服务帐户?
我们有一个通过 VPN 连接的帐户,可以从我们的一个数据库中提取数据。最近一直拉不下数据。
看着它,该帐户已被禁用,但我觉得这不是全部。
Enabled : False
LastLogonDate : 09/05/2011 11:06:21
lastLogonTimestamp : 129494091812160209
LockedOut : False
Modified : 30/01/2012 11:22:41
modifyTimeStamp : 30/01/2012 11:22:41
whenChanged : 30/01/2012 11:22:41
whenCreated : 18/07/2008 16:45:39
所以最后一次修改是 2012 年 1 月 30 日,但最后一次登录是 5 月 9 日。考虑到禁用帐户会更新修改日期,有人对此有何建议吗?我有点担心发生了什么不愉快的事情。
使用 Ubuntu 服务器,我需要创建一些具有以下限制的用户帐户:
(1) 用户只能查看和操作其主目录中的文件。
(2) 用户只能执行与 rsync 和 sftp 相关的命令。
我希望用户能够使用 rsync 备份文件,并且我希望他们能够使用像 FileZilla 这样的 sftp 客户端检索文件。
除此之外,我不希望用户能够查看系统上的其他文件,或执行任何可能与系统混淆的命令。
我更像是一个 Ubuntu 桌面用户,并且几乎没有管理 Linux 服务器的经验。我发现的大多数教程都假设我知道我不知道的事情。所以我很难设置这个。
使用 SQL Server 2008。
我正在尝试将 Team Foundation Server 安装为双服务器设置(由于一台服务器是 DC。)安装要求的一部分是 Sql Server Reporting Services (SSRS) 不能使用本地系统帐户来运行它默认为.
我一直在遵循团队基础服务器所需的帐户生成过程中包含的安装过程。我设置了一个域帐户“TFSReports”并根据帐户要求指南授予它本地登录权限。
但是,每当我在启动服务后停止 SSRS 并更改帐户以使用 TFSReports 甚至使用 NTAuthority\NetworkService (根据指南使用的另一个可接受的帐户)时,似乎 Reporting Services 就不再起作用了。
更改帐户时,我什至无法浏览到 LocalHost/Reports。如果我返回服务并将其翻转回使用本地系统帐户并重新启动服务,我可以再次查看 LocalHost/Reports。
编辑:这是我从 TFS 安装中得到的确切消息,按照说明似乎可以阻止 SSRS 之后工作。
说明 SQL Server Reporting Services 配置为使用本地系统作为服务帐户。
解决方法/补救措施 您必须使用网络服务系统帐户或 SQL Server Reporting Services 服务帐户的有效域帐户。在控制面板中,双击管理工具,双击服务,然后查找 SQL Server Reporting Services 服务。双击服务查看服务属性。选择登录选项卡。在登录为中,单击此帐户,更改帐户信息,然后单击确定。
我是否需要遵循这些说明并对SQL Server 配置管理器进行更改?
在我的组织中,围绕服务帐户存在相互冲突的思想流派。之所以出现这种情况,是因为他们希望部署 SQL Server 的唯一目的是运行 SharePoint 数据库。
一组认为应该为每个服务器应用程序和每个环境(例如生产、UAT/测试、开发)使用不同的服务帐户。因此,在此示例中,每个用于 SharePoint 的 SQL Server 安装都将有自己的用于 prod、UAT 和 dev 的服务帐户。它们的原因是安全和防止环境之间的干扰。
另一个人认为服务帐户应该在生产和测试环境之间共享。因此,对于该示例,将有一个跨 prod、UAT 和 dev 的 SQL Server 服务帐户。(我不确定在不同的服务器应用程序之间共享该帐户。)他们的原因再次是安全性,因为要更改的密码更少并且复杂性降低。
考虑到安全性、正常运行时间和可靠性、防止错误、风险管理等......推荐的方法应该是什么?
谢谢!