Estou contribuindo e executando um aplicativo da Web de código aberto que, em grande parte, existia antes do meu tempo. O aplicativo adiciona entradas LDAP para usuários de aplicativos da Web a uma instância LDAP local para fornecer acesso ao sistema de arquivos a esses usuários por meio do Samba.
Em todos os exemplos de trabalho, sei que o valor sambaSID
armazenado no LDAP está configurado para ser calculado pelo padrão
$ LOCALSID "-" ($ UIDNUMBER * 2 + 1000)
Exemplo: para um usuário com uid 1002
, o sambaSID será algo como S-1-5-21-1234567890-5678912345-987654321
-
3004
[espaços adicionados para legibilidade].
Estou curioso para saber por que isso é necessário. De onde vêm esses números mágicos 2 e 1000? Eles são necessários? Em caso afirmativo, por que?
Pesquisando, encontrei este PDF que não está relacionado ao nosso aplicativo e explica exatamente esse procedimento:
5. Setting up user sambaSIDs
When creating users for the external LDAP, you need to pay special attention to their sambaSIDs.
Correct Samba entries for a user look like the following example:
uidNumber: 1001
sambaSID: S-1-5-21-2896602268-470177729-4123194723-3002
gidNumber: 1000sambaPrimaryGroupSID: S-1-5-21-2896602268-470177729-4123194723-3001
As you can see, there is a 4-digit number appended to the regular sambaSID (which is taken from the WORKGROUP example above). This is generated in the following manner:
sambaSID: uidNumber * 2 + 1000
sambaPrimaryGroupSID: gidNumber * 2 + 1001These entries must always match and conform to the schema above – otherwise the user will not be able to connect via SMB.
Portanto, não parece que esses números sejam escolhidos arbitrariamente. No entanto, em nossos exemplos, diferentemente do PDF citado, descubro que sambaPrimaryGroupSID
não sofre nenhuma artitmética, seu valor para o grupo 100
( users
) é apenas acrescentado, como S-1-5-21-1234567890-5678912345-987654321
-
100
, que é diferente das explicações no PDF citado acima. No entanto, o acesso do Samba também funciona corretamente com ele, então me pergunto o quão confiável a fonte que encontrei é.
De que são esses números mágicos "2" e "1000"? Eles são necessários ou úteis para qualquer coisa?
Tags samba